I was brainstorming, and reaching out to any other possible graphics/game
devs that might also be interested in using  PicoLisp. For me, I know what
I want. I want to be able to code my game in PicoLisp, and run it as is on
my Linux box. I would only require a minimal game framework, which would
just setup the main loop, set a cap on fps (frames per second) and make fps
consistent, along with a a way to handle game resources like sprite sheets
or maps (basically one big graphics file with all of your sprites, and you
just index the position of a small square/rectangle on the sheet), handle
collisions, simple physics, later add AI, and event handling. All that
being said, there are C libs that already do this like SDL2, SFML,
Allegro5, etc... They handle input, graphics, sound, networking and maybe
scenes or entities (PicoLisp's database would work great here). So my basic
question was do we wrap those libraries, and still write the core logic of
the game in PicoLisp, and custom write anything not wrapped?

HTML5, JS and family come into the picture when you want to distribute or
share your game. Distribution is king, and sadly it is asking too much to
have a basic user/player to install PicoLisp so they can play your game,
unless you can package it and make it one-clickable like Love2D ( Love2D is small, programmed in LUA, but is on top of
SDL and other libraries, which can be packed with the Love2D executeable.
It is portable to Windows, Linux, Mac, iOS, and Android. A lot of game
jammers use it. Creating a clone of Love2D in PicoLisp would be ideal, but
I don't think you would want to build all of those libs in PicoLisp. Well,
you would, but we're talking many man-years of work. You do have OpenGL
binding already, and networking (for multiplayer), so maybe it's simply
adding input, sound, and collison detection. Basic collision detection
would also be needed right away, but simple physics (could also wrap Box2D
physics engine like Love2D), and AI could be added later.

I too, am no expert on game engines or frameworks, so forgive me if I step
the wrong way. I am researching and hoping to have a more coherent plan
soon. Of course, I would like it PicoLisp all the way down, not turtles ;)
But it requires a lot of time, which is why I throw things out like
leveraging an existing OpenGL or other GUI toolkit to make pretty
interfaces. I am not designer, but look at some minimal GUI toolkits that
run on top of OpenGL or SDL2 like


On 19 April 2016 at 16:20, Alexander Burger <> wrote:

> On Tue, Apr 19, 2016 at 11:29:13AM +0700, Robert Herman wrote:
> > What does Alex and everyone else think about implementing a game engine
> > from scratch, wrapping a few libraries, or wrapping an entire JS game
> > framework?
> This indeed very hard to say. All options are possible, but the decision
> depends on the goal and how close existing stuff is to it.
> I don't know any game libraries or frameworks. What would be the task of
> PicoLisp in such a project? Using the database to model the game world?
> > And for a stretch, is there anyway to generate C to be compiled into llvm
> > bytecode with llvm-gcc or clang? Or am I missing something, and we can
> > somehow make a PicoLisp to llvm module,
> For which purpose? What C would you "generate", and what is the role of
> LLVM then?
> > so we can generate JS with
> > emscripten? I can see programming a pure PicoLisp game engine, and then
> > running it in the browser after it has been translated to JS.
> I see not much benefit to write something in PicoLisp and then translate
> it to JS. You lose all advantages of PicoLisp, so that writing it
> directly in JS is a lot better.
> ♪♫ Alex
> --

Reply via email to