Skip to content

Latest commit

 

History

History
21 lines (17 loc) · 925 Bytes

README.md

File metadata and controls

21 lines (17 loc) · 925 Bytes

lambdaJS

This repository is the result of the language engineering project course IN4333 2016/2017. Following the paper here, was created a base for lambdaJS syntax in SDF3 and semantics in DynSem. The DynSem rules point to the figures from the paper. For examples on what is possible code with the current state of this repo, you can look into ex.lam in /lambdaJS or the test folder in /lambdaJS.interpreter.

Done

Syntax and semantics for:

  • Figure 1: constants, let, function creation and application, and object creation and manipulation
  • Figure 2: mutable references
  • Figure 4: object prototyping

To-Do

  • More syntactic and semantic tests
  • Figure 5: desugaring from JavaScript to lambdaJS

Syntax and semantics for:

  • Figure 8: control operators
  • Figure 9: primitive operators

Optionally figure 13 and 15 can be implemented for a type system in lambdaJS.