Skip to content

Commit

Permalink
readme: update the "near-term" section (#845)
Browse files Browse the repository at this point in the history
## Summary

Adjust the "Near-term Development" section to better reflect the
currently active areas of development.
  • Loading branch information
zerbina authored Aug 17, 2023
1 parent 215d621 commit e64d777
Showing 1 changed file with 9 additions and 4 deletions.
13 changes: 9 additions & 4 deletions readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -66,20 +66,25 @@ For updates on the progress see the roadmap progress [thread](https://github.com

The current and key areas of development are as follows:

1. improve tests - core specification as tests (see `slim the core` below).
1. decouple the data types used by the different compilation stages
2. simplify the code generators - perform much of the transformation and lowering
via passes over the mid-end IR
3. improve tests - core specification as tests (see `slim the core` below).
Reorganize existing tests. [Project](https://github.com/nim-works/nimskull/projects/2)
to track progress.
2. nkError/tyError/skerror - replace `localError` etc approach with an AST
4. nkError/tyError/skerror - replace `localError` etc approach with an AST
(`nkError`) one [Project](https://github.com/nim-works/nimskull/projects/1)
3. comments - incrementally document compiler source for easier learning
4. slim the core - remove dialects, backwards compatibility, etc [Discussion](https://github.com/nim-works/nimskull/discussions/289)
5. comments - incrementally document compiler source for easier learning
6. slim the core - remove dialects, backwards compatibility, etc [Discussion](https://github.com/nim-works/nimskull/discussions/289)

There are more, the above have been carefully chosen based on the direction of
the language; moreover, their impact goes beyond what's been described and
intends to create a virtuous cycle. Examples:

* clarifying the language specification will identify bugs and design flaws that
in turn will be fixed.
* moving decision making out of the code generators will make behaviour of the
backends consistent with each other
* changes introduced via nkError result in more pure code (`func`) as control-
flow and effects are no longer intertwined; lead to bug and language
design fixes due to a broad audit, ease compiler as a library usage for tools
Expand Down

0 comments on commit e64d777

Please sign in to comment.