diff --git a/Roadmap.md b/Roadmap.md
index 4ee69b6..084f481 100644
--- a/Roadmap.md
+++ b/Roadmap.md
@@ -6,54 +6,42 @@
Notes |
+
+ Implement static[T] properly |
+ for version 1.0 |
+ The implementation has lots of issues, but what's worse the spec is not nearly clear enough and seems to conflate 2 different ideas. |
+
+
+
+ Support overloading of the assignment operator |
+ for version 1.0 |
+ like fields and destructors an assignment operator needs to be lifted |
+
+
Automatic dereference in more contexts |
- cancelled |
- important to be able to write more generic containers easily |
-
-
-
- Comment handling is weird |
- implemented for 0.10.0 |
- comments should be optional and not part of the grammar, unless it is a documentation comment |
-
-
-
- The new concurrency model |
- implemented for 0.10.0 |
- this requires frontend and backend changes, but no changes to the runtime/GC |
+ might make into 1.0 |
+ important to be able to write more generic containers easily; current plan is rewrite a.f() to f(a[]) but not in further contexts |
asFunc pragma |
- 0.9.8 |
+ After 1.0 |
provides a nice bridge from 'var T' to 'returns T'; can be entirely implemented as a macro with the upcoming types API
|
Extended macros API |
- 0.9.8 |
+ after 1.0 |
missing: an API for working with types; the builtin getImpl |
Pragmas are not supported for 'bindSym' |
- 0.9.8 |
+ after 1.0 |
this makes clean macros impossible to write when it comes to pragmas |
-
- Support overloading of the assignment operator |
- 0.9.8 |
- like fields and destructors an assignment operator needs to be lifted |
-
-
-
- Type checking for tuples |
- 0.9.8 |
- needs to be refined. Recursive tuples should be forbidden. |
-
-
Alias analysis needs to specified and controllable with pragmas |
after 1.0 |
@@ -63,7 +51,7 @@
Destructors need to interact with finalizers |
after 1.0 |
- destructors and finalizers are implemented, but do not interact. new which takes a finalizer needs to be deprecated. People should use a destructor instead |
+ destructors and finalizers are implemented, but do not interact. new which takes a finalizer needs to be deprecated. People should use a destructor instead. However, destructors should ultimately depend on an escape analysis. |
@@ -128,7 +116,7 @@
Deterministic code generation |
- 0.9.8 |
+ after 1.0 |
deterministic code generation makes C code caching much more effective |
@@ -151,7 +139,7 @@
Pure RC'ing GC |
- after 1.0 |
+ unknown |
important for better interoperability with Objective-C |