Hmm, interesting, but games usually involve much state and changes to keep 
up their worlds alive.. how do you abstract over this? For example, if you 
need to move something, then surely you will call for a change.. right 
inside the user code that happens all the time.. isn't it so? Just 
interested in how do you develop the functional philosophy to a really 
usable extent.. I cannot imagine how to avoid changing Vector3f elements at 
runtime.. or maybe you just pass the whole changed app-state to each new 
cycle?

As far as I see, Jonathan and I, too create the wrappers as a side-effect 
of a personal project. I just think that maybe it is possible to factor out 
and assemble the code to a separate library and if you need something in 
your project, you implement it straight to the library and commit. Of 
course that would require a kind of coordination like never before, but it 
is a real FTW and is prone to benifits like finding something you wanted to 
have already being implemented by someone!


четверг, 2 мая 2013 г., 2:14:36 UTC+4 пользователь James Reeves написал:
>
> On 1 May 2013 21:08, Alex Fowler <alex.m...@gmail.com <javascript:>>wrote:
>
>> So, inspired by the latest talks with locals, I propose starting a 
>> collective initiative on creating a full-scale wrapper for JME3.
>>
>> Actually, I am starting to write my Clojure project with JME3 and I feel 
>> like in a desperate need for a clojuric wrapper. So I started implementing 
>> wrappers for Material, Texture, Geometry and so on.. but I think that that 
>> code would be rather universal and there is no point for it to belong to a 
>> personal project. So I think that we might start a community library 
>> project on this with those who is interested. Besides that, I think that I 
>> am a rather newb in Clojure and if I do that on my own, I will not do it as 
>> good as possible :D Is somebody interested in that?
>>
>
> I have a bunch of code for a game I'm working on, but I've taken a 
> slightly different approach to the problem than other people seem to have 
> so far.
>
> When you develop in a functional language like Clojure, you typically want 
> to quarantine all behaviour related to I/O, and avoid touching any mutable 
> values directly. In Ring, for instance, we limit the interaction with the 
> underlying servlet classes to a single function: the adapter.
>
> For jME3, I've been pursuing a similar approach. Essentially I'm aiming 
> for this:
>
>   (run-app (atom initial-app-data))
>
> The only point of contact between the jME3 classes and the logic in 
> Clojure will be that single function. Everything else will happen through 
> modifying reference to a data structure.
>
>  Right now I've got it working with geometries, textures, a simple HUD, 
> events, very limited physics, collisions, and I'm currently writing an 
> interface to NiftyGUI (which isn't easy, as it's not very well designed).
>
> The work I've done on this so far is part of a game, but could potentially 
> be factored out. Currently it's very much a work in progress, and I expect 
> it to take several months before I have anything useful outside of my 
> use-case.
>
> - James
>

-- 
-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to