libera/#clasp - IRC Chatlog
Search
12:25:24
drmeister
The "generator_is_filling(SCREWUP)" is just place holder text for a test source-to-source translation.
12:26:16
drmeister
We have to write a matcher to recognize part of the AST containing bindings that match subexpressions of the AST then you write a function that transforms a match with bindings into the new code.
13:22:24
drmeister
It would be good to do a bunch of similar operations at the same time - like rename a bunch of functions.
13:22:58
drmeister
It takes a while to run on all the source code - and you have to do all the source code in one run.
13:23:26
drmeister
I mean - you can run tests on one file. You need to run tests on one file - writing the matchers is a bit tricky.
13:27:01
drmeister
We use: (:return-stmt (:has-return-value (:integer-literal (:bind :return-val))))
13:35:23
drmeister
What I'd like to do is accumulate transformations that we can reuse and parameterize.
13:35:57
drmeister
I'll start with one to rename _Nil<xxx>() to nil<xxx>() and _Unbound<xxx>() to unbound<xxx>()
13:41:27
yitzi
CLASP doesn't appear to have weak hash maps for values. Is this really hard to support?
14:08:01
Bike
i don't think it's harder than weak key, but we've had issues implementing weak tables generally because of how mps works
14:14:06
yitzi
Well, +1 for weak value hash tables sometime. They'd be useful in my jupyter debugger procotol.
14:16:26
yitzi
The keys are integers in the Debugger Adapter Protocol, so those can't hurt, but the one that is currently need is value. Otherwise I will have to clean up before I invoke a restart.
14:18:50
yitzi
And to be fair, I have been working on this for about a year so it's not like its gonna be done tomorrow.
16:11:11
drmeister
MPS is not buildable anymore - I didn't maintain it. I plan to support boehm and MMTk going forward
16:11:34
drmeister
Weak value hash-tables are possible - you can have hash-tables with weak-pointers as values currently.
16:12:28
drmeister
Is that what happens in weak-value hash tables? When the value disappears the key/value is removed?
16:12:46
Bike
Right. I mean, that should be what happens in weak-key tables too, when the key is unreachable the entry is removed
18:04:11
Bike
lisp-class-tag has a namespace, a package, a name, a class-symbol, a base... can the namespace be different from the package? what is the class symbols? is the name the lisp name or the C++ name and is it qualified?