When I look at lib sim.l for instance, it has a genetic algorithm snippet,
and some other related, or not-related functions. What is the origin or
specific use case for sim.l?

Game frameworks always have keyboard input for movement (WASD keys, arrows,
space, etc... think Asteroids). I have avoided web programming even though
I have done some in the past, so I am even further afield with HTML5
canvas. I like webgl and web audio though. I usually use desktop
gameframeworks that usually use SDL lib for graphic, audio, and input
devices. Is there a wrapper for it in picoLIsp?

You may want to look at the game engines or babylonjs for
examples of how they handle things you may want to do in picoLisp.

I would be happy with a basic framework, and wrappers for webgl and web
audio. You could do a lot with just those, 3D and 2D and great music.

I'll try running some stress tests with the way canvas is now with picoLisp
to see if it can stay at 24 to 30 fps with lots going on. I am busy the
next few days, so I'll get back to you when I can. I would love to stay on
this even after the Spring LGJ to bring gaming to picoLisp! I have even
thought of using it as a scripting language inside of a simple C framework
called Corange, and building from there. All for fun of course!

Distribution for the any game jam, the simpler the better. That's why I
started looking back to the HTML stuff again. Easy to distribute and plays
on anything with a browser. I am still not sure how picoLisp could work
here. Love2D is a popular platform to code 2D games in, in Lua. You can
wrap up your game and the Love2D engine, so nobody needs to download or
install a piece of software, just your game as a .zip that unzips to an
exe on Windows, or LInux.


On 17 April 2016 at 01:40, Alexander Burger <> wrote:

> On Sun, Apr 17, 2016 at 12:20:42AM +0700, Robert Herman wrote:
> > That did it, Alex. Now onto looking at the libs to see what has been
> > implemented in HTML5 Canvas.
> Good. The function list can be easily extended if necessary.
> One important issue needs still be decided: Do you need key events in
> the game? Currently, @lib/canvas.l supports mouse- and touch-events
> (click, double-click and drag), but no key-events.
> They would be trivial to implement: Just add a handler for keydown, and
> pass the key to 'drawCanvas' as a transient symbol in the third argument
> (where a number encodes the mouse-events).
> The problem is another one: A canvas does normally not receive keyboard
> focus (though it may be possible to force it by setting the "tabindex"
> and "contentEditable" attributes), and I'm not sure if this is the right
> way in a browser. It is of course also always possible to set the
> keyboard focus to some input field and process the keys there. How do
> other games handle this?
> > Any ideas on the maximum amount of entities, and what type, can be
> rendered
> > with picoLisp?
> There is no maximum. It may be thousands, see for example
> The question however is how many can be handled at the required speed. I
> have no exact info about that.
> > Most importantly, how could I package the final picoLisp/HTML5 game for
> > folks that don't have or want to install picoLisp?
> If a single TGZ is OK, then it is easy. Just install a local PicoLisp
> together with the whole app in a single directory (all references with
> relative path names), and pack that into a tarball. It can be unpacked
> on any equivalent machine in an arbitrary location. Would that suffice?
> ♪♫ Alex
> --

Reply via email to