freenode/#clasp - IRC Chatlog
Search
15:27:51
drmeister
Yeah - so I'll probably never make a single DNA origami - but it would tickle me to no end to have the entire DNA origami community use Cando to design them.
15:57:01
Bike
i recompile part of thecompiler,then compile something else,and somehow this is a crash
15:58:35
drmeister
We could turn on the memory guards, switch to the workbench and conditionally turn on inlining.
15:59:18
drmeister
That's what I would do - get a stable environment to work from and then start torturing the code that is giving us problems.
16:02:49
drmeister
To debug those I wrote a dtrace script that dumps a backtrace for every invocation of __cxa_throw or __cxa_rethrow.
16:02:52
dvssa
drmeister: Unfortunate about the flight, I was also hoping it would be in San Fran, I've always wanted to go. w.r.t the DNA origami that would be quite the achievement, hopefully they arn't as scared of learning lisp as most are.
16:05:00
drmeister
When you are running clasp - in a separate window run: ./profile_throw <pid-of-clasp> /tmp/throw.user_stack
16:05:22
drmeister
Then when it crashes you can go to the last backtrace and see what was on the stack when the unhandled exception was thrown.
16:06:10
drmeister
It might be something stupid like a boost::format with the wrong number of arguments and boost::format is crashing intermittently - I've seen that happen.
16:08:23
drmeister
dvssa: I'm getting push back from chemistry colleagues about learning anything new. Programming terrifies people. So I'm going to have them use a simple scripting grammar for those who don't want to deal with anything that looks like programming. If they want to do something more sophisticated - Common Lisp or C++ will be there.
16:08:25
dvssa
drmeister: So you want to go the DSL route? But half the fun is learning Common Lisp ;)
16:09:31
drmeister
Language means loops and conditionals and stuff - that's what Common Lisp is there for.
16:09:57
Bike
my src/profiler directory does not seem to have anything called profile_throw, in either dev or cst.
16:10:46
drmeister
There are plenty of programming languages for beginners - we have one for wizards.
16:12:05
drmeister
Wait - no - it's here: https://github.com/clasp-developers/clasp/blob/dev/src/profiler/scripts/profile_throw
16:13:24
drmeister
We need to get more comfortable with dtrace - and incorporate it into our thinking about debugging. It is an amazing tool that makes easy things that are really hard without it.
16:17:08
drmeister
Michele said I should check something with you about your summer employment situation.
16:17:58
drmeister
And I sent an email to the provost thanking them for approving your travel grant.
16:18:42
drmeister
I can't get dtrace to work with iclasp-boehm - that is a frustration. It works great with cclasp-boehm.
16:34:03
drmeister
cracauer: Are you online? Do you ever generate backtraces with dtrace? The output is full of stack frames followed by a number. Does that number mean the number of identical backtraces that were generated sequentially?
16:42:30
Selwyn
@drmeister the availability of the scipy/numpy stack lulls many scientists into a state of complacency regarding programming i think. regrettable but not easy to fix
16:43:11
Selwyn
i am attempting to port 'gsll' to clasp starting from this https://common-lisp.net/project/gsll/
16:43:49
Bike
the stack has cc_landingpadUnwindMatchFrameElseRethrow,then __cxa_rethrow, then __terminate
16:43:50
drmeister
And what scipy and numpy do is somewhat make up for the intolerably slow performance of loops in Python.
16:44:25
drmeister
Bike: Ok, that's our problem - there is an UNWIND that is not finding its target.
17:07:24
drmeister
Clasp has lots of support for weak pointers - I used to use them a lot - but not much these days.
17:08:21
drmeister
They are supported with both garbage collectors. The Common Lisp interface is identical. The underlying machinery is quite different.
17:10:08
drmeister
Currently there is only a weak-key-strong-value hash table - but others are possible
17:11:07
Selwyn
i am thinking of porting trivial-garbage, which is a portable library for manipulating weak pointers and other things. it is a dependency of GSLL.
17:14:40
drmeister
Clasp has finalizers now - you could finish clasp support for trivial-garbage by adding finalizers if you have time.
17:52:42
phoe
drmeister: goodness, this progress that you mention looks like you have reinvented abacus
19:47:33
frgo
Yeah - I had a different association when I looked at that structure: https://www.youtube.com/watch?v=de_0vcAEjhE - I do have such an antenna in my garden behind the house ... Shows that I am a ham radio operator. ;-)
19:51:48
Bike
subtypep is defined including (when (eq t1 t2) (return-from subtypep (values t t))) on top, but (subtypep t t) conses
19:52:10
Bike
a similar (defun foo (t1 t2 &optional env) (when (eq t1 t2) (return-from foo (values t t)))) does not
20:09:36
Kevslinger
drmeister: I was at a Neuroscience poster session today, and the only computer-literate person I could find uses R as their scientific programming language of choice.
20:09:57
Kevslinger
It took everything I had to hold myself from shuddering in fear of the molasses-level efficiency.
20:13:59
Kevslinger
I'm helping a neuroscience lab with automating their image analysis processes, which is why I was there.
20:14:34
Shinmera
Sure, just sayin', you can't really expect biology and medicine people to be programmers.
21:41:37
kpoeck
I did my first parallel build. Seems to take 60 minutes less! 90 min instead of 150 min for a distclean configure build_cboehm build!