Commit graph

8 commits

Author SHA1 Message Date
Leonardo de Moura
6d0ec3a8c9 refactor(library/init/io): implement io monad using estate monad 2019-03-16 15:34:58 -07:00
Leonardo de Moura
3eedc327c7 feat(tests/playground/flat_parser): tail recursive many combinator 2019-03-14 16:11:51 -07:00
Leonardo de Moura
39dd079e37 feat(runtime): low tech allocation profiler
```
@[extern 4 "lean_io_allocprof"]
constant allocprof {α : Type} (msg : @& string) (fn : io α) : io α
```
2019-03-14 15:15:29 -07:00
Leonardo de Moura
39e752d28a chore(tests/playground/flat_parser): remove debugging stuff 2019-03-14 11:05:13 -07:00
Leonardo de Moura
44cdb1fc56 chore(tests/playground/flat_parser): add new file_map
Goal: minimize the number of constructor object allocations.
They derailed me when I was looking for performance bottlenecks in the
flat_parser.
2019-03-14 08:38:08 -07:00
Leonardo de Moura
e50d8e0b92 chore(tests/playground/flat_parser): continue experiment 2019-03-13 16:40:12 -07:00
Leonardo de Moura
114f7ed190 feat(tests/playground/flat_parser): minor edits
We need a low level string.iterator to efficiently implement
primitives such as `str`.
2019-03-09 08:08:37 -08:00
Leonardo de Moura
489eaf3b71 test(tests/playground/flat_parser): experiment 2019-03-08 17:09:42 -08:00