annotate todo.txt @ 75:0083b2f7b3c7

Partially working implementation of List. Modified build scripts to allow use of other compilers. Fixed some bugs involving method implementations on different types returning different numbers of outputs. Added Fold to the 'builtins' in the comipler.
author Mike Pavone <pavone@retrodev.com>
date Tue, 06 Jul 2010 07:52:59 -0400
parents a844c623c7df
children dbe95bfec970
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
74
a844c623c7df Add support for Worker type
Mike Pavone <pavone@retrodev.com>
parents:
diff changeset
1
a844c623c7df Add support for Worker type
Mike Pavone <pavone@retrodev.com>
parents:
diff changeset
2 "Soon":
a844c623c7df Add support for Worker type
Mike Pavone <pavone@retrodev.com>
parents:
diff changeset
3 Tail call optimization
a844c623c7df Add support for Worker type
Mike Pavone <pavone@retrodev.com>
parents:
diff changeset
4 Fix Array and Worker memory leaks
a844c623c7df Add support for Worker type
Mike Pavone <pavone@retrodev.com>
parents:
diff changeset
5
a844c623c7df Add support for Worker type
Mike Pavone <pavone@retrodev.com>
parents:
diff changeset
6 Needed for compiler to be self-hosting:
a844c623c7df Add support for Worker type
Mike Pavone <pavone@retrodev.com>
parents:
diff changeset
7 Finish implementation of String
a844c623c7df Add support for Worker type
Mike Pavone <pavone@retrodev.com>
parents:
diff changeset
8 Finish implementation of List
a844c623c7df Add support for Worker type
Mike Pavone <pavone@retrodev.com>
parents:
diff changeset
9 Add support for List literals in compiler
a844c623c7df Add support for Worker type
Mike Pavone <pavone@retrodev.com>
parents:
diff changeset
10 Implement Dictionary
a844c623c7df Add support for Worker type
Mike Pavone <pavone@retrodev.com>
parents:
diff changeset
11 Implement File
a844c623c7df Add support for Worker type
Mike Pavone <pavone@retrodev.com>
parents:
diff changeset
12 Add support for implicit conversions
a844c623c7df Add support for Worker type
Mike Pavone <pavone@retrodev.com>
parents:
diff changeset
13 Tweak extendlib to work with language changes introduced with compiler
a844c623c7df Add support for Worker type
Mike Pavone <pavone@retrodev.com>
parents:
diff changeset
14 Tweak compiler to work with language changes introduced with compiler
a844c623c7df Add support for Worker type
Mike Pavone <pavone@retrodev.com>
parents:
diff changeset
15
a844c623c7df Add support for Worker type
Mike Pavone <pavone@retrodev.com>
parents:
diff changeset
16 Needed for web site to work in compiler:
a844c623c7df Add support for Worker type
Mike Pavone <pavone@retrodev.com>
parents:
diff changeset
17 Pretty much everything needed for the compiler to be self-hosting
a844c623c7df Add support for Worker type
Mike Pavone <pavone@retrodev.com>
parents:
diff changeset
18 Implement Net Connection (or whatever the TCP connection type gets called)
a844c623c7df Add support for Worker type
Mike Pavone <pavone@retrodev.com>
parents:
diff changeset
19 Add support for multi-threaded execution in runtime (not strictly needed)
a844c623c7df Add support for Worker type
Mike Pavone <pavone@retrodev.com>
parents:
diff changeset
20 Add support for global stores to compiler/runtime
a844c623c7df Add support for Worker type
Mike Pavone <pavone@retrodev.com>
parents:
diff changeset
21 Tweak site to work with language changes introduced with compiler
a844c623c7df Add support for Worker type
Mike Pavone <pavone@retrodev.com>
parents:
diff changeset
22
a844c623c7df Add support for Worker type
Mike Pavone <pavone@retrodev.com>
parents:
diff changeset
23 Other Stuff:
a844c623c7df Add support for Worker type
Mike Pavone <pavone@retrodev.com>
parents:
diff changeset
24 Add varargs and/or optional arguments
a844c623c7df Add support for Worker type
Mike Pavone <pavone@retrodev.com>
parents:
diff changeset
25 Add sugar to be able to call a variable without having to do "[var]Call[...]"
a844c623c7df Add support for Worker type
Mike Pavone <pavone@retrodev.com>
parents:
diff changeset
26 Implement "Call" on container types so you can do things like "somelist[2]"
a844c623c7df Add support for Worker type
Mike Pavone <pavone@retrodev.com>
parents:
diff changeset
27 and also uses containers as if they were workers (pass them to Fold,
a844c623c7df Add support for Worker type
Mike Pavone <pavone@retrodev.com>
parents:
diff changeset
28 Map, etc.). Call implementation should use varargs to allow some kind
a844c623c7df Add support for Worker type
Mike Pavone <pavone@retrodev.com>
parents:
diff changeset
29 of slice notation or fetching multiple values depending on type.
a844c623c7df Add support for Worker type
Mike Pavone <pavone@retrodev.com>
parents:
diff changeset
30 Support list literals that contain non-literals e.g. (1,foo,[bar]+[4])
a844c623c7df Add support for Worker type
Mike Pavone <pavone@retrodev.com>
parents:
diff changeset
31 Add Javascript backend
a844c623c7df Add support for Worker type
Mike Pavone <pavone@retrodev.com>
parents:
diff changeset
32 Add x86_64 backend (or maybe LLVM backend?)
a844c623c7df Add support for Worker type
Mike Pavone <pavone@retrodev.com>
parents:
diff changeset
33 Support construction of new workers at runtime
a844c623c7df Add support for Worker type
Mike Pavone <pavone@retrodev.com>
parents:
diff changeset
34 Get a REPL working on the new stack
a844c623c7df Add support for Worker type
Mike Pavone <pavone@retrodev.com>
parents:
diff changeset
35 Flesh out ideas for having limited I/O within transactions
a844c623c7df Add support for Worker type
Mike Pavone <pavone@retrodev.com>
parents:
diff changeset
36 Add module system
a844c623c7df Add support for Worker type
Mike Pavone <pavone@retrodev.com>
parents:
diff changeset
37 Exception support
a844c623c7df Add support for Worker type
Mike Pavone <pavone@retrodev.com>
parents:
diff changeset
38