-
The patch trace-1808029-call-count.diff works great for me.
I hope it will be incorporated.
A big thanks!
2007-10-09 05:51:35 UTC in CLISP - an ANSI Common Lisp
-
The patch trace-1808029-call-count.diff works great for me.
I hope it will be incorporated.
A big thanks!
2007-10-09 05:51:14 UTC in CLISP - an ANSI Common Lisp
-
SDS suggestion of using :pre and :post to trace does not seems to work easily, since I want to print the call counter (i.e. its value on function entry) at return (when the function has been recursively called many times so the counter has increased). In other words, the trace macro has to expand each traced function to something like
(let ( (local-trace-counter (incf global-trace-counter)) )
2007-10-08 17:20:03 UTC in CLISP - an ANSI Common Lisp
-
Sorry for putting a simplisitc example. I really meant a call counter, so that in the same process, if later on, after having traced (fact 3) like above, (fact 2) is called again, it would give
(fact 2)
1. Trace #5: (FACT '2)
2. Trace #6: (FACT '1)
3. Trace #7: (FACT '0)
3. Trace #7: FACT ==> 1
2. Trace #6: FACT ==> 2
1. Trace #5: FACT ==> 6
I'm actually coding a tiny Lisp to C...
2007-10-08 16:38:26 UTC in CLISP - an ANSI Common Lisp
-
The details of the (trace ...) function behavior is left unspecified by the CL standard.
I suggest that each traced function would emit, in addition to what is actually printed today, a unique call counter.
As a concrete example, currently tracing the famous fact function gives
[5]> (fact 3)
1. Trace: (FACT '3)
2. Trace: (FACT '2)
3. Trace: (FACT '1)
4. Trace: (FACT '0)
4. Trace...
2007-10-05 11:42:07 UTC in CLISP - an ANSI Common Lisp
-
Another possible use might be inside a long-standing process, like a FastCGI server. For example it could make sense to restart a CLISP running a FastCGI when the heap is becoming too big.
2007-09-06 16:16:27 UTC in CLISP - an ANSI Common Lisp
-
The typical scenario is to restart from scratch and (load "foo.lisp") again. For example, a missing parenthesis makes obviously (load "foo.lisp") fail in the middle of several definitions...
Such a function (IIRC Scheme48 had something similar) would avoid the user to kill the lisp or slime buffer.
Regards.
2007-09-06 16:13:29 UTC in CLISP - an ANSI Common Lisp
-
This would specially be useful from an *inferior-lisp* buffer in Emacs (M-x run-lisp)
A primitive, maybe (ext:restart) which re-start the entire Lisp process; on Unix it could just execvp the initial program arguments (as seen by the main() entry point of the Clisp interpreter).
If the idea sounds interesting to someone, I might perhaps be able to submit a patch.
If it already exists, I...
2007-09-06 15:32:39 UTC in CLISP - an ANSI Common Lisp
-
for the ling project on CVS, I repeatedly get (I am a
registered developer of this project)
cvs -z2 update
cvs server: Updating Common
cvs server: Updating DebugEngine
cvs server: Updating DwarfLib
cvs [server aborted]: EOF while looking for end of
string in RCS file
/cvsroot/ling/ling/DwarfLib/AbbrevTable.h,v
This error is repeatable (and happened since more than
2 weeks).
2004-02-15 10:51:08 UTC in SourceForge.net
-
bstarynk committed patchset 420 of module PoesiaSoft to the POESIA (Internet content filter) CVS repository, changing 1 files.
2004-02-05 22:17:50 UTC in POESIA (Internet content filter)