You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Use concrete type constraints on variable assignments rather than "if false" type hints.
3
-
In the bootstrap version of Rune, add support for autocasting return expresions
3
+
In the bootstrap version of Rune, add support for autocasting return expressions
4
4
to the type of other return expressions
5
5
Add an option for generating SoA vs AoS memory layout so folks can do their own benchmarking.
6
6
Write a C or C++ backend code generator for improved debugging of Rune, and so folks can benchmark with
7
7
full front-end optimization of different C compilers for benchmarking.
8
8
Enhance gdb pretty printer so that we don't have to generate show methods.
9
9
Figure out when relationship transformers should run. Right now it is in the order statements are bound so that module-level variables can be passed into the transformers, but we assume all transformers are run before binding a constructor, which is currently false. Figure out the right thing and do it.
10
-
Use concrete type constraints in binding. This can help eleminate problems
10
+
Use concrete type constraints in binding. This can help eliminate problems
11
11
in binding recursive functions, and also non-template classes.
12
12
Don't allow generated fields to be written outside of generated code.
13
13
Add an Object class that matches all types, so we can have case (Object, Object, Object).
@@ -18,25 +18,25 @@ Flesh out index overloading: write is not yet supported.
18
18
Support Overloading method get/set methods.
19
19
Improve safe mode:
20
20
Throw error when destroying an object that has a reference on the stack.
21
-
Use overflow/underflow intrinsics in LLVM
21
+
Use overflow/underflow intrinsics in LLVM.
22
22
Fix LLVM select for case when select bit is secret.
23
23
Also, only evaluate one or the other when select is not secret.
24
24
Add syntax for declaring volatile globals at specified addresses, so we can do memory-mapped I/O. Consider using a global io array.
25
25
Add good support for interop with C++, which is a key requirement for a language to replace C++ in prod:
26
26
syntax for declaring extern "C++" functions, and deal with name mangling.
27
27
Add support for calling C++ constructors and methods.
28
28
Add support for c++ unique pointers, which are often returned.
29
-
Add support for C pointer types, which can be returned by C functions declared extern"C".
29
+
Add support for C pointer types, which can be returned by C functions declared extern"C".
30
30
Add "unsafe" blocks where it is legal to dereference or index into a C pointer.
31
31
Write all the Benchmark Games benchmarks twice: one single threaded and
32
-
honest, one multi-threaded and using similar trickes used by the others to win.
32
+
honest, one multi-threaded and using similar tricks used by the others to win.
33
33
Implement dynamic class extensions.
34
34
Implement inheritance via composition, using exclusive relationships.
35
35
Return error codes for each deError call, which error tests can expect.
36
36
Write initial language reference manual.
37
37
Add LLVM compiler hints and optmizations as described at
0 commit comments