[fluxus] 0.12b1 + cvs merge

Dave Griffiths dave at pawfal.org
Fri Jan 12 07:49:50 PST 2007


> Dave Griffiths wrote:
>>> and fluxus works!
>>
>> fantastic! I'll be able to apply your patch, a lot of the fixes you
>> found
>> are in cvs already. do you want cvs access?
>
> If you were to give me CVS access, I'd commit fixes for bugs that affect
> me (but those fixes might break non-Gentoo), and maybe documentation
> related stuff.
>
> (in the list below, - and + are from Fluxus' point of view)

...

> - I've got into Haskell, which makes Scheme seem painful

it's ok, you don't have to pledge allegiance to the flag of lambda :) it
would just be easier for you if you wanted to hack fluxus.

there is a lot of C++ though...

> How language-agnostic is Fluxus' core?

libfluxus is completely agnostic, and that is where all the useful
graphics code is. I was using libfluxus for a while as an engine for a
game I was writing entirely in C++ a few years ago.

Basically there is one renderer object which has functions for setting all
the global state (blur, clear colour etc) a stack of state objects which
is used to keep the current, and per render primitive state (transform,
colour, hints etc). All the primitives are seperate from the renderer, and
have a common interface. The ode part is a seperate object which controls
primitives it's given.

Now the disclaimers - The renderer object API is a little "evolved", and
has too many methods now. There are also a few things lying around that
are either half finished features yet to be completed (shadow casting) or
old things not used anymore. Cleaning that up is next on the spring clean
plans.

I don't think I'd want any more language bindings in the main fluxus cvs -
but I briefly had a python version working, it's not hard to do, and I'd
be very happy to support the core graphics functions for other projects
using libfluxus. We could put a new target in to install it as a dynamic
lib.

> In hsext [2] I call C functions from Haskell and call Haskell functions
> from C, both directions using the C ABI.  Haskell has a mechanism for
> wrapping a Haskell function into a C function pointer at runtime, if
> Scheme has something like this and Fluxus uses this to call Scheme code,
> it should be (relatively) easy to add Haskell support.

I don't know haskell at all, but I think it would be easier to go direct
to libfluxus than worry about the scheme interface.

> [1] Here's a thingy I made using Haskell + OpenGL + my nD stuff:
> http://claudiusmaximus.goto10.org/files/coding/polytopiary/cube-4d-01.gif

cool - is the code anywhere for curious eyes? :)

cheers,

dave




More information about the Fluxus mailing list