Skip to content

Commit

Permalink
Fix wren, improve logo implementation
Browse files Browse the repository at this point in the history
logo: merge eval and eval-ast, fix defmacro, improve efficiency

Complete the merge of eval and eval-ast.

Prevent defmacro! from mutating functions.

Improve the performance:
* use native iteration in env_get and env_map
* rewrite the reader so that it does not create lots of
  substsrings of its input
* reduce the cost of most list operations
The previous implementation was using lots of temporary list
constructions (for example, reverse iteration with butlast requires
O(n^2) nodes). This commit does not require Dockerfile to change the
garbage collection settings anymore.

Encapsulate all representation in types.lg and env.lg.
Replace some manual iterations with logo control structures.
Reduce the diff between steps.
  • Loading branch information
asarhaddon committed Jan 9, 2022
1 parent a76c5d5 commit 241500c
Show file tree
Hide file tree
Showing 28 changed files with 1,297 additions and 1,449 deletions.
2 changes: 2 additions & 0 deletions IMPLS.yml
Original file line number Diff line number Diff line change
@@ -1,2 +1,4 @@
IMPL:
# - {IMPL: logo, NO_SELF_HOST: 1} # step4 timeout
- {IMPL: logo}
- {IMPL: wren}
Loading

0 comments on commit 241500c

Please sign in to comment.