Improving Nasal: Difference between revisions

Jump to navigation Jump to search
m
→‎Better debugging/development support: flags - profiling and debugging
m (→‎Better debugging/development support: flags - profiling and debugging)
Line 140: Line 140:
** Typically supported conditional break point types are [http://www.ofb.net/gnu/gdb/gdb_28.html][http://www.delorie.com/gnu/docs/gdb/gdb_29.html][http://winappdbg.sourceforge.net/HowBreakpointsWork.html]:
** Typically supported conditional break point types are [http://www.ofb.net/gnu/gdb/gdb_28.html][http://www.delorie.com/gnu/docs/gdb/gdb_29.html][http://winappdbg.sourceforge.net/HowBreakpointsWork.html]:
** onNamespace, onFile, onLine, onValue, onTypeChange, onRead, onWrite, onExecute, onOpcode, onAlloc, onFree (most of these could be implemented in scripting space meanwhile)
** onNamespace, onFile, onLine, onValue, onTypeChange, onRead, onWrite, onExecute, onOpcode, onAlloc, onFree (most of these could be implemented in scripting space meanwhile)
* Time other parts of Nasal (not just VM) with a compile-time flag?
* Time other parts of Nasal (not just VM) with a compile-time flag? (could be stored in the Context struct, so that sub contexts would have their own flags, i.e. recursive scripts would not affect each other)
* Also, add some form of Context-based debug/log-level flag for different verbosity levels and phases (parse,codegen,vm,gc) - and maybe don't write it directly to the console, but allow a container/callback to be specified - for better integration/processing by the host app (fgfs)
* Better error messages – in progress.
* Better error messages – in progress.
** '''Parsing:''' Say something other than "parse error", like "null pointer".
** '''Parsing:''' Say something other than "parse error", like "null pointer".

Navigation menu