
Christian Schafmeister writes:
Hey Markus,
You will have a better debugging experience if you use Slime.
We should talk and Ill give you a better update as to where Clasp is wrt optimization and debugging. Its kind of a complex picture that is changing rapidly. In a nutshell:
1) Im incorporating inlining and a new compiler as we speak and this should produce a large improvement in performance.
hi chris, so having 2 compilers floating around does create the puzzle of where exactly improvements should be made. i should probably pick something to do that will survive the transition from one compiler to the other...
2) The debugging experience is mixed and should be improved soon. Im incorporating a new compiler but it generates no debugging information at the moment. Im adding DWARF debugging support so that we can debug using gdb or lldb.
i know nothing about dwarves, but if such debug info could be used on the lisp side as well, maybe i should study that a bit. (though it will probably take me quite a bit of time to digest. i don't want to prevent other people from investigating this as well.)
3) On freenode there is a #clasp chatroom - could you drop in and I can update you on where things are?
quite frankly, i have no idea how to use irc chat. i did use firefox to visit the freenode website, and i seem to have joined #clasp, but i don't know how i would type anything, it does not do anything for me, and i don't see any activity. maybe it is also getting late on the east coast. anyways, my cultural preference generally is towards "traditional" email and mailing-lists, that are properly archived, and where communication is asynchronous. i would think explanations regarding what glue holds clasp together these days would be of broad interest on the mailing list too, instead of just the presumably ephemeral irc channel. -- -- Regards Markus Krummenacker
Best,
.Chris.
On Jun 14, 2015, at 5:17 PM, Markus Krummenacker <kr@AI.SRI.COM> wrote:
after a few more hickups, i finally succeeded in building clasp, on linux.
one thing i wonder is how to get a stack backtrace, if there is a break. just interacting at the prompt just seems to return to the prompt, flushing the error, like this:
(+ 2 'b)
Debugger received error of type: SIMPLE-TYPE-ERROR In lisp_errorUnexpectedType ../../src/core/foundation.cc line 163 COMMON-LISP:TYPE-ERROR :initializers (:DATUM B :EXPECTED-TYPE COMMON-LISP:NUMBER )
Error flushed.
that'll make it difficult to get to the bottom of various issues.
also, drmeister, you wanted me to look into speeding up clasp. but i'll need some pointers on how to get started on this.
it would be good if there were a rough "how to optimize" guide available. is there a worked out example for me to look at ? which function/file ?
and could you please assign one of those open tasks to me ? it will probably take some time for me to chew on, but i'd prefer to work on something that doesn't duplicate what other people might be working on.
thanks.
-- -- Regards Markus Krummenacker