Skip to content

Smalltalk VM Written in Zig with methods stored as type-annotated ASTs

License

Notifications You must be signed in to change notification settings

Zag-Research/Zag-Smalltalk

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1,700 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Zag Icon Zag-Smalltalk

Smalltalk VM Written in Zig with methods stored as type-annotated ASTs

Methods are re-constituted from the AST for edit windows.

Execution model:

  • No Interpreter
  • Threaded execution enables stepwise execution for debugging
  • Native Continuation-Passing Style execution model for performance
  • switching between the models is seamless

Memory structure and some of execution principles loosely modelled on OpenSmalltalk VM

Eventually it wiil include a JIT compiler

More information in the Documentation

Papers and Talks can be found here

(Previously called AST-Smalltalk, but since the implementation is in Zig, a rename seemed obvious.)

Loading into Pharo (known to load with Pharo 13)

very much work-in-progress at the moment

Metacello new
  baseline: 'ZagSmalltalk';
  repository: 'github://Zag-Research/Zag-Smalltalk:main';
  load

About

Smalltalk VM Written in Zig with methods stored as type-annotated ASTs

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 8