Skip to content
This repository has been archived by the owner on Nov 3, 2020. It is now read-only.

darkf/lamb

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Lamb is a toy dynamically typed functional programming language

It's not meant for real-world use but for educational purposes on writing an interpreter with pattern matching in Haskell.

Features

  • No re-assignment (i.e., once you bind a value, you can't re-assign it)
  • Pattern matching: f([]) -> "nothing". f([a]) -> one thing".
  • Imperative I/O
  • Higher-order functions
  • Lexical scope

Hello World!

From examples/helloworld.lamb:

hello() -> "hello, " + hello("world").
hello(object) -> object + "!".

putstrln(hello()).

See other examples in the examples directory.

License

Licensed under the terms of the zlib license. See LICENSE for details.

About

The Lamb programming language

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published