[Cuis] 4.1 to 4.2 migration question
Phil (list)
pbpublist at gmail.com
Mon Feb 16 22:09:30 CST 2015
On Mon, 2015-02-16 at 19:26 -0800, Casey Ransberger wrote:
> What is self parserClass expected to answer when one happens to be an
> instance of OGLExtManager?
>
In Cuis 4.1 it answers with Parser
>
> This *is* interesting. Is that Igor's generated code? Stasenko, he
> might be someone who'd know what was supposed to be going on here.
> Odds are, if we can figure out what sort of parser is supposed to be
> answered, we can make it work in Cuis.
>
I think it predates Igor's stuff (isn't his all that newfangled
NativeBoost stuff or am I thinking of something else?). This package
was based on some old Squeak FFI-based packages that I managed to track
down ~5 years ago IIRC (before that I had a hacky extract from an old
Croquet image.. it was ugly)
> I'm interested in this stuff myself, because Cuis would be a great
> platform to make games on if we had some solid support for OpenGL,
> mainly because it wastes less time on the Morphic loop than the other
> dialects.
>
I've had OpenGL running in Cuis since 1.0 (OK, maybe not 1.0, but pretty
sure it was early 1.x :-)
>
> --C
>
> On Mon, Feb 16, 2015 at 7:15 PM, Phil (list) <pbpublist at gmail.com>
> wrote:
> On Mon, 2015-02-16 at 18:49 -0800, Casey Ransberger wrote:
> > I think parserClass was there to give everyone a hook to
> implement
> > their own parsers, because Smalltalk was (in part) a prog
> language
> > research platform. Given that Cuis aims to be a minimal
> system,
> > someone may have removed it as unnecessary. Also, when Juan
> changes
> > some critical behavior, he tends to prefer coming up with a
> new name
> > for the method and associated variables, so that folks with
> existing
> > code aren't confused when their dependencies start behaving
> in
> > unexpected ways; this might also be what happened.
>
> I'm fine with it being removed... just wanted to understand
> why it was
> removed. I know there's been a lot of cog/compiler/vm stuff
> going on
> recently that I haven't kept up on so thought I'd check in
> before just
> making the minimal changes to get it working again if
> something bigger
> is going on.
>
> > It would be interesting to look at what wants to refer to
> parserClass.
> > Could be one of those packages is doing something very, very
> > interesting:)
> >
> >
> It's from OGLExtManager...
>
> forwardExtMethod: aSelector
> "Compile a forwarder method in OpenGL"
> | code parser fwdCode |
> code := self class sourceCodeAt: aSelector.
> parser := self parserClass new.
> parser parseSelector: code.
> code := code copyFrom: 1 to: (parser endOfLastToken
> min: code size).
> fwdCode := String streamContents:[:s|
> s nextPutAll: code.
> s newLineTab: 1; nextPutAll: '"This method was
> automatically
> generated"'.
> s newLineTab: 1; nextPutAll: '^glExt ';
> nextPutAll: code.
> ].
> (OpenGL sourceCodeAt: aSelector ifAbsent:['']) =
> fwdCode
> ifTrue:[^self]. "no change"
> OpenGL compile: fwdCode classified: (self class
> organization
> categoryOfElement: aSelector).
>
>
>
>
> _______________________________________________
> Cuis mailing list
> Cuis at jvuletich.org
> http://jvuletich.org/mailman/listinfo/cuis_jvuletich.org
>
>
>
> _______________________________________________
> Cuis mailing list
> Cuis at jvuletich.org
> http://jvuletich.org/mailman/listinfo/cuis_jvuletich.org
More information about the Cuis
mailing list