Skip to content

0.7.0

Pre-release
Pre-release
Compare
Choose a tag to compare
@kaikalii kaikalii released this 16 Dec 06:16
· 3973 commits to main since this release

0.7.0 - 2023-12-15

Language

  • An entire Uiua codebase is now compiled before it is executed, rather than compiling and executing line-by-line
  • Add the memo modifier, which memoizes a function
  • Add the comptime modifier, which runs a function at compile time
  • &i can now only be used as the first function in a binding
  • repeat can no longer use a negative number of repetitions
  • repeat can now be used with un ° and under
  • reshape now works with under
  • scan \ now works with un ° in some cases
  • setinv and setund are no longer experimental
  • Add output comments, which the formatter fills with values from the stack
    • Make an empty comment starting with n additional #s
    • The formatter will replace the comment with the top n values from the stack
    • Output comments in functions will show a number of values present on the stack for each time the function is called

Interpreter

  • LSP improvements
    • Add hover information on binding references
    • Add signatures to binding hover information
    • Add same-file binding rename support
    • Add same-file goto definition support
  • Add the uiua build command, which emits a .uasm bytecode file
  • uiua run can now run a .uasm bytecode file
  • uiua stand now embeds the bytecode assembly in the executable
  • Multiple compiler errors can now be emitted at once
  • Bug and crash fixes
  • Performance improvements

Website

  • Add an Inverses tutorial
  • Each tutorial challenge now contains 1 or 2 answers