]> Git — Sourcephile - haskell/symantic-parser.git/blob - Hacking.md
add registers
[haskell/symantic-parser.git] / Hacking.md
1 # Hacking `symantic-parser`
2
3 ## Typing
4 ```bash
5 make repl
6 make parsers/repl
7 make tests/repl
8 make benchmarks/repl
9 ```
10
11 ```bash
12 make ghcid
13 make parsers/ghcid
14 make tests/ghcid
15 make benchmarks/ghcid
16 ```
17
18 ## Testing
19 ```bash
20 make tests
21 ```
22
23 ### Profiling
24 ```bash
25 make tests/prof
26 make tests/prof t=.Golden.Parsers.G13
27 ```
28
29 ## Benchmarking
30
31 ```bash
32 make benchmarks b=Brainfuck/ByteString/hanoi/'*' BENCHMARK_OPTIONS=-n1
33 ```
34
35 ## Profiling
36
37 #### Time
38 ```bash
39 make benchmarks/prof-time b=Brainfuck/ByteString/hanoi/'*' BENCHMARK_OPTIONS=-n1
40 ```
41 Then open `symantic-parser-benchmarks.eventlog.json` with [`speedscope`](https://www.speedscope.app).
42
43 #### Heap
44 ```bash
45 make benchmarks/prof-heap b=Brainfuck/ByteString/hanoi/'*' BENCHMARK_OPTIONS=-n1
46 ```
47 Then open `symantic-parser-benchmakrs.eventlog.html`.