Skip to content

Latest commit

 

History

History
69 lines (57 loc) · 3.29 KB

README2.md

File metadata and controls

69 lines (57 loc) · 3.29 KB

Lython

Welcome to my journey of compiler rediscovery. This repo was historically based upon the kaleidoscope tutorial (How to build a new language using LLVM).

Nevertheless, the project it not anymore linked to kaleidoscope.

Objective of the Project

Build a new language from scracth.

We will start by building a basic math engine. With very few features.

We will use this base language to build a more advanced language.

Debug node:

| str | # | use | low | upp | | | 0 | 0 | 0 | 0 | | simple_function | 1 | 4 | 0 | 45 | | a | 85 | 361 | 84 | 360 | | b | 53 | 227 | 52 | 226 | | c | 28 | 124 | 27 | 123 | | d | 19 | 82 | 18 | 81 | | e | 9 | 39 | 8 | 38 | | simple_function_noargs | 1 | 4 | 0 | 66 | | simple_function_docstring | 1 | 4 | 0 | 75 | | my_function | 1 | 4 | 0 | 33 | | add | 2 | 8 | 3 | 21 | | Float | 10 | 40 | 45 | 195 | | function_call | 1 | 4 | 0 | 39 | | simple_function_global | 1 | 4 | 0 | 66 | | pi | 1 | 4 | 0 | 6 | | simple_function_max | 1 | 4 | 0 | 57 | | max | 1 | 4 | 0 | 9 | | simple_function_return_args | 1 | 4 | 0 | 81 | | simple_function_rpe | 1 | 4 | 0 | 57 | | sin | 1 | 4 | 0 | 9 | | x | 1 | 4 | 0 | 3 | | simple_match | 2 | 8 | 12 | 84 | | bool | 1 | 4 | 0 | 12 | | true | 3 | 12 | 8 | 44 | | false | 2 | 8 | 5 | 35 | | simple_while_loop | 2 | 8 | 17 | 119 | | i | 6 | 25 | 5 | 24 | | simple_for_loop | 2 | 8 | 15 | 105 | | range | 1 | 4 | 0 | 15 | | a.b.c | 4 | 18 | 15 | 85 | | f | 3 | 16 | 2 | 15 | | k | 1 | 5 | 0 | 4 | | g | 4 | 20 | 3 | 19 | | h | 2 | 12 | 1 | 11 | | j | 1 | 5 | 0 | 4 | | fun | 1 | 4 | 0 | 9 | | decorator | 1 | 4 | 0 | 27 | | decorator1 | 2 | 8 | 10 | 70 | | decorator2 | 2 | 8 | 10 | 70 | | err | 1 | 4 | 0 | 9 | | e.f | 2 | 10 | 3 | 27 | | a.b | 1 | 4 | 0 | 9 | | p | 1 | 4 | 0 | 3 | | ClassName | 1 | 4 | 0 | 27 | Size 328: 343 < Saved < 2417 bytes (x 2.05 - 8.37)