mirror of
https://github.com/justinethier/cyclone.git
synced 2025-07-16 09:17:35 +02:00
WIP
This commit is contained in:
parent
cbb175d477
commit
9f72e6699d
1 changed files with 10 additions and 16 deletions
26
TODO
26
TODO
|
@ -14,21 +14,13 @@ Working TODO list:
|
||||||
|
|
||||||
- improved error handling:
|
- improved error handling:
|
||||||
- param count checks
|
- param count checks
|
||||||
* should have checks in compiler as well. could possibly
|
is what we have now robust enough to prevent segfaults?
|
||||||
use prim metadata to autogenerate the runtime checks (later, perhaps).
|
|
||||||
absolutely need this, but may require some thought. which phase should
|
|
||||||
do the checks? also may require looking at lib files because you need
|
|
||||||
to check each application point, and need to look up the function to
|
|
||||||
see how many args it can receive.
|
|
||||||
- type checking
|
- type checking
|
||||||
ideally want to do this in a way that minimizes performance impacts.
|
ideally want to do this in a way that minimizes performance impacts.
|
||||||
will probaby require extensive checks within apply() though, since that
|
will probaby require extensive checks within apply() though, since that
|
||||||
all happens at runtime.
|
all happens at runtime.
|
||||||
|
|
||||||
- error checking
|
|
||||||
need errors for things such as file not existing, to bullet-proof the runtime
|
|
||||||
some things to check for - file not found, divide by zero. what else?
|
|
||||||
|
|
||||||
without these, it will be impossible (or at least time-consuming) to debug issues going forward
|
without these, it will be impossible (or at least time-consuming) to debug issues going forward
|
||||||
|
|
||||||
2) Need to either allow code to read an import after macro expansion, or have another main module for self-hosting
|
2) Need to either allow code to read an import after macro expansion, or have another main module for self-hosting
|
||||||
|
@ -85,12 +77,14 @@ Working TODO list:
|
||||||
|
|
||||||
http://www.pvk.ca/Blog/2012/02/19/fixed-points-and-strike-mandates/
|
http://www.pvk.ca/Blog/2012/02/19/fixed-points-and-strike-mandates/
|
||||||
|
|
||||||
- Error handling
|
- FUTURE error handling
|
||||||
need to perform much more error handling of input code. one of the biggest is to report if a function is passed the wrong number of arguments, as this will result in segfauls, bad transport errors, etc downstream if it is allowed.
|
- param count checks
|
||||||
|
* should have checks in compiler as well. could possibly
|
||||||
idea: set num_args and var_args in closure types. then can modify apply() to
|
use prim metadata to autogenerate the runtime checks (later, perhaps).
|
||||||
check that the right number of args is provided for closure types. don't want to check
|
absolutely need this, but may require some thought. which phase should
|
||||||
numargs all the time, especially for compiled code. but this seems like a good compromise.
|
do the checks? also may require looking at lib files because you need
|
||||||
|
to check each application point, and need to look up the function to
|
||||||
|
see how many args it can receive.
|
||||||
|
|
||||||
- Add unit tests for exception handlers, and new constructs added to lib
|
- Add unit tests for exception handlers, and new constructs added to lib
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue