Skip to content
main
Switch branches/tags
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.

samlang

GitHub VSCode Extension

Sam's Programming Language

samlang

Read the docs at the official documentation site.

Install the VSCode Extension at Visual Studio Marketplace.

Getting Started

If you want to use samlang as a user, it is better to read the official documentation. If you want to develop on samlang, clone this repository and run yarn install.

Most commands of samlang can be run with only Node.JS installed. However, samlang compile requires the LLVM toolchain to be installed. The repository's code is tested against LLVM 11, although it's very likely that it can work against any modern LLVM version.

To test that your LLVM environment has been properly setup, you can run yarn test:integration at the root of the repo. After the integration tests pass, you can inspect the emitted LLVM ll code under the out directory.

Language Features

  • Type Inference
  • First Class Functions
  • Pattern Matching
  • Produce Optimized LLVM IR

Planned Language Features

  • Interfaces
  • Functors

Planned Optimizations

  • Loop unrolling
  • Partial redundancy elimination
  • Interprocedural analysis