libera/#shirakumo - IRC Chatlog
Search
11:49:04
hjudt
Shinmera: hi! when i try to (cl:update-all-dists), i can no longer update http://dist.tymoon.eu/shirakumo.txt because of [Condition of type QL-HTTP:TOO-MANY-REDIRECTS]
11:49:44
Colleen
<shinmera> yes, it's a weird ql bug. Please switch to this dist instead http://dist.shirakumo.org/shirakumo/
15:42:49
Colleen
<shinmera> Well heck https://cdn.discordapp.com/attachments/714361338260095067/1115304603634913340/screenshot.png
16:14:55
Colleen
<Grolter> Hi again! I'm trying to compile a game which uses deploy and harmony with ccl, and I'm having some issues.
16:15:52
Colleen
<Grolter> There seems to be a problem in cl-mixed where there is a (defconstant ...) form that is used in the same file, and CCL doesn't seem to apply the effect at compile-time.
16:22:08
Colleen
<Grolter> So about cl-mixed -- I'm not sure, but it seems like CCL's bug in defconstant?
16:25:21
Colleen
<Colleen> Clhs: macro defconstant http://www.lispworks.com/documentation/HyperSpec/Body/m_defcon.htm
16:25:21
Colleen
<Colleen> Clhs: macro defconstant http://www.lispworks.com/documentation/HyperSpec/Body/m_defcon.htm
16:25:25
Colleen
<shinmera> "An implementation may choose to evaluate the value-form at compile time, load time, or both. Therefore, users must ensure that the initial-value can be evaluated at compile time (regardless of whether or not references to name appear in the file) and that it always evaluates to the same value."
16:27:01
Colleen
<Grolter> But it also says "However, the compile-time side effects described below only take place when defconstant appears as a top level form"...
16:27:41
Colleen
<Grolter> Well, it kinda implies that the do take place when it is a top level form
16:28:57
Colleen
<shinmera> eval-when :compile-toplevel forces the evaluation at compile-time, so toplevelness doesn't matter at all.
16:48:19
Colleen
<Grolter> When I do (deploy:define-library cl-opengl-bindings::opengl :dont-deploy t), it is ok
16:50:02
Colleen
<Grolter> But when I try the same with org.shirakumo.fraf.mixed.pulse.cffi:libpulse-simple, it signals an error: Error: The value 0 is not of the expected type (OR PATHNAME STREAM STRING).
17:01:27
Colleen
<shinmera> it's possible ccl's cffi impl is broken and returns 0 instead of NIL somewhere, or something.
17:19:28
Colleen
<Grolter> But now harmony breaks with Error: :NAME is an invalid initarg to INITIALIZE-INSTANCE for #<STANDARD-CLASS ORG.SHIRAKUMO.FRAF.MIXED.PULSE:DRAIN>
17:23:23
karlosz
this week im planning to 1) get static space relocatable 2) try to have the switch at least enter the lisp entry point once that works
17:24:12
karlosz
getting static space relocatable will involve removing some assumptions about how nil is treated on all backends - i got gcc farm machines for all the backends set up at this point
18:38:16
Colleen
<Grolter> About harmony break: it seems that stealth-mixins might not be working well on CCL, but I'm not sure yet
20:33:34
Colleen
<Grolter> Ok, stealth-mixin works fine, but again there is a problem with time of the evaluation. Wrapping stealth-mixin:define-stealth-mixin in eval-always fixes that problem...
20:36:11
Colleen
<Grolter> I get an error "Don't know how to do conditional store to (SLOT-VALUE SERVER 'FREE-BUFFERS)", when you try to do harmony::pop* on (slot-value server 'free-buffers)
20:46:31
Colleen
<Grolter> Is there some way to bypass the fact that harmony uses atomics operations on SLOT-VALUE, but it is not supported?
21:21:35
Colleen
<Grolter> Ok, I think I was able to do it somehow, by creating a %ref struct with a single slot and using it as a container for free-buffers / free-unpackers (only on ccl)
21:24:10
Colleen
<Grolter> Wrapping in (eval-when (:compile-toplevel :load-toplevel :execute) ...) doesn't help, but, weirdly, (asdf:load-system :harmony :force T) does the trick (but ql:quickload doesn't work even after deleting cache fasls)
21:34:40
Colleen
<Grolter> Ah, no, it works after deleting cache fasls. On the other hand, stealth-mixin:add-mixin is called every time, so I don't understand what is going on