Skip to content

A compiler/interpreter for a declarative programming language inspired by Scala and Haskell

Notifications You must be signed in to change notification settings

LambdaAK/LambdaScript-2

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

55 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LambdaScript 2 - a Declarative Programming Language inspired by Scala and Haskell

Foreword

Hello, a thank you for taking the time to look at LambdaScript 2.

In May 2023, I began working on LambdaScript, an interpreter for a functional programming language. I worked on the project for about a year, and I had a lot of fun working on it. However, I eventually realized that there were some fundamental issues with the project's architecture, and decided to start over from scratch.

LambdaScript 2 is the result of that decision. Currently, LambdaScript 2 has a lexer, parser, and type checker for some of the fundamental language features. I plan to add many more language features, implement a compiler to JavaScript, write a VSCode extension, and make a website for it.

-Alex

Example Programs

50 + 100 * 10 - 1
{
  val x : Int = 10;
  val y : Int = 20;
  x + y
}
(a : Int) =>
(b : Bool) =>
(c : Int) =>
  if b then a else c
a =>
b =>
c =>
d => {
  val x = a;
  val y = b;
  val z = c;
  val w = d;
  x + y + z + w;
}
1 :: 2 :: 3 :: 4 :: 5 :: []

About

A compiler/interpreter for a declarative programming language inspired by Scala and Haskell

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published