Skip to content
This repository was archived by the owner on Feb 8, 2026. It is now read-only.

Fifth Release: Types, Safety & Testing

Latest

Choose a tag to compare

@alexjc alexjc released this 21 Nov 14:59
· 1 commit to main since this release
  • Type definitions (ADT-lite) to allow specific type tuples {} and list as stack effects.
  • New struct and unstruct operators to assemble and disassemble these objects.
  • Stack annotations in .Joy are not just documentation but --validate'd too.
  • New test framework in libs/test.joy, written entirely in idiomatic joyfl.
  • Implementation of Python extension modules: cmd txt and os
  • Operators must have new-style Python annotations, they are required to bind.
  • Validation supports the checking of outputs of Python operators.
  • Rework main to have procedurally-selected sub-commands ('repl', 'one-file', 'one-module', 'dev-mode')
  • Formalize and document the ... operator, which allows user to type in code on-the-fly.
  • Joy modules are now scoped by MODULE name, error thrown if mismatch with filename.
  • The module PRIVATE sections can be linked locally not externally.
  • Joy modules are correctly auto-loaded just like the Python ones, also checking JOY_PATH.