Lambda Smalltalk

The Master Surgeon — A fast, modern Smalltalk with JIT compilation

Surgical instruments for Code Surgery
Download

High Performance

Cranelift JIT compilation delivers performance comparable to LuaJIT and Node.js V8.

Pure Smalltalk

Classic Smalltalk syntax with modern conveniences. Everything is an object, everything is a message.

Batteries Included

JSON, YAML, TOML, CSV, HTTP, SQLite, regex, and more. PostgreSQL, Redis, Excel, Git, DataFrame, compression, and encryption via plugins.

Portable

One executable. Plugins optional.

Code Surgery in Action

"Extract all function calls from JavaScript source"
| grammar source matches |

grammar := Grammar from: '
    call: IDENT "(" args? ")"
    args: arg ("," arg)*
    arg: IDENT | NUMBER | STRING
    IDENT: /[a-zA-Z_]\w*/
    NUMBER: /\d+/
    STRING: /"[^"]*"/
    %ignore /\s+|./
'.

source := File read: 'app.js'.
matches := Grammar findAll: grammar in: source.

matches do: [:m |
    ('Found: ', (m at: 'text')) printNl.
].

Learn more about Code Surgery.

Not Smalltalk-80

Lambda Smalltalk is not a traditional Smalltalk-80 implementation:

If you want Smalltalk-80 with a graphical environment, see Squeak or Pharo.

Lambda Smalltalk is designed for CLI tools, serverless backends, and scripting - tasks where you want Smalltalk's elegance without the image-based workflow.