Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 20 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,26 @@ LSTS philosophy, LSTS seems to be aiming for:

That’s potentially a direct challenge to Rust’s ergonomics model.

Typed macros are the huge differentiator

The typed macro system is much more foundational than Rust’s macro system.

In Rust:
* macros are powerful
* but largely peripheral to the type system/compiler pipeline

In LSTS:
* macros are part of semantic lowering itself
* loops are macros
* specialization is macro-driven
* codegen strategy is macro-driven
* ownership propagation survives macro expansion

That’s closer to:
* programmable compiler infrastructure
* metacircular compilation
* extensible language semantics

λ☶ (pronounced Lambda Mountain) is a typed macro assembler that provides a relatively clean implementation of **System F<: with Specialization**.

* [TUTORIAL](https://github.com/andrew-johnson-4/LSTS/wiki)
Expand Down
Loading