-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathtodo.json
99 lines (94 loc) · 3.37 KB
/
todo.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
[
{
"category": "cornerstone-lib",
"description": "Relating to the cornerstone library in backbone.",
"todos": [
"consider: matcher functions should free results of Matcher$ptr.is",
"texp tabs representation",
"texp allocator",
"full parser",
"rope and textcoord",
"add test for whitespace between LPAREN and value of list-repr texp"
]
},
{
"category": "backbone-lib",
"description": "Relating to the library for the self-implementation of backbone.",
"todos": [
"basic gen",
"consider making some things in the pass after normalization Name, not Value",
"consider making Expr -> | Tall Value to differentiate Tall"
]
},
{
"category": "backbone",
"description": "Language design considerations and language features for the Backbone language."
"todos": [
"inspection for local variables to ensure no undefined behaviour: references going out of scope and using undefined behaviour",
"don't include tests with include",
"tree shaking for includes",
"'string' and 'view' special forms",
"consider removing Value from Expr choice after norm",
"type aliases",
"check: do files need to end in .bb?",
"field-get and field-set accessors that turn into index/{load,store} or {insertvalue,extractvalue}",
"type check marker",
"test runner",
"contracts (result and input predicates)",
"make tester for backbone-test for implementation in any language",
"global variables? immutable?"
]
},
{
"category": "bb0",
"todos": [
"figure out how to turn i1 into u64",
"check that truncation happens from the same signedness to the same signedness",
"check sign/zero extension semantics for ptrtoint of u64 vs i64",
"llvm has a 'null' literal that we should support",
"allow for more than 1 str-table with custom access keys",
"int truncation and signed/zero extension",
"global variables? immutable?",
"branches? switch? basic blocks?"
]
},
{
"category": "passes",
"description": "Passes that should be explored in the backbone implementation of backbone.",
"todos": [
"passes should return the new texp with it's new proof",
"type inference",
"consider flipping Store operands",
"consider flipping Index operands",
"name scope resolution",
"make blocks have lexical scope",
"type check pass",
"argument type check pass",
"while loops"
]
},
{
"category": "done",
"description": "Completed tasks from each category",
"todos": [
"string extraction pass #passes",
"keyword resolution #cornerstone",
"wisdom.md #cornerstone",
"README.md #cornerstone",
"basic matcher #backbone-lib",
"basic parser #backbone-lib",
"include relative to current file #backbone",
"int truncation and signed/zero extension #bb0",
"normalization #passes",
"type expansion #passes",
"more bitcasts #bb0",
"proof structure should be parallel with texp structure #cornerstone",
"string basic-append #backbone-lib",
"string self-append #backbone-lib",
"basic grammar error reporting #cornerstone",
"basic file and reader #backbone-lib",
"texp.push and .parenPrint #backbone-lib",
"change atoms to say /atom not /exact #cornerstone"
]
}
]