Skip to content

✪ A dynamically typed language with automatic memory management ✪

License

Notifications You must be signed in to change notification settings

PulsarBlow/Pulse

Repository files navigation

Pulse language

pulse

A dynamically typed language with automatic memory management

Continuous Integration Codacy Badge Codacy Badge License


A tribute to my team mates at Payfit who are so incredibly inspiring. Pulse is my first step to follow their track.

About

Pulse is a dynamically typed programming language. It combines successful concepts from mature languages like Scheme, JavaScript and C#.

Pulse aims to be small, clean and efficient.

It is not feature complete, it is not intended for production, and it does have bugs.

Grammar

program        → statement* EOF ;

statement      → exprStmt
               | printStmt ;

exprStmt       → expression ";" ;
printStmt      → "print" expression ";" ;

expression     → literal
               | unary
               | binary
               | grouping ;

literal        → NUMBER | STRING | "true" | "false" | "nil" ;
grouping       → "(" expression ")" ;
unary          → ( "-" | "!" ) expression ;
binary         → expression operator expression ;
operator       → "==" | "!=" | "<" | "<=" | ">" | ">="
               | "+"  | "-"  | "*" | "/" ;

Attributions

Pulse implementation is largely inspired by the fabulous Crafting Interpreter book from Robert Nystrom.

About

✪ A dynamically typed language with automatic memory management ✪

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published