Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/zhuangqh/kaleidoscope-plus

A toy compiler
https://github.com/zhuangqh/kaleidoscope-plus

domain-specific-language llvm

Last synced: about 1 month ago
JSON representation

A toy compiler

Awesome Lists containing this project

README

        

# Kaleidoscope-plus

## Grammer

```
expression ::= primary binoprhs

primary
::= identifierexpr
::= numberexpr
::= parenexpr

binoprhs
::= (binop primary)*

identifierexpr
::= identifier
::= identifier `(` expression* `)`

numberexpr ::= number

parenexpr ::= `(` expression `)`
```

```
definition ::= `def` prototype expression

external ::= 'extern' prototype

prototype ::= identifier `(` identifier* `)`

toplevelexpr ::= expression
```