= Soon

= 0.14.2		29.09.2020
- Error-Output improved
- More and better tests
b Prevent definition of already defined Vars/Consts

= 0.14.1		28.09.2020
- Start-Procedure changed, Main-Class is now org.jmo-lang.JMo
- Enhanced quote/unquote with Unicode chars
b Some fixes for CLI

= 0.14.0		24.09.2020
+ Object.tryCatch, .tryBlock, .tryBlockCatch, the same for Try
+ Object.ifNil, .ifNotNil
+ Atomic.switch
+ New Functions for Str: .filter, .map, .sort, .reduce, .amount
+ Object.is, Object.isNot
+ Predefined Type for variable/const: Int i = 4
+ Floor-Division: /~, .floorDiv, .divFloor
+ Atomic: .breakAt, .breakIs, .breakIf
+ Auto-Pass after every function
+ Private functions: _private
+ VarArgs for Functions and Types (v...)
+ Else now with parameter as elseif/elif: ".else(Bool b)"
+ Object.debug()
+ Sequence.deep... Get,Pull,Set,Put
+ Nil multiply, to get a empty List
+ Automatic counter for loops added: _LOOP.nr
+ Auto-String-Get/Set now with ':'
+ New functions for VarLet: .set, .while, .repeat
+ Object.nilUse()
+ JMo-Flags: -t,--test
+ Length-Function for all atomic types
+ Atomic.keyValue, Atomic -> Object = KeyValue
+ For-Type (C/Java-Style)
+ Atomic.while, Atomic.repeat
+ Column names for Table
+ VarArgs can be used with a VarLet of a List
+ IntNumber.for(Bool test, Object calc)
+ Classic command: IfNot
+ Error.getText
+ Now there are 3 Code-Styles: Classic, Stream, Slim
+ Many new functions for different types
- All control-functions now with: _EACH, FuncLet, VarLet + _EACH
- Function/Type-Definition: ":foo()%" changed to "::foo{}"
- Functions: Individual initialization of parameters
- §exit --> _APP.exit
- MC_CONTROL removed
- Changed shortcut-chars: _EACH = €, _LOOP = & or ±, _FUNC = §
- Mathematic negative operator changed from '~' to '!'
- Object.go renamed to .pass
- ifGo --> passIf, isGo --> passIs (also for "not")
- Removed: AutoBlockFunction after Function
- Parser-Levels changed (level 0-4): Open, Low, Medium, High, Insane
- Allow shortcut of variables
- _BLOCK and _STREAM moved to _FUNC.push(x): They are only combined accessable
- Standard-output of Date and Time changed to "YYYY.MM.DD HH:MM:SS"
- Now accepted: nil,Nil,NIL / true, True, TRUE / false, False, FALSE
- Loops: .continue renamed to .next, but .continue is a alias
- Changed sequence for definitions: "::"
- "For" renamed to "Count"
- equally,equals,same | diffly,differs,other | ==~ == === | !=~ != !==
- VarLet for shortcuts like {} changed to: .mem(:x) and => x
- Now, _IT can be used like a normal variable. Also with %=++
- Changed: Initialisation of Control-Objects and -Functions
- Error-Output and messages improved
- Strict-Levels balanced
b Really a lot of fixes

= 0.13.0		23.05.2020
+ Object.proc( VarLet, Object ) / Object.tee( VarLet, Object )
+ List.adjust(IntNumber, Object)
- Lines with leading '+' or '-' are no longer appended to the previous line.
- Lazy String-Parsing (.toInt, .toDec, ...). Now nil will be returned.
b Some fixes for Console-Output and imports

= 0.12.1		19.05.2020
+ Table.sort, .addRows, .combine, .addAll, .rotate, .reverse, .rows, .columns
- Correct Charset for Windows-Console
b Bugfix for Windows-Starter

= 0.12.0		16.05.2020
+ Functions to search first/last position in List and String
+ Table.get(x,y)
+ Number.format with tilde to ignore chars
+ Table(width, length, fill)
+ Table.getColumn
+ Atomic.toJava
+ Java-Imports, also with wildcard
+ Direct access to Java-Objects
+ Extra functions for variable assignment (=++, =--, **=, ...)
- Bitwise shift,and,or,xor only for IntNumber
- While.exec renamed to .each
- "AutoBlock after Function" disabled by default
- Range: Shortcut now uses .eachTo
- Condition renamed to Use
- AutoBlockFunction for Group: .get
- Repeat.exec renamed to .each
- Str.get and .change with negative position
- CLI improved. Now it works also without stty
- Str.startsWith and .endsWith now can used with more parameters
- Priority of atomic types implemented and tested
- Brackets get/set now can have more than one parameter. Example: [3,5]
b Some fixes for: _THIS, Function definition, Numbers

= 0.11.0		30.04.2020
! This is a huge update with really a lot of changes and improvements!
+ New DateTimeBase for Date, Time, DateTime
+ Default-Function for self defined types
+ Functions now can process block and stream individually (_BLOCK, _STREAM)
+ Now you can write own Control-Objects
+ Sandbox for self-created Java-Objects
+ FunctionMap
+ Number: Increment/Decrement with parameter
+ New/Changed Str-functions: from, to, fromFirst/fromLast, to..., after..., before...
+ New is-functions for Char (isNumber, isCaseUp, ...)
+ Convert of Chars: toChar = parsing, .ord / .chr = Unicode/ASC II
+ MagicConst-Positions (_TOP, _LEFT, _TOP_LEFT, ...)
+ Property-system for .get and .set (.prop --> .getProp / .prop = x --> .setProp(x))
+ Makro with FuncLets and arguments
+ FuncLet with parameter
+ Autoblock-Function for Bool (.if)
+ Switch: So all case-functions moved from Object to Switch
+ Better handling of Java-Objects
+ Bool.use (clear alternative for Condition)
- Logical gates: and = &&, or = ||, xor = ^^, nand = !&&, nor = !||, xnor = !^^
- Map: Objects renamed to "Values"
- Clear break for logical "and" / "or"
- Equals (==) and differs (!=, <>) moved to Object
- List.sort improved
- Str and Char now inheriting from Chars
- File-Handling much improved: FileSys, PathList, Path, File, Dir
- Many improvements for Date, Time, DateTime, also +/- now can be used
- Object.toString removed
- New system for parsing a Script.
- Better Exception-Handling
- CmdResult replaced with FunctionMap
- Result of Str.cmd is now equal to the use of Cmd
- Handling of shellcommands changed and improved
- Switch-Cases improved, caseIs and caseIf now returns the last Object
- "Control" changed to Magic-Constant "_CONTROL"
- Handling of comments improved
- Multicall now updates a var
- _ITS changed to _CUR
b Really a lot of bugs fixed!

= 0.10.1		18.01.2020
+ UTF8-Chars in Char and Str with \uXXXX
- Output-order of errors changed
- Now the raw name of a variable is checked, if it is already in use
b A lot of fixes

= 0.10.0		11.01.2020
+ Functional programming with FuncLet's
+ List.reduce, List.map, List.sort, List.filter
+ List.format
+ List.eachVertical
+ New MagicConst: _PI, _E
- For now a Range doesn't unfold automatically in a List! Use List.unfold
- Corrected: Dec.toInt
b Some fixes

= 0.9.0		31.12.2019
+ New unitary concept for the processing of blocks and streams.
+ Better handling of System-Commands (.exec, .quiet, .forget)
+ Errors: For full output use .show
+ Auto-Block-Function for Str: .each
+ Auto-Block-Function for IntNumer: .timesUp
+ If a function clearly returns a object with Auto-Block-Function, you can use it
+ Code-Style-Levels balanced: open, strict, verystrict, insane
+ ParseError for code-errors at parse-time. CodeError is for run-time
+ Include other files with: >Include("file.jmo")
+ New Save-Mode (used for Webstart)
+ Direct VarLet for Shortcuts: {1,3}:a   ?{w}:b   ?(false, 'a', 'b'):c
+ List.swap
- .do executes the auto-block-function of the current object, if it has one
- .go takes the current object and executes with it the block and stream
b Many many fixes!

= 0.8.4		02.12.2019
+ Every function that results clearly a object with auto-block, now can have a block
+ Map.each --> MapItem
+ Some new functions for Table
- More constructors for "Time"
- Functions that return a List can have an Block
b Different fixes

= 0.8.3		24.11.2019
+ List.store
+ "For" now can be used with a "Range"
+ File.each
+ All atomic decimal types now are a parent of DecNumber
+ toStr for all objects
- Nil is an atomic object
- Better handling of incrementing variables
- Improved rounding to type of variable
- Improved documentation
- Better block-checking
- §< is now a alias to _FUNC.return(), without parameter!
- §= is now a alias to _FUNC.return(Object o), with parameter!
- Better parameter-check for objects
b Some small bugs fixed

= 0.8.2		07.11.2019
+ Byte,Short,Int,Long are now type of IntNumber
+ Nil is now atomic
+ Not typesafe vars now can end with ¿ or ??
+ _LOOP now works
+ Str.begin
+ New Objects: Repeat, Try, Error, Time, DateTime
+ Errors are now sorted in groups: Code, Exec, Ext, Custom
- Improved documentation
b A lot of small bugs fixed

= 0.8.1		28.10.2019
+ Parse-Time-Commands now starts with a leading '>'
+ >strictBlocks - Forbids Auto-Block and .do
+ >strictConsts - Forbids ° % $ $$
+ >strictObjects - Forbids shortcuts like () [] {} <> ?() and so on
+ >strictFunctions - Forbids =+-*/&|^ and so on
+ Improved Java-Interoperability
+ Better output of strings in lists
+ Switches: case, caseIs, caseIf
+ .if / .is
+ .go, .ifGo, .ifNotGo, .isGo, .isNotGo
+ "go" is now the command to execute block and stream. "do" executes the object with Auto-Block
- Rewrite handling of Parse-Time-Commands.
b Using Var in Type-Constructor
b Some small bugs fixed.

= 0.8.0		23.10.2019
+ {} now is a Shortcut to For().each
+ ?{} now is a Shortcut to While().do
+ New Types: While, If
+ Str.cmd
- Counter renamed to For
- Rewrite of Loop-System
- Clearer Object-Initialization
- Rewrite of handling ranges
b Fixed a lot of bugs

= 0.7.5		16.10.2019
+ Str.fill to format Stings
+ _JMO.version
+ Return-Type "Same" for functions now works
+ List.clear
- Type-unsafe Vars now ends with a ¿, nillable ends with ?
- §<< removed
- Documentation improved
b Handling empty functions
b Some little fixes

= 0.7.4		07.10.2019
+ List.insert
+ QuickSort works!
b Major bugfix at handling instances

= 0.7.3		02.10.2019
+ Values from ".each" and ".times" can passed directly to an variable: Example: 3.times(:a)
- Group: Now it makes a difference whether you call it with "()" or with "Group"
- Condition: Now it makes a difference whether you call it with "?()" or with "Condition"
- Assign a value to a variable with "mem", now needs a VarLet. Example: 5.mem(:a); a.print
b Some fixes for the CLI

= 0.7.2		26.09.2019
+ New List-Function "concat" with alias ++
- Complete Code-Review to make it OpenSource

= 0.7.1
+ Exit the Application with: _APP.exit or §exit
+ List.filter with _EACH or $$; Example: [3,9,7,2].filter($$ < 5).print; [3,9,7,2].filter(_EACH < 5).print
+ Cool List-Functions for cutting: left, right, cut, area, from, to
+ New Atomic Types: Byte, Short, Long, Float
- Major update at storing and handling variables.
b Important fixes for the Function-Multi-Call-System
b Different fixes and improvements

=0.6.38
+ Condition works with:  Condition(Bool cond, Object then, Object else) ... or with: ?(Bool cond, Object then, Object else)
+ Variables ending with ?? now are Type-unsafe and nillable
- Raw Objects, without Auto-Block-Function couldn't have Blocks anymore.


################################
# = = New Version-Nr
# + = Added new Feature/Function
# - = Change
# b = Bugfix
