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:
|
||||
- param count checks
|
||||
* should have checks in compiler as well. could possibly
|
||||
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.
|
||||
is what we have now robust enough to prevent segfaults?
|
||||
|
||||
- type checking
|
||||
ideally want to do this in a way that minimizes performance impacts.
|
||||
will probaby require extensive checks within apply() though, since that
|
||||
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
|
||||
|
||||
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/
|
||||
|
||||
- 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.
|
||||
|
||||
idea: set num_args and var_args in closure types. then can modify apply() to
|
||||
check that the right number of args is provided for closure types. don't want to check
|
||||
numargs all the time, especially for compiled code. but this seems like a good compromise.
|
||||
- FUTURE error handling
|
||||
- param count checks
|
||||
* should have checks in compiler as well. could possibly
|
||||
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.
|
||||
|
||||
- Add unit tests for exception handlers, and new constructs added to lib
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue