nomennescio
nomennescio
I'm also noting that in class algebra, meta-classes play an important role, yet are not truly reified. I can find no explicit methods, objects or classes to handle them. Yet...
Similar questions you can pose on `MIXIN:` classes. How are the subclass relationships there? ``` MIXIN: sequence INSTANCE: immutable-sequence sequence ``` but also ``` MIXIN: immutable-sequence INSTANCE: f immutable-sequence INSTANCE:...
[CLOS concepts](https://dreamsongs.com/Files/concepts.pdf) is very insightful as Factor's object model is closely modeled after it. "A class is considered neither a superclass nor a subclass of itself"
I prefer to have Factor act as if multiple instances were possible, to allow for future support of multithreading and/or multiple instances without breaking the interface. Any unsupported action can...
LUA is an example of a language with embedding as one of its goals, check out its API and application here : https://lucasklassmann.com/blog/2019-02-02-how-to-embeddeding-lua-in-c/
TCL is another example of a classic interpreter designed to be embeddable in C programs.
For historic context: Slava's take on it: http://factor-language.blogspot.com/2007/04/embedding-factor-into-c-applications.html
If I disassemble `: ( -- foo ) foo new ;` I get ``` 000001afe8425810: 8905eab7c7fe mov [rip-0x1384816], eax 000001afe8425816: 48b8478fa026b0010000 mov rax, 0x1b026a08f47 000001afe8425820: 4983c608 add r14, 0x8 000001afe8425824:...
I think the issue is primarily about the inconsistency between listener and compiler. But true, you could argue what the expected output should be.
> I have left out one possible expected outcome: that both output `t` because the compiler should optimize creation of slotless tuples, but I will argue that for this use...