aboutsummaryrefslogtreecommitdiff
path: root/README.md
blob: 5dade64c1d3df555410077859a50df5f69849a66 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
### Parser things

This repo has simple implementations of concepts seen in parsing 
and compiler design, written in a way to be easily integrated and
combined while each file/concept has a standalone example.

The main example if this is a simple compiler generator where the 
table to be generated (lalr, clr, slr) and the definitions are loaded
as shared libraries.

The idea is to extend it to many types of table generation, parsing
techniques and ways to add semanitic meaning. 

### TODO

#### NOW:

- Deal with conflicts (copy lemon for precedence)
- EBNF parser to get the whatever-def.c file

#### Goals

- Proper LALR generation
- LL table generation and parsing
- Possibly recursive ascent and recursive descent generation (a bit pointless)
- Left corner / resursive ascent-descent generation (Horspool)
- Proper attribute grammar implementation, evaluation, and dealing with cycles
- (S)GLR - Scannerless Generalized LR (Masaru Tomita)
- It would be good to implemented a compiler of C language (C, B, BCPL),
  and a high level language, maybe Prolog or something mine and with all 
  beingfairly optimized

### Buildling

The build script couldn't be more straight forward, use just ```./build.sh```
and uncomment the lines for the give use