summaryrefslogtreecommitdiff
path: root/Build/source/utils/asymptote/TODO
diff options
context:
space:
mode:
Diffstat (limited to 'Build/source/utils/asymptote/TODO')
-rw-r--r--Build/source/utils/asymptote/TODO14
1 files changed, 11 insertions, 3 deletions
diff --git a/Build/source/utils/asymptote/TODO b/Build/source/utils/asymptote/TODO
index bb9fec483a5..11eface34c8 100644
--- a/Build/source/utils/asymptote/TODO
+++ b/Build/source/utils/asymptote/TODO
@@ -1,12 +1,20 @@
Andy: possible optimizations:
+ fix func op and three.asy
+ rewrite exp::transToType and protoenv::castSource
+ varpush+pop --> no op
+ varsave+pop --> one op
+ closure+pushfunc+varsave+pop --> savefunc
+ stack::popWithoutReturningValue
+ look at position information saved in program, maybe save separately
+ formal::addOps calls trans
only hash first 3 or 4 args of signature
- hashify symbol table
rm transToType from varinitArg::trans
run a perfect match through multimatch first (no casting allowed)
- STATIC_SYMBOL(name) define to avoid retranslating symbols in addOps
change camp.y to flag arglists with named args
remove addFunctionOps in favor of == and != defined in types.h
- remove most makesymbols in camp.l
+
+Andy: testing in errortest.asy for packing versus casting, default argument
+ambiguities, and whatever else you can think of
Andy: operator tuple, to let people define their own tuples