finally todo.txt reflects reality again
This commit is contained in:
parent
aeda6c517e
commit
9952d16674
1 changed files with 7 additions and 10 deletions
17
todo.txt
17
todo.txt
|
|
@ -1,7 +1,12 @@
|
||||||
version 1.0 battle plan
|
version 1.0 battle plan
|
||||||
=======================
|
=======================
|
||||||
|
|
||||||
- iters for js
|
- make 'not nil' the default (produce warnings instead of errors for
|
||||||
|
a smooth migration path)
|
||||||
|
- case objects needs to be safe and need to support pattern matching
|
||||||
|
- sanctionize some macro implementation for interfaces
|
||||||
|
- implement a way to forward object type declarations across module
|
||||||
|
boundaries; C++ style
|
||||||
- fix "high priority" bugs
|
- fix "high priority" bugs
|
||||||
- try to fix as many compiler crashes as reasonable
|
- try to fix as many compiler crashes as reasonable
|
||||||
|
|
||||||
|
|
@ -21,7 +26,6 @@ Not critical for 1.0
|
||||||
'static[T]' mess in the compiler!
|
'static[T]' mess in the compiler!
|
||||||
- ``not`` or ``~`` for the effects system
|
- ``not`` or ``~`` for the effects system
|
||||||
- document and stress test ``.partial`` object declarations
|
- document and stress test ``.partial`` object declarations
|
||||||
- add "all threads are blocked" detection to 'spawn'
|
|
||||||
- figure out why C++ bootstrapping is so much slower
|
- figure out why C++ bootstrapping is so much slower
|
||||||
- The bitwise 'not' operator cold be renamed to 'bnot' to
|
- The bitwise 'not' operator cold be renamed to 'bnot' to
|
||||||
prevent 'not 4 == 5' from compiling. -> requires 'mixin' annotation for procs!
|
prevent 'not 4 == 5' from compiling. -> requires 'mixin' annotation for procs!
|
||||||
|
|
@ -30,8 +34,6 @@ Not critical for 1.0
|
||||||
- incrSeq
|
- incrSeq
|
||||||
- addChar
|
- addChar
|
||||||
- pragmas need 'bindSym' support
|
- pragmas need 'bindSym' support
|
||||||
- allow simple read accesses to global variables --> difficult to ensure that
|
|
||||||
no data races happen
|
|
||||||
- pragmas need re-work: 'push' is dangerous, 'hasPragma' does not work
|
- pragmas need re-work: 'push' is dangerous, 'hasPragma' does not work
|
||||||
reliably with user-defined pragmas
|
reliably with user-defined pragmas
|
||||||
- memory manager: add a measure of fragmentation
|
- memory manager: add a measure of fragmentation
|
||||||
|
|
@ -39,8 +41,6 @@ Not critical for 1.0
|
||||||
- optimize 'genericReset'; 'newException' leads to code bloat
|
- optimize 'genericReset'; 'newException' leads to code bloat
|
||||||
|
|
||||||
- prevent 'alloc(TypeWithGCedMemory)'?
|
- prevent 'alloc(TypeWithGCedMemory)'?
|
||||||
- split docgen into separate tool; not happy how it worked with ``nimsuggest``
|
|
||||||
though
|
|
||||||
- map ``string`` and ``seq`` to ``std::string`` and ``std::vector``
|
- map ``string`` and ``seq`` to ``std::string`` and ``std::vector``
|
||||||
- macro support for '='; bind '=' to a memory region
|
- macro support for '='; bind '=' to a memory region
|
||||||
- macros as type pragmas
|
- macros as type pragmas
|
||||||
|
|
@ -50,7 +50,6 @@ Bugs
|
||||||
====
|
====
|
||||||
|
|
||||||
- VM: Pegs do not work at compile-time
|
- VM: Pegs do not work at compile-time
|
||||||
- VM: ptr/ref T cannot work in general
|
|
||||||
- blocks can "export" an identifier but the CCG generates {} for them ...
|
- blocks can "export" an identifier but the CCG generates {} for them ...
|
||||||
- ConcreteTypes in a 'case' means we don't check for duplicated case branches
|
- ConcreteTypes in a 'case' means we don't check for duplicated case branches
|
||||||
|
|
||||||
|
|
@ -58,8 +57,7 @@ Bugs
|
||||||
GC
|
GC
|
||||||
==
|
==
|
||||||
|
|
||||||
- use big blocks in the allocator
|
- use slightly bigger blocks in the allocator
|
||||||
- provide tool/API to track leaks/object counts
|
|
||||||
- resizing of strings/sequences could take into account the memory that
|
- resizing of strings/sequences could take into account the memory that
|
||||||
is allocated
|
is allocated
|
||||||
|
|
||||||
|
|
@ -67,7 +65,6 @@ GC
|
||||||
Concurrency
|
Concurrency
|
||||||
===========
|
===========
|
||||||
|
|
||||||
- test 'deepCopy' for closures
|
|
||||||
- implement 'foo[1..4] = spawn(f[4..7])'
|
- implement 'foo[1..4] = spawn(f[4..7])'
|
||||||
|
|
||||||
Low priority:
|
Low priority:
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue