Hi all,
SVN head now has a few new tricks to aid debugging.
Special reader syntax added:
##current-file
returns the current filename, ie, the port name for whatever
file/socket/etc is currently being read.
##current-line
returns the line number that the statement appears on.
example:
testfile1.scm:
(display (conc "got here: " ##current-file " " ##current-line "\n"))
(define foo 3)
(define bar 4)
(display (conc "got here: " ##current-file " " ##current-line "\n"))
testfile2.scm:
(display (conc "got here: " ##current-file " " ##current-line "\n"))
(load "testfile1.scm")
(display (conc "got here: " ##current-file " " ##current-line "\n"))
csi# (load "testfile2.scm")
got here: testfile2.scm 1
got here: testfile1.scm 1
got here: testfile1.scm 4
got here: testfile2.scm 3
next addition, condition-case now takes in an optional else clause of the
form:
(else <lambda-list> <body>...)
if no condition/error is signalled, this binds the value(s) of the test clause
to the var/list of var(s) in <lambda-list> and executes <body>... in that
context. this should (hopefully!) make life a bit easier for handling cases
where one wants to catch errors and continue without designating some arbitrary
value as 'condition caught' to prevent some set of statements from executing.
hope this helps!
-elf
_______________________________________________
Chicken-users mailing list
[email protected]
http://lists.nongnu.org/mailman/listinfo/chicken-users