guile-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [ANN] gzochi project development release 0.5


From: Thompson, David
Subject: Re: [ANN] gzochi project development release 0.5
Date: Wed, 15 Jan 2014 15:43:26 -0500

On Wed, Jan 15, 2014 at 2:56 PM, Panicz Maciej Godek
<address@hidden> wrote:
> Hi guys!
> Since I'm also an author of a(nother) multimedia framework
> in guile+sdl/opengl called SLAYER, I thought that I might join
> the conversation :)
>
> Perhaps it would make sense to collaborate more and to somehow
> integrate our efforts. It might seem difficult at first, because
> I guess that everyone of us does his work in his spare time,
> and our plans and visions might be vague, but it would be really
> nice if we were able at least to formulate the intersections of our
> goals.

Yes, I agree.

> Mine is to create games that would teach their players programming,
> i.e. to show that some repeatable actions could be automated quite
> easily and naturally with simple scripts, that could later on become
> more complex.
>
> I thought that it would be more motivating if a gameplay was set
> up in a competetive environment, so that the players would easily
> see that even simple programatic enhancements of their user
> interface would give them an advantage over their opponents.
>
> I came up with the idea of a 3d robot sword battle game, where
> the players can come up with new moves for their avatars,
> and even write scripts that would control their robots entirely.
>
> For that reason, SLAYER is equipped with bindings to Open
> Dynamics Engine, and also has a stub of a text editor widget
> (which obiously allows to evaluate lisp expressions in a similar
> way emacs+geiser does ;])
>
> Some time ago, I have also been experimenting with a design
> of a general network architecture, but I eventually dropped it,
> believing that there were some more urgent things to be done.

You could perhaps use gzochi for this now.

> Anyway, the goal is ambitious, and I think that for that reason
> we have a lot in common. There are also some ideas that I
> see in guile-2d and that I truly love and would love to steal,
> but that's impossible, because it's LGPL :)

I guess there is a gap in my understanding of the compatibility
between the GPL and LGPL. I chose the LGPL for 2 reasons: It is the
same license as Guile and there are already a million game libraries
out there that are either proprietary or more liberally licensed so I
also opted for a more liberal license. I could surely grant exceptions
to let you use my code for SLAYER, if necessary.

> I also see that our approach differs in that I have been
> using the GOOPS system extensively for the GUI design
> (which has some advantages, despite its drawbacks, such
> as decreased portability between other Scheme
> implementations)

Ah, I have chosen to not depend on GOOPS in favor of plain old record types.

> One thing that might seem dubious is my decision to keep
> slayer a stand-alone application (rather than guile module).
> It is not a deep decision and could be changed rather easily,
> but as for now it has proven good at some points (namely,
> it gave me a better control over the program behaviour while
> I was creating a Windows port), and a pain-in-the-ass at
> anothers (it's difficult to create slayer applications using the
> emacs+geiser methodology).

Our differing choices is a good example of "embedding vs. extending".
You've probably already read this article
(https://twistedmatrix.com/users/glyph/rant/extendit.html) but it
explains exactly why I prefer to extend.

One of Guile-2d's main goals is to work really nicely with Emacs +
Geiser. I am working on a patch for the Guile 2.0.10 release that will
allow any Guile program that runs an event loop to integrate a REPL
server that doesn't have the multi-threading issues present with the
normal REPL server. So, if you are open to turning SLAYER into a
shared library, I hope that a free REPL server will sweeten the deal.
:)

> Anyway, if any of you thinks that we could cooperate,
> I'm really looking forward to it. I'd also like to hear about
> your goals and ideas, if you're willing to share :)

I would definitely like to cooperate. Perhaps there is a library or
two that we could extract from our projects for everyone to use.

My main goal is to apply the Emacs philosophy to game development. I
want guile-2d to be an easy way to create 2D games interactively using
the REPL with the ideal environment being Emacs + Geiser. Ideally,
guile-2d will remain pure Guile and use the CFFI to call out to other
libraries.

- Dave



reply via email to

[Prev in Thread] Current Thread [Next in Thread]