Skip to content

2.4

Compare
Choose a tag to compare
@yuriy-chumak yuriy-chumak released this 09 Mar 20:11
· 561 commits to master since this release

Major changes

  • new macro system introduced (define-macro),
    • experimental define-fast-macro and define-lazy-macro added,
    • interaction-environment updated, defined? introduced,
  • unicode bumped to the version 15.0.0,
  • --help option added
  • deprecated tuple removed,
  • libol.so shared library added,
  • "virtual environment" support,
  • new greater? predicate (opposite to the less?),
  • << and >> added to the (scheme base),
  • lua support library,
  • ffi: fft-bool bool type added,
  • ffi: vectors in char*, short*, int*, long long*, double*
  • substring updated (now accepts negative numbers),
  • repl decompiler added,
  • vm internals: registers and pins splitted, reduced count of possible mallocs
  • (scheme read) simplified
  • 0 is no more a positive number (in sense of positive?)
  • r7rs rationalize function,
  • rational publicly available
  • new (lib gl) feature - prerenderer,
  • (lib c!) and srfi-170 libraries with folder functions.
  • srfi libraries moved to own srfi folder,
  • vm internals: macos memfd syscall added
  • ol internals: src-olvm renamed to otus-core

Release Notes

  • has? became a real predicate,
  • small CG improve,
  • arm64, x86_64 callback fixes,
  • better FreeBSD support,
  • better macOS support,
  • new (scheme list) library with fold, map, etc.
  • owl backward compatibility null (owl name for #null) added.
  • (file json) fix: unicode support
  • ffi structures support updated,
  • android support updated (gl2es stub library, oculus go code),
  • GL platform update,
  • ffi type-port convertion fix,
  • ffi: corner integer numbers case fix
  • new makefile target perf and stat tool
  • new experimental hack - function arity
  • scheme-compliant last
  • wasm update
  • emscripten build now includes ffi
  • tcc compatibility changes
  • (file json) unicode support updated,
  • glib2 and gtk-3 updated
  • math update (infinite?, natural?, iroot, etc.)
  • new library (lib joystick)
  • (lib keyboard) updated
  • new ffi bytevector->int16 helper function
  • wavefront obj file parser update (inexact coordinates)
  • new debug variable DEBUG_COUNT_OPS
  • gtk comboboxtext
  • regex test update, regex parser fix
  • eval-string fixed and operands order reversed
  • mnist file format parser added