I'm not sure that SWIG would be the right way to go, for J.

Reading the docs, and skimming over bits of implementation suggests
that SWIG works on the assumption that the scripting language is
heavily scalar-oriented.

Probably the right way to wrap SDL would be to start with some
important stuff (some initialization and some rendering stuff) and
build cd covers for them. If there's something that "can't be done in
J" (maybe stuff like getting addresses to SDL internals, or getting
sizes of structs), that gets implemented in C.

Would also need to document things - people actually do read
documentation, even when it seems like they don't.

I'm not sure I have the motivation to do this kind of thing - my main
[personal] laptop bricked itself (video driver install failure on a
windows machine - runs in safe mode but attempts to fix the driver
problem "by the book" mean it now blue screens on anything else), and
I'm going to be spending the next few weeks just scavenging stuff that
I was working on. (At the moment, nothing is lost - at least in
principle - but it is disorganized and I can't work on it directly for
maybe a few weeks.) This was not a good time for that for me as my
secondaries have been having problems also ("hard disk" failures - I
guess I should spend more time on resolving those issues...). I'm down
to only using my work laptop at the moment...

But I can supply support for people [like you, maybe - if you want or
need that].

Thanks,

-- 
Raul


On Sun, Jul 5, 2015 at 9:16 AM, Jon Hough <[email protected]> wrote:
> Well, my plan, which I've largely succeeded in implementing is a 
> demonstration application that is written in C/C++ and hooks in to J by 
> libj.so.
> This may not be very interesting for hardened J veterans, but for beginners 
> it may be interesting, especially for anyone wondering if J can be used for 
> game development in any way, to which the answer seems to be a resounding 
> yes, kind of, maybe. Also, it may be of interest to beginners who just wonder 
> how to use libj / j.dll, which is not the easiest thing to figure out.
>
> I developed a demo puzzle game app (using the SDL library) that does pretty 
> much all the logic in J.
> https://github.com/jonghough/CPP2J_Demo
> The game itself is pretty simple and uninteresting, but it's just a demo to 
> see what CAN be done with J. When I was writing it I didn't realize we could 
> feed in entire scripts into libj.so, so I might refactor it later to do that.
> As an aside, rather than doing it the way I did, it would be good if there 
> was a J wrapper for SDL (see pygame for the python wrapper), but it seems to 
> implement that there needs to be a J interface to SWIG, which I don't think 
> exists, and building one is outside my knowledge of J and C++.
> Regards,Jon
>
>> From: [email protected]
>> Date: Sat, 4 Jul 2015 22:05:13 -0400
>> To: [email protected]
>> Subject: Re: [Jprogramming] Feeding multiline verb definitions into JDo
>>
>> The API reference doesn't mention the ability to execute a script
>> since that is a property of the language, and not the api reference
>> itself.
>>
>> So it winds up being (after you have got the session running) a jset
>> followed by a jdo.
>>
>> A trick, though, is that you'll have to use language features (13!:)
>> to support debugging of the code within your application. So that'll
>> be something like jdo("13!:0]1"); to enable debugging, jdo("13!:1''");
>> to get a readable stack trace, and so on...
>>
>> Good luck,
>>
>> --
>> Raul
>>
>> On Sat, Jul 4, 2015 at 9:57 PM, Jon Hough <[email protected]> wrote:
>> > Oh, we can execute an entire script? I did not know that. If this works it 
>> > could make things ... interesting.
>> > Incidentally, the API reference, which is surprisingly tricky to track 
>> > down(I found a version here:  
>> > http://www.jsoftware.com/pipermail/programming/2013-June/032979.html  )
>> > does not seem to mention this. I know there is a j.dll reference somewhere 
>> > in the wiki, but my searches come up with nothing. (I think j6 also has 
>> > some j.dll reference *.ijs scripts, perhaps I should install it).
>> > Anyway, thanks, I will give this a try.
>> >
>> >> From: [email protected]
>> >> Date: Sat, 4 Jul 2015 21:49:11 -0400
>> >> To: [email protected]
>> >> Subject: Re: [Jprogramming] Feeding multiline verb definitions into JDo
>> >>
>> >> It has been a while since I have attempted any such thing, but you can
>> >> also define variables which contain arbitrary text (such as a script),
>> >> and you can execute them using the 0!: family of foreigns.
>> >>
>> >>         JDo('0!:110 script');
>> >>
>> >> That said, note that your biggest issue, when you get to deploying the
>> >> software you develop, will be isolating errors experienced by your
>> >> users. Assuming you wrote decent code, these will typically externally
>> >> induced.
>> >>
>> >> So you might want an option to use 0!:111 or some such? It'll be worth
>> >> going through a few induced errors (permission denied on a file
>> >> reference, for example) *after* you have things working, but before
>> >> you release the code.
>> >>
>> >> Thanks,
>> >>
>> >> --
>> >> Raul
>> >>
>> >>
>> >> On Sat, Jul 4, 2015 at 9:42 PM, Jon Hough <[email protected]> wrote:
>> >> > It seems that when using the j.dll (libj.do) API from another language, 
>> >> > JDo allows the defining of verbs. But I have only managed to define 
>> >> > single line verbs so far. It seems adding LF or even '\n' into the 
>> >> > command string parameter of JDo does not work (in the sense that it 
>> >> > will return an error when using JGetM).
>> >> > Does anyone know if it is possible to do multiline definitions, and if 
>> >> > so how?
>> >> > Thanks,Jon
>> >> > ----------------------------------------------------------------------
>> >> > For information about J forums see http://www.jsoftware.com/forums.htm
>> >> ----------------------------------------------------------------------
>> >> For information about J forums see http://www.jsoftware.com/forums.htm
>> >
>> > ----------------------------------------------------------------------
>> > For information about J forums see http://www.jsoftware.com/forums.htm
>> ----------------------------------------------------------------------
>> For information about J forums see http://www.jsoftware.com/forums.htm
>
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to