Honestly, this is not at all hard.

But J does not build on cygwin, and I've never puzzled out how to
build it under visual studio, and it's going to be a few weeks yet
before I take the time to get access to another build environment.  I
have been tempted to rip out the entire SYS= design, and build
something that provides individual platform-specific features as
simple macros, but I've not had the time nor energy to do that.  In
part, since I can't build a working system as it is right now, I do
not currently have the ability to tell if a change breaks a test.
Anyways... next year...

Anyways, as an example of how this could be done:

If you modified J so that it has something like " J starts here: "
followed by a statically defined null pointer, you can have the
startup check if that pointer is null.  If it is not null, it can be
interpreted as a length followed by a pointer to a string which would
be an argument to 3!:2, which can be set to the value of a variable
(perhaps DATA), and if the first element of that DATA is a string it
can be evaluated using 0!:0.

That's a data structure and two statements protected by two if
conditions.  And once you have that, you can copy jconsole, append an
appropriate result from 3!:1 and update the pointer and length
embedded in that jconsole and you have an arbitrarily complex
executable which executes whatever j script you want, along with
whatever packaged data you want.

Anyways, it's really not all that hard.

Other than building J in the first place, I mean...

-- 
Raul

On Mon, Dec 24, 2012 at 10:36 AM, Dan Bron <[email protected]> wrote:
> I agree with your analysis (though rather than "vestigial", I'd say J's 
> ability to build a standalone app is "mythical": it makes a great story, but 
> it never really existed).
>
> With that said, if the article really seeks to determine "can you build a 
> desktop application to distribute your work?", I'd suggest that that 
> question, and our answer, are increasingly irrelevant. So we really don't 
> have to worry about it too much.
>
> The age of Software as a Service is here. Dumb clients, smart servers. J will 
> provide the smart part.  Web app (or mobile app) frameworks, which are 
> plentiful, will provide the dumb part (or, phrased more positively: the 
> pretty face in front of the great brains).
>
> -Dan
>
>
> On Dec 23, 2012, at 10:14 PM, Ian Clark <[email protected]> wrote:
>
>> My question was rhetorical. At least I hoped it was, and I wasn't
>> overlooking something. In fact I'm sorry I asked it -- at least in
>> this forum and not in Chat as I was going to.
>>
>> Speaking for myself I'd have no problem building a standalone app for
>> either Mac or Windows that used J "under the covers". Even if I
>> couldn't, I'm not sure it would bother me that much -- there are
>> plenty of ways round. But Wikipedia is a shop-window, often a one-stop
>> shop, when it comes to IT professionals or educated laypersons trying
>> to find out more about a language or software product they've heard
>> about. I'm simply concerned to get the story right.
>>
>> As I see it, the box in the table under consideration tries to answer
>> the question: what sort of support does J give for building a
>> recognisably professional application for sale or distribution? AFAICS
>> the correct answer in the light of posts on this thread is: vestigial.
>> Dose anyone disagree?
>>
>> There is little scope provided to answer further questions like "So
>> What?" or "Does it matter to you?" or "How do we fix it?". Though
>> there *is* scope for a brief comment or a pertinent link.
>>
>> On Sun, Dec 23, 2012 at 10:07 PM, Björn Helgason <[email protected]> wrote:
>>> It should be easy enough to let some  compiler create a .exe file which
>>> could call j.exe and some script(s) like you do in a .bat file and the like
>>> depending on the environment.
>>>
>>> In linus this is less of an issue.
>>>
>>> I agree with you that it would be good to have a button to press that could
>>> create a .bat and possibly .exe with the text t.exe script
>>>
>>> I am not sure if it is less of an issue now or not.
>>>
>>> 2012/12/23 Ian Clark <[email protected]>
>>>
>>>> Terminological confusion...?
>>>>
>>>> By "standalone executable" it would seem the article means .exe or
>>>> .com in Windows, .app in MacOS. Not an all-in-one .ijs file that needs
>>>> j.exe (say) to run it.
>>>>
>>>> In the column titled: "standalone executables creation support", the
>>>> word "executables" is a link to the article:
>>>>  http://en.wikipedia.org/wiki/Executable
>>>> which makes it clear what is meant.
>>>>
>>>> Is there a button you can click and a standalone .app (or .exe) gets
>>>> generated -- as is the case with VB, say? I've not come across one in
>>>> JGTK.
>>>>
>>>> On Sun, Dec 23, 2012 at 2:3
> ----------------------------------------------------------------------
> 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