summaryrefslogtreecommitdiff
path: root/todos.txt
blob: b233b3620e1188e6eb4035bd9e702a1bf77cb8ce (plain)
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
DONE(6/3/18) 10/11/17 Ben Culkin :Determinism
	Add a way to get the grammar to pick rules in a deterministic fashion,
	so as to be able to iterate all of the rules.
	- Specify the same Random instance to the state

@TODO 10/11/17 Ben Culkin :ExportSanity
	Figure out a way to organize exports instead of just sticking them all
	into the global namespace. Maybe use the @ symbol for 'foreign rule
	references' (FRRs)

	ADDENDA: 10/26/17
	We now have the '^<rule>' syntax to avoid shadowing issues, but this
	doesn't avoid the issue with duplicate exports.

@TODO 10/23/17 Ben Culkin :Casing
	Provide some way to convert rules into different cases.

@TODO 10/23/17 Ben Culkin :Spacing
	Find a saner way to do spacing. + rules work well for some things, but
	what is needed is some way to do it only one level deep. Possibly some
	kind of pragma to convert a rule to a single-level spacer?

	ADDENDA: 10/24/17
	We now have a partial solution in 'despace-rule'. However, this doesn't
	quite work in some cases. Why is that?

@TODO 10/23/17 Ben Culkin :Pluralizing
	Add some way to say to pluralize the contents of a rule

@TODO 10/23/17 Ben Culkin :Extensions
	Add some soft of pragmas to allow the loading of extensions that provide
	custom rules/case types/pragmas and things like that

@TODO 10/30/17 Ben Culkin :RegexPragma
	Add a pragma that applies a regex substitution to the generated version
	of a rule.

@TODO 4/25/18 Ben Culkin :Debugging
	Add a way to print out the rules as a tree format, so as to perform
	better debugging of rules.

	Once this has been done, consider doing a CLI interface that allows
	manipulating and using grammars.

@TODO 5/10/18 Ben Culkin :Despace
	Add a generalized form of despace-rule that allows inserting arbitray
	text between rule bits. Maybe call it 'intersperse-rule'?

@TODO 5/10/18 Ben Culkin :RuleInclusion
	Add some way to sort of 'import' a rules body into another rule so as to
	not throw off probability by splitting.

@TODO 6/3/18 Ben Culkin :DieRandom
	Add a way to use dice from dicelang (probably the rewrite, once that has
	a string parser) to create random numbers

@TODO 9/22/2019 Ben Culkin :ErrorHandling
	Do a wholesale refactoring away from exceptions to a more C-style way of
	handling things.

	This will probably entail the definition of some kind of error code type
	that can be conveniently returned and used.

@TODO 7/8/2020 Ben Culkin :RecurLimit
	Add some easy way to say that we only want to recur into a given rule once
	in this context (could some sort of use of exhaustive rule vars. do this?
	maybe. it's been a while since last I looked at the details of how this
	project worked; and I doubt I left enough comments/other documentation)