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
Copy file name to clipboardExpand all lines: README.md
+9-35Lines changed: 9 additions & 35 deletions
Original file line number
Diff line number
Diff line change
@@ -35,22 +35,22 @@ Give professionals the comfort of known semantics with less repetition and fewer
35
35
36
36
## TODO
37
37
- Prio 1 Output:
38
-
-[only-raw] pointer/array, output
39
-
- prototypes for simple gen
38
+
-DONE: [only-raw] pointer/array, output
39
+
-DONE: prototypes for simple gen
40
40
- subclasses
41
41
- test cases for thesis: the_final_test.myll
42
42
43
43
- Prio 2:
44
44
- Benchmark the compiler
45
-
-accessor, 100% concept, identify use cases and morph them
45
+
-accessors, 100% concept, identify use cases and morph them
46
46
47
47
- Prio 3:
48
-
- intelligent extra linespacing (between output groups)
48
+
-DONE: intelligent extra linespacing (between output groups)
49
49
- automatic includes (e.g. recognize std::vector)
50
50
51
51
- fix:
52
52
- ppp at end of struct
53
-
-imports having paths
53
+
-import statements which contain pathes
54
54
55
55
- done:
56
56
-[done] common statements, out
@@ -66,16 +66,16 @@ Give professionals the comfort of known semantics with less repetition and fewer
66
66
-[partly] manual includes (OR just do the common includes!)
67
67
68
68
- Don't forget high level ideas!
69
-
-SOA attribute
69
+
-SoA/AoS/AoSoA attribute
70
70
- PIMPL attribute
71
71
- Source file unification build
72
-
- Glue classes
73
-
-Memorization as language feature
72
+
- Glue classes (e.g. you include both; iostream and vector and **only then** get an stream.operator<<(vector). Neither iostream would force you to include vector, not vector would enforce iostream)
73
+
-Memoization as language feature
74
74
- Static init of singletons, optimizing away the thread lock
75
75
-*typename* instead of *var*
76
76
- cost of moving, cost of comp, constexpr to switch algs, see "speed is in the minds of ppl"
77
77
- less shadow language -> no preprocessor
78
-
- solve by having compile time descisions handled in the language itself
78
+
- solve by having compile time descisions handled in the language itself, via attribute sections
79
79
- default arguments possible from callsite (like LINE and FILE)
80
80
81
81
# Modules
@@ -94,32 +94,6 @@ static hat etliche Bedeutungen, const auch:
94
94
...Echte 'Konstanten' wurden aber sehr lange nicht etwa mit 'const float PI = 3.14f;'
95
95
geschrieben, sondern mit '#define PI 3.14f'
96
96
97
-
C#/Java/D/Rust argumentation erweitern
98
-
99
-
Zu lesen: K&R, Stroustrup
100
-
101
-
Leute kontaktieren:
102
-
BS, AH, JB, PV
103
-
104
-
# Pointer / Array output
105
-
106
-
- int a; declare a as int
107
-
---
108
-
- int *a; declare a as pointer to int
109
-
- int a[]; declare a as array of int
110
-
---
111
-
- int *a[]; declare a as array of pointer to int
112
-
- int *(a)[]; declare a as array of pointer to int
113
-
- int (*a)[]; declare a as pointer to array of int
114
-
---
115
-
- ptr<int> a;
116
-
- ary<int> a;
117
-
---
118
-
- ary<ptr<int>> a;
119
-
- ptr<ary<int>> a;
120
-
---
121
-
- ptr<int(*)[]> a;
122
-
123
97
# Unsolved Issues
124
98
(not to be mistakened with not-implemented features)
125
99
- Non-type template parameters need a distinction.
0 commit comments