freenode/#shirakumo - IRC Chatlog
Search
11:52:12
mood_btf
Yup, version 3 seems most sensible. Though I don't really understand what you were thinking with #2, since you'll always need to store the port instances somewhere
11:58:29
Shinmera
Hrm, making this all work with class redefinition and reinitialisation is going to be a bit tricky
11:58:57
Shinmera
since you probably want the ports in the slots retain their identity, but change class in accordance with the slot definition's requirements.
12:05:23
Shinmera
"Any slots indicated by slot-names that are still unbound at this point are initialized according to their :initform forms. For any such slot that has an :initform form, that form is evaluated in the lexical environment of its defining defclass form and the result is stored into the slot."
12:05:39
Shinmera
How in the world are you supposed to be able to do that if you're not the implementation?
12:10:28
Shinmera
I mean, I guess you could capture the environment by wrapping the defclass and then use it, but I don't know if doing that is even allowed
12:23:22
gingerale
Is there a preferred syntax for constants made with defconstant? Like how defvar often has *asterisks*
12:24:30
mood_btf
I use +plus+ for things that should be treated as constant, but I normally use defparameter to actually define them
12:24:35
gingerale
I see no other way for defining a CL side of #define BGFX_PCI_ID_NONE UINT16_C(0x0000) //!< Autoselect adapter.
12:25:27
gingerale
But how would someone using this binding know what variable to pass the bgfx_init?
12:26:34
gingerale
The default value of bgfx_init is BGFX_PCI_ID_NONE on C++ API. And I want to make the lisp side bgfx-init function to reflect this.
12:28:23
mood_btf
Shinmera: As for that "...evaluated in the lexical environment...", I think DEFCLASS could do it without implementation-specifics by just wrapping the form in a lambda. couldn't it? Though I'm not sure what kind of access the MOP offers to the initform
12:30:54
Shinmera
There's also slot-definition-initfunction, but the mop is weird on its definition:
12:31:00
Shinmera
"Returns the initialization function of slot. This value is either a function of no arguments, or nil, indicating that the slot has no initialization function. This is the defaulted value of the :initfunction initialization argument that was associated with the slot definition metaobject during initialization."
12:31:19
Shinmera
"Returns the initialization form of slot. This can be any form. This is the defaulted value of the :initform initialization argument that was associated with the slot definition metaobject during initialization. When slot has no initialization form, the value returned is unspecified (however, slot-definition-initfunction is guaranteed to return nil)."
12:31:37
Shinmera
which seems to imply that slot-definition-initfunction does have something to do with initform, contrary to how I parse the initfunction's own definition
13:05:00
Shinmera
the way this is currently done now with port instances sitting in the class slots, which then have a connections' slot
13:05:24
Shinmera
when you use an accessor or slot-value on the node you get the port back rather than the connections inside the port
13:06:35
Shinmera
But that would have to distinguish whether I want the port or the port's connections.
14:31:25
gingerale
Alright, looks like the issue was with the renderer type. If I switch from opengl to noop it works fine.
14:42:08
Shinmera
Well, probably because context creation is highly platform dependent and pretty much forces you to use a library to do it for you
15:14:56
Shinmera
if it expects the struct by value then, yeah, you need (:struct foo) and cffi-libffi.
15:19:25
gingerale
It looked like something I could learn CFFI with and I want to get it to actually work so I can forget about it.
15:20:36
Shinmera
If you're looking for GUI stuff, https://github.com/vurtun/nuklear might have been another possibility.
15:20:37
Colleen
https://github.com/vurtun/n... Website (HTML), Title: GitHub - vurtun/nuklear: A single-header ANSI C gui library
15:20:39
gingerale
By the way, how do I define a struct field to be a function? Thus far I've just set it as :pointer but I'm not sure if that's correct.
15:30:37
gingerale
By the way, how do I go back and forth a to a word break? Like how ctrl + left/right usually works
15:34:08
mood
C-M-f and C-M-b for moving back and forth between s-expressions, which is also very useful
15:34:57
mood
Heh, I always configure window managers not to use the alt key, because so many applications use it instead
16:25:43
Shinmera
mood: I can't reach the super key without breaking my fingers, so alt is the only way to go
16:37:07
Shinmera
I'm on a deadline after all; need to get this, the sound system, and the Radiance cleanup done within three weeks.
16:47:49
Shinmera
because here's the thing: the gods want you to get to work on my software projects right away
16:52:20
Shinmera
Actually instead of fucking around here you could add some more features to Maiden's silly module.
17:34:03
darthmatch
shinmera: i pushed the missing changes. however I had no compilations problems with my previous commit so please double check that it works now
17:50:18
Shinmera
I've been confused about the proper naming of a Qt method a couple times in the past. I always extracted it myself from the *qmethods* internal storage, like a dumbass.