freenode/#clasp - IRC Chatlog
Search
14:29:10
beach
What I want to do is to implement the debugger interface that I have planned for SICL, but I want to execute my code inside SBCL. My compiled code needs to interrogate this information to determine whether it runs under the control of the debugger. So I guess you are right. I'll just plan for no information to be present and do nothing then.
14:31:57
beach
I could even do a weak hash table so that the information with a thread will disappear if the thread does.
16:26:11
Bike
a Vec0 is a Vec0_impl, but it has a GCVector as a slot, and then a GCVector has a tagged pointer to a GCVector_moveable. we should work out what we actually need these for
16:35:20
beach
Shinmera: Given a stack frame, is it possible to get to the function object that is executing there?
16:35:25
Shinmera
CI really loses a lot of its value if you can't specify dependencies that should trigger builds.
16:35:50
drmeister
Bike: If you have a class X that contains a Vec0<whatever> I think there is only one level of indirection to the stretchy vector that contains the vector of whatevers
16:36:27
drmeister
There are several classes involved and some of them may be removable - but they don't add any runtime cost.
16:36:38
Bike
drmeister: there are two layers in the code. i don't know if the compiler can eliminate one or what.
16:38:18
Bike
like a Vec0_impl has a field with a GCVector, and a GCVector has a field that's a tagged pointer to a GCVector_moveable
16:42:52
Bike
i think that's actually more indirection than a lisp vector, which just has a GCVector_moveable right off
16:51:09
Shinmera
scymtym: It's one thing that makes me feel like travis is just a waste of my time :^)
16:55:04
scymtym
Shinmera: i think travis is better than nothing, but i agree. for dayjob, i made a tool for setting up interdependent Jenkins jobs for large, heterogeneous software systems which scientists tend to build (it is written in lisp and works for asdf projects among others)
16:55:50
Shinmera
beach: Okey, it looks like that symbol was erroneously still exported from the public interface, but the actual slot had disappeared. I pushed a fix.
16:57:32
stassats
Shinmera: but that information hasn't disappeared from non-compile-filed functions
16:57:56
Shinmera
Anyway, I'm interested in the sense that I wish I'd already have it, but I currently don't have the enthusiasm to get into it. When I do, I'll get back to you.
18:01:29
beach
Also, where is the documentation? I can't find the way to retrieve the function of a particular stack frame.
18:01:33
Shinmera
Sure, I just know some people who do use it in applications, which is why I'm distraught.
19:02:32
drmeister
And with traveling and not getting enough sleep the last two days it's been hard to focus on the fix.
19:04:04
drmeister
The problem I'm working on now is that builtin packages like llvm-sys and gctools weren't set up properly in the first place to use-package COMMON-LISP. So READing lambda-lists in the GCTOOLS package that contain things like &KEY and &OPTIONAL were interning to symbols GCTOOLS::&KEY and GCTOOLS::&OPTIONAL. It took me a while to figure that out.
19:04:30
Bike
https://github.com/clasp-developers/clasp/blob/e2cfcc14e24eb8939d974acc488f4015df90d525/src/core/load.cc#L115-L118 is the basic part of the fix, kpoeck
19:04:39
drmeister
Then I realized that I had two ways of setting up these builtin packages and I started by using the wrong way - so I'm cleaning that up.
19:06:22
drmeister
Shit! Now I have shadowing problems. LLVM-SYS can't trivially use COMMON-LISP because there is an LLVM-SYS:FUNCTION symbol and of course the CL:FUNCTION symbol
19:10:50
drmeister
Do you mean what I said should have started with the cl:function - because it was there first?
19:11:22
stassats
it looks like you're trying to use the CL package after llvm-sys is defined, hence the conflict
19:15:36
Bike
i think llvm-sys:function is a separate class, so it might actually be right to shadow it.
19:36:28
drmeister
My cab driver started yelling at me not to use my phone. Apparently it draws down the lightning.
20:00:21
kpoeck
is now _sym_STARcurrentSourceFileInfoSTAR or _sym_STARcurrentSourcePosInfoSTAR to be set?
20:15:42
Bike
kpoeck: i deleted the former. load-source calls load_stream which does bind the latter.
2:23:02
drmeister
I just learned that my DOE program officer is using what we are doing in the lab as examples of Atomically Precise Manufacturing when he talks with members of Congress.