Releases: irmen/prog8
Releases · irmen/prog8
release 1.61
- improved command line interface:
- can now compile multiple programs at once
- can now specify output directory
- implemented all for loop asm code paths
- implemented a lot more bitshift asm code, but stuff remains tbd
- added more functions to the simulator
release 1.60
- syntax change: it is no longer possible to declare for-loop variables inline
- optimized bit shift operations and fixed bugs
- added sort() and reverse() and sgn() functions
- for loop asm generation improved
- a lot of bug fixes
release 1.51
- removed avg() function because of invisible internal overflow issue
- added assembly output for the aggregate functions (min/max/sum etcetera)
- fixed strlen, any, all, asmsub argument via stack.
release 1.50
Got rid of the intermediate bytecodes and stackvm.
Assembly code generator completely rewritten to work directly from the Ast. (NOTE: unfortunately there's still a big code size regression caused by this)
Continuous compilation mode added.
Better syntax error checking.
added dontuse
zeropage option
release 1.20
- struct literals added
- aggregate functions fixed in AstVM
- some array and struct parsing issues fixed
- arrays without init value are once again cleared with zero
- many internal refactorings and dead code cleanups
release 1.11
- added structs
release 1.10
- 'when' statement supported fully.
- multi target assignments are no longer supported
- return statements can no longer have more than one value
- tehtriz example now uses 'when' instead of a long if else list
- fixed typecasting issues
- typecasting is optimized better
- fixed some arithmetical compile time issues
- various other bug fixes
release 1.9
- Syntax change: simplified the asmsub syntax (see the updated p8 lib files)
- fixed bug where assignments were shuffled around in a futile attempt to optimize something
- added parsing of when statement (code generation not yet complete though)
- gradle build system improvements
- fix jiffy clock r/w
- major code restructurings in an attempt to separate things and improve editor and compiler performance
- there's now an AstToSource printer
release 1.8
- script fixes
- updated kotlin sdk version
- many code cleanups and improvements
- added code optimization: removal of unused code and variables, subroutine inlining
- added travis CI builds
- added AST-based virtual machine (-avm command line option) it runs on the internal AST directly, without needing byte codes
- strlen functions now terminate at the first zero byte
- better implicit type casting
- the stackvm and astvm can now print in different colors
release 1.7
- array size in vardecl is now optional (if you provide an array initializer value)
- %asmbinary is now implemented
- tweaked the build scripts a bit
- invalid assignment reordering fixed
- avg() fixed for float arrays