Hi Paulo, Interesting blog, I haven't seen that before. I knew the deal about Naughty Dog, though. If you do a search on Gamasutra.com, you can find a large postmortem on Jax and Daxter, information is available on what good and bad sides their lisp system GOAL had. I am still hoping that some people here, have some experiences that they would like to share? Cheers, Gorm On Wed, 2009-10-21 at 23:53 +0200, Paulo Pinto wrote: > Hi, > > although not directly related to your question, this might be of > interest to you. > > Abuse is a well known game where Lisp was used: > > http://en.wikipedia.org/wiki/Abuse_%28video_game%29 > http://abuse.zoy.org/ > > While googling for Lisp Games, I found the following blog > http://lispgamesdev.blogspot.com/ > > Crash Bandicot also used Lisp: > > http://www.franz.com/success/customer_apps/animation_graphics/naughtydog.lhtml > > Cheers, > Paulo > > On Wed, Oct 21, 2009 at 10:53 PM, gorm <gorm@xxxxxx> wrote: > Hi People, > > Being a bit of a lurker on this forum, I thought all the chat > about > designing a language in the Daydreaming thread, would be a > perfect > opportunity to talk about a project of mine. > > I am big fan of functional languages. In my last game company, > 3 Lives > Left, we used OCaml quite a bit. A problem was that there > isn't that > many game development libraries out for OCaml out there, so we > ended up > writing our own FFI layer for OGRE, SDL, etc. There exists > automatic FFI > generators like SWIG, but it doesn't really pass advanced C++ > code very > well (like that in OGRE) and the interfaces it generates seem > quite > heavy. > > The problem with the approach above is that it does not work > very well > across platforms, especially when it comes to more > embedded(like) > platforms such as the iPhone, PSP Go, XBox 360, etc. > > Since then, having worked a bit with lisp, I have become a big > fan of > "interactive programming". Nothing beats developing or > debugging a > programming while it is actually running. > > So the new idea is to build a small, and very tiny C++ game > and > interpreter engine around a lisp interpreter. I am using the > boost::spirit libraries for parsing, and it seems to work > quite well. > The basic idea is to have as much engine and game logic > written in my > lisp variant. > > Now, my fundamental problem is how to design a good interop > (or ffi) > layer? Ie. how do I design an easily extensible system, where > I don't > have to do a lot of C++ implementation everytime I want to > introduce a > new C++ type that can be reached from lisp? Ie how do I in a > good way > make it possible to create windows, build a physics system, > instantiate > a renderer, detect mouse input, etc in a coherent and clean > manner from > the lisp code? > > I have worked with one such system before, where each C++ type > essentially agregated a scriptable type that acted as a bridge > between > the two domains. Though clever in some ways, the bridge type > had to be > extended with a new method whenever a new method was added to > a > scriptable C++ type, and so forth. > > Any good ideas, links, comments, etc? > > Cheers, > Gorm > > > --------------------- > To unsubscribe go to > http://gameprogrammer.com/mailinglist.html > > > --------------------- To unsubscribe go to http://gameprogrammer.com/mailinglist.html