Skip to content

v0.11.0

Choose a tag to compare

@deepaksharmaongraph deepaksharmaongraph released this 01 Feb 11:59
· 233 commits to main since this release

Frame v0.11.0 Release Notes

We're thrilled to introduce Frame v0.11.0, featuring a range of exciting enhancements to the Frame language, offering increased power and standardization to the notation. This release also includes a significant improvement to the transpiler, now allowing input from stdin in addition to accepting file paths, thus enhancing integration with CI/CD processes involving Frame.

Changelog

(Note: The new language features are currently supported in Python 3, with support for other languages in future releases.)

New Language Features and Updates

Functions

  • Introduction of Functions:
    Developers can now easily construct simple Frame programs with the introduction of functions. The current syntax supports a single main() function, with the upcoming v0.12 release extending support for an unlimited number of functions.

    Learn more about Frame Functions

System Controller Instantiation

  • Frame Systems and Control:
    With the inclusion of Frame functions, developers can now create fully functional Frame programs, gaining the ability to instantiate and control Frame systems. This allows for comprehensive control over system initialization, state parameters, start state parameters, and domain variables.

    Explore Frame Systems

Operations

  • Frame Operations:
    Frame operations, publicly accessible methods that bypass the state machine, now offer privileged access to system domain data. Additionally, operations can be designated as static, enabling systems to provide libraries of associated functionality for complex or repetitive system management routines.

    Discover Frame Operations

Enums

Loops

  • Looping in Frame:
    Frame now supports two types of loops: For-like loops and Infinite loops, providing developers with versatile options for program flow control.

    Check out Frame Loops

Stdin support

The CLI has been updated to support stdin:

framec -language python_3 < HelloWorld.frm > HelloWorld.rs

or

cat HellowWorld.frm | framec -language python_3 > HellowWorld.go