💾 Archived View for blitter.com › apl-books › APLSE › www.sigapl.org › Archives › waterloo_archive ›… captured on 2022-07-17 at 03:51:51.

View Raw

More Information

-=-=-=-=-=-=-

From owner-jsoftware@lists.interlog.com  Sun Nov 22 10:26:19 1998
From: Bjorn Helgason <gosi@centrum.is>
Subject: Jforum: I-Mac
Date: Sun, 22 Nov 1998 15:12:21 -0000
Content-Type: multipart/mixed; boundary="---- =_NextPart_000_01BE162A.B178BCF0"

------ =_NextPart_000_01BE162A.B178BCF0

I was looking at the I-Mac on an exhibition and it looks like
a very interesting machine.

I was told that it is possible to program it the same way as the
old Macs given you got some emulation program.

As J provided for Macs then I assume that it would be possible
to run it on an I-Mac.

As I have never done any programming on a Mac nor touched
any Mac for many years I am wondering how feasable such a buy is.

Does anyone have experience with J on an I-Mac and willing to
tell how that can be useful?

/Gosi
------ =_NextPart_000_01BE162A.B178BCF0
Content-Type: application/ms-tnef
Content-Transfer-Encoding: base64

eJ8+IisPAQaQCAAEAAAAAAABAAEAAQeQBgAIAAAA5AQAAAAAAADoAAEIgAcAGAAAAElQTS5NaWNy
b3NvZnQgTWFpbC5Ob3RlADEIAQ2ABAACAAAAAgACAAEEkAYAoAEAAAEAAAAQAAAAAwAAMAIAAAAL
AA8OAAAAAAIB/w8BAAAARQAAAAAAAACBKx+kvqMQGZ1uAN0BD1QCAAAAAGZvcnVtQGpzb2Z0d2Fy
ZS5jb20AU01UUABmb3J1bUBqc29mdHdhcmUuY29tAAAAAB4AAjABAAAABQAAAFNNVFAAAAAAHgAD
MAEAAAAUAAAAZm9ydW1AanNvZnR3YXJlLmNvbQADABUMAQAAAAMA/g8GAAAAHgABMAEAAAAWAAAA
J2ZvcnVtQGpzb2Z0d2FyZS5jb20nAAAAAgELMAEAAAAZAAAAU01UUDpGT1JVTUBKU09GVFdBUkUu
Q09NAAAAAAMAADkAAAAACwBAOgEAAAAeAPZfAQAAABQAAABmb3J1bUBqc29mdHdhcmUuY29tAAIB
918BAAAARQAAAAAAAACBKx+kvqMQGZ1uAN0BD1QCAAAAAGZvcnVtQGpzb2Z0d2FyZS5jb20AU01U
UABmb3J1bUBqc29mdHdhcmUuY29tAAAAAAMA/V8BAAAAAwD/XwAAAAACAfYPAQAAAAQAAAAAAAAC
kVcBBIABAAYAAABJLU1hYwCHAQEFgAMADgAAAM4HCwAWAA8ADAAVAAAAJgEBIIADAA4AAADOBwsA
FgAPAAcAAAAAAAwBAQmAAQAhAAAAOTk5MjJGQTkyOTE2QkUxMThDMkQ4MkU0MTZDNDE1RDkAHwcB
A5AGABQFAAAhAAAACwACAAEAAAALACMAAAAAAAMAJgAAAAAACwApAAAAAAADAC4AAAAAAAMANgAA
AAAAQAA5AJBat4AqFr4BHgBwAAEAAAAGAAAASS1NYWMAAAACAXEAAQAAABYAAAABvhYqgDrYpQfS
ghwR0on7AAAAAAAAAAAeAB4MAQAAAAUAAABTTVRQAAAAAB4AHwwBAAAAEAAAAGdvc2lAY2VudHJ1
bS5pcwADAAYQ/SoQ2gMABxCRAQAAHgAIEAEAAABlAAAASVdBU0xPT0tJTkdBVFRIRUktTUFDT05B
TkVYSElCSVRJT05BTkRJVExPT0tTTElLRUFWRVJZSU5URVJFU1RJTkdNQUNISU5FSVdBU1RPTERU
SEFUSVRJU1BPU1NJQkxFVE9QUgAAAAACAQkQAQAAABMCAAAPAgAA7gIAAExaRnV0OB+6AwAKAHJj
cGcxMjUWMgD4C2BuDhAwMzmdAfcgAqQD4wIAY2gKwGBzZXQwIAcTAoB9swqACMggOwlvDjA1AoDZ
CoF1YwBQCwNjAEEPBYIzC6YgSSB3YQQgiQkAb2sLgGcgYQVASHRoZRZALU0A0CAHAiAXIAOgZXho
aWLIaXRpGANkIBiwFqMxFpFpa2UKogqAYSD6dgSQeRlAAjAEkAeQGMDHFwEAwRiAbmUuGiQaJP0W
VHQG8BkwF2AXMRlRBADYIHBvBBAYkGwXgB1QZx5AA2AJwGFtGUIXYnP/H2AXgBZwGtAdIhdwGiQd
YrMXwQQgZ2kaoAOgeQhgNSHQbwVAcwNwF4BlbV51C2AYwx8VHCtBBCBK+R8CdmkBABkwAhAFwSGi
zxdhA6AWUBaAc3UgIR2m9ncIYB1xYheAHlYaJB7h/HJ1A6AZURgEF6MkLhZQmxEAGqAgHAAaoSBk
AiDvF4AAcBrQHxVtFvIYAiGC/yvgBbEdUBRwF3AZMBolLLHPF8Il0gOBGtB5ZRERJqKfH3AnwBkg
BnEXAWhvB+B+ZjBwIAAeoibwEPAtwWLKdRrRcxwrRG8HkSyhtyxiK6MYYHAGcQnwYyAxvxiwMrAl
ICnZGQMD8GwZ4HcXAR7hKNVlN3Axox2jY6sDkSghdREwZiMwPxw6vC9HHmAAoBozEfEAO9AAAwAQ
EAAAAAADABEQAAAAAAMAgBD/////QAAHMHCcN8EpFr4BQAAIMHCcN8EpFr4BCwABgAggBgAAAAAA
wAAAAAAAAEYAAAAAA4UAAAAAAAADAAWACCAGAAAAAADAAAAAAAAARgAAAABShQAAtw0AAB4ABoAI
IAYAAAAAAMAAAAAAAABGAAAAAFSFAAABAAAABAAAADguMAADAAeACCAGAAAAAADAAAAAAAAARgAA
AAABhQAAAAAAAAsAEIAIIAYAAAAAAMAAAAAAAABGAAAAAA6FAAAAAAAAAwARgAggBgAAAAAAwAAA
AAAAAEYAAAAAEIUAAAAAAAADABKACCAGAAAAAADAAAAAAAAARgAAAAARhQAAAAAAAAMAFYAIIAYA
AAAAAMAAAAAAAABGAAAAABiFAAAAAAAAHgAlgAggBgAAAAAAwAAAAAAAAEYAAAAANoUAAAEAAAAB
AAAAAAAAAB4AJoAIIAYAAAAAAMAAAAAAAABGAAAAADeFAAABAAAAAQAAAAAAAAAeACeACCAGAAAA
AADAAAAAAAAARgAAAAA4hQAAAQAAAAEAAAAAAAAAHgA9AAEAAAABAAAAAAAAAAMADTT9NwAAFgM=

------ =_NextPart_000_01BE162A.B178BCF0--

--------------------------------------------------------------------------------
J Forum: for information about this list, see http://www.jsoftware.com/forum.htm

From ljdickey Sun Nov 22 15:28:09 1998
Subject: Re:  Jforum: I-Mac

I run on a Mac model G3 that pre-dates slightly the IMac.
It is my understanding that the I-Mac is the same CPU, the
G3, and at the same speed.  I love the Mac OS, but some
folks who come out of the PC world don't like it.  One
complaint I used to hear is that it has no "underlying" OS
(like DOS, for instance).  But this is not quit right.
The big difference is that the OS and the windowing system
have been integrated for years, instead of adding
windows on top of DOS.  I think that you will find
that J will run beautifully on your Mac.  The points
that I find frustrating are that

   (1)	The J for Mac is always a "backport" of the PC version,
	and does not fit smoothly with the way everything else
	works on the Mac.

   (2)	At one time Roger did not understand how to spawn a
	task on the Mac (like the "host" command does on
	unix and PC).  It is possible.  Other programmers
	do it.  For example MS Word can call up Equation Editor.
	(Maybe this is fixed now.)

I downloaded J4.01 the other day, and it did run.  I tried
the functions from the paper called "The Archaeologist's Photo"
and they all seemed to run OK.   My code was vintage 1992,
mostly.  I was pleased that it still works.

Lee

From owner-jsoftware@lists.interlog.com  Mon Nov 23 01:41:06 1998
Date: Mon, 23 Nov 1998 07:17:23 +0100
From: "david alis" <dalis@balcab.ch>
Subject: Re: Jforum: I-Mac
References: <01BE162A.B15D45B0@n211.skima.is>

Amazon.com is reporting that the book reference in the mapped files Lab is out
of print...
Any suggestions for alternatives?
David Alis
=================
" For more information use Win32 reference materials. 'Advanced
Windows : The Developer's Guide to the Win32 API for Windows
NT 3.5 and Windows 95' by Jeffrey Richter from Microsoft
Press is recommended."

--------------------------------------------------------------------------------
J Forum: for information about this list, see http://www.jsoftware.com/forum.htm

From gosi@centrum.is  Mon Nov 23 04:34:51 1998
From: =?iso-8859-1?Q?Bj=F6rn_Gosi_Helgason?= <gosi@centrum.is>
Subject: RE: Jforum: I-Mac
Date: Mon, 23 Nov 1998 09:11:44 -0000
Return-Receipt-To: <gosi@centrum.is>

> I run on a Mac model G3 that pre-dates slightly the IMac.
> It is my understanding that the I-Mac is the same CPU, the
> G3, and at the same speed.

That is what I heard from the I-Mac salesperson too.

>  I love the Mac OS, but some
> folks who come out of the PC world don't like it.  One
> complaint I used to hear is that it has no "underlying" OS
> (like DOS, for instance).  But this is not quit right.
> The big difference is that the OS and the windowing system
> have been integrated for years, instead of adding
> windows on top of DOS.

One of the issues I have heard is that the files, charactersets and such
are not easily moved between the two and it is not apparent how to
work with files in the mac for a person used to PC and Unix.

>  I think that you will find
> that J will run beautifully on your Mac.

I have not got myself an IMac yet.

> The points
> that I find frustrating are that

   > (1)	The J for Mac is always a "backport" of the PC version,
	> and does not fit smoothly with the way everything else
	> works on the Mac.

I would like to see this issue presented to the forum. If you will not do it do
you object to me sending it in?

>    (2)	At one time Roger did not understand how to spawn a
> 	task on the Mac (like the "host" command does on
> 	unix and PC).  It is possible.

This needs to be presented as well as an issue in the Forum

> Other programmers
> 	do it.  For example MS Word can call up Equation Editor.
> 	(Maybe this is fixed now.)

Would be good to find out.

> I downloaded J4.01 the other day, and it did run.  I tried
> the functions from the paper called "The Archaeologist's Photo"
> and they all seemed to run OK.   My code was vintage 1992,
> mostly.  I was pleased that it still works.

Can you do windows, read and write files, do sockets?

What are the limitations?

I would like to see all issues with the I-Mac presented top the forum.
I believe the I-Mac is going to be a trendsetter and will put Apple back
on the map. J needs to be present and active in there. Not just as an
afterthought.

/Gosi

From owner-jsoftware@lists.interlog.com  Mon Nov 23 07:03:43 1998
From: "Chris Burke" <cdburke@interlog.com>
Subject: Re: Jforum: I-Mac
Date: Mon, 23 Nov 1998 06:45:40 -0500
	charset="iso-8859-1"

David,

Are you sure? I just checked Amazon and saw no indication that it was out of
print.

A good alternative would be the Petzold book, which was republished this
month.

Chris

-----Original Message-----
From: david alis <dalis@balcab.ch>
Date: Monday, November 23, 1998 1:11 AM
Subject: Re: Jforum: I-Mac

>
>Amazon.com is reporting that the book reference in the mapped files Lab is
out
>of print...
>Any suggestions for alternatives?
>David Alis
>=================
>" For more information use Win32 reference materials. 'Advanced
>Windows : The Developer's Guide to the Win32 API for Windows
>NT 3.5 and Windows 95' by Jeffrey Richter from Microsoft
>Press is recommended."

--------------------------------------------------------------------------------
J Forum: for information about this list, see http://www.jsoftware.com/forum.htm

From owner-jsoftware@lists.interlog.com  Mon Nov 23 08:05:07 1998
From: JoHo <JoHo@cgsl.demon.co.uk>
Subject: RE: Jforum: Advanced Windows by Jeffery Richter
Date: Mon, 23 Nov 1998 12:46:51 -0000

I just bought the book, which is now called only "Advanced Windows"
If you search only for the authors name "Jeffery Richter", you will get
it listed.
Greetings,
		JoHo

> -----Original Message-----
> From:	david alis [SMTP:dalis@balcab.ch]
> Sent:	Monday, November 23, 1998 6:17 AM
> To:	forum@jsoftware.com
> Subject:	Re: Jforum: I-Mac
>
>
> Amazon.com is reporting that the book reference in the mapped files
> Lab is out
> of print...
> Any suggestions for alternatives?
> David Alis
> =================
> " For more information use Win32 reference materials. 'Advanced
> Windows : The Developer's Guide to the Win32 API for Windows
> NT 3.5 and Windows 95' by Jeffrey Richter from Microsoft
> Press is recommended."
>
>
>
>
> ----------------------------------------------------------------------
> ----------
> J Forum: for information about this list, see
> http://www.jsoftware.com/forum.htm

--------------------------------------------------------------------------------
J Forum: for information about this list, see http://www.jsoftware.com/forum.htm

From owner-jsoftware@lists.interlog.com  Mon Nov 23 10:03:56 1998
References: <36543E67.64CA@Interlog.Com>
Organization: Voxel
From: "Andrew Nikitin" <nsg@voxel.kharkov.ua>
Date: Mon, 23 Nov 1998 15:52:05 +0200 (EET)
Subject: Re: Jforum: Re: usefulness of .

19-Nov-98 10:51 Roger Hui wrote:
> It's easier to see these applications, if you think of an equivalent
> formulation of the determinant f/ . g , viz., g/ over all the !n ways
> of choosing an element from each row and column, then the f/ over _that_.

Trying to determine actual order of !n ways involved i have composed verb

detperm=. ,/ . (,&.>)

and applied it to

   ]r=.(- ]\ (# i.))3
0 0 0
1 1 1
2 2 2

I was slightly surprized that this order is the same, as generated by A. verb.
(Of course, there is nothing unexpected in this fact. BTW, maybe this method
can be used as one more way to produce table of permutation in lexical order
is APLs without A., but with monadic . (are there any?).)

   detperm r
+-----+-----+-----+-----+-----+-----+
|0 1 2|0 2 1|1 0 2|1 2 0|2 0 1|2 1 0|
+-----+-----+-----+-----+-----+-----+
   (<"1 (A.&i.~ !)3) -: detperm r
1

If so, then, may be, we can use something like

   sq=.((A.&i.~ !)@# {"0 1"1 _ |:) i. 3 3
   f/ g/"1 sq

in place of f/ . g (for f, that is distributive over g)? The answer is "yes"
for associative f, and "no" for others. For example -/ */"1 sq is not 0.
So, can we produce _that_ (in terms of quotation above), such that f/
applied to it would give us the correct result? -/ applied to permutations in
order of "minimal changes" shall give us correct result. May be, moving
backwards, we can produce permutation in order of "minimal change" using .
in simple, nonrecurrent way?

> Note that currently, only -/ .* on extended integer or rational arguments
> executes in polynomial time and linear space; all other case take
> at least !n time and space.

Why doubles are not included in this list? Because of impossibility to
perform exact division? If so, than optimisation of +/\ is also questionable,

   +/@]\ _1 1 5e_16 5e_16   NB. embarrass idiom recognition
_1 0 4.44089e_16 1.11022e_15
   +/\ _1 1 5e_16 5e_16
_1 0 5e_16 1e_15            NB. last 2 members differ by 10%!

because it may lead to results, which contradict dictionary definition of \
adverb.

nsg

--------------------------------------------------------------------------------
J Forum: for information about this list, see http://www.jsoftware.com/forum.htm

From owner-jsoftware@lists.interlog.com  Mon Nov 23 10:17:31 1998
From: =?iso-8859-1?Q?Bj=F6rn_Gosi_Helgason?= <gosi@centrum.is>
Subject: RE: Jforum: I-Mac
Date: Mon, 23 Nov 1998 14:59:18 -0000
Content-Type: multipart/mixed; boundary="---- =_NextPart_000_01BE16F2.08D7A700"

------ =_NextPart_000_01BE16F2.08D7A700

Samples of a few answers I got from personal postings not sent to
the Forum.
------------------------

>  The i-Mac will run MS windows emulation - which you'll need to
> purchase  separately.
>  Strand should know whether this fully supports J.

Would I be able to run Linux on it too?
I have a dual-boot on both my PCs. W95 and Linux. It would be good
to be able to do i-Mac as well.
Would that be called threeal-boot? or trial-boot.

>   I was surprised that it has no floppy drive,  nor any space for
> one.  Apparently external drives are coming on to the market -

Yes I did notice that. Forgot to ask if the CD in it was a Read/Write CD.

>   ii) superfloppies,  but these were unavailable a month ago due to
>   huge demand in the USA.

Is this something like the Zip and Jaz?

> d)  Apparently the get-around for missing floppies is the good net-
> handling power of the i-Mac - home-users swap data with their work-
> place servers for storage/recall.

> I run on a Mac model G3 that pre-dates slightly the IMac.
> It is my understanding that the I-Mac is the same CPU, the
> G3, and at the same speed.

That is what I heard from the I-Mac salesperson too.

>  I love the Mac OS, but some
> folks who come out of the PC world don't like it.  One
> complaint I used to hear is that it has no "underlying" OS
> (like DOS, for instance).  But this is not quit right.
> The big difference is that the OS and the windowing system
> have been integrated for years, instead of adding
> windows on top of DOS.

One of the issues I have heard is that the files, charactersets and such
are not easily moved between the two and it is not apparent how to
work with files in the mac for a person used to PC and Unix.

>  I think that you will find
> that J will run beautifully on your Mac.

   >  The J for Mac is always a "backport" of the PC version,
	> and does not fit smoothly with the way everything else
	> works on the Mac.

>     J does not spawn a
> 	task on the Mac (like the "host" command does on
> 	unix and PC).
> Other programmers
> 	do it.  For example MS Word can call up Equation Editor.

> I downloaded J4.01 the other day, and it did run.

>  I have no help files for J on the Mac. I have not tried the i-Mac but
> I plan to get one shortly.

> I have not tried any new J on the Mac so I can not tell if the
>  new stuff will run on it.

> I stopped using J on the Mac because it is so much better supported
> on the PC. I get the feeling that they only port some of the options
> on teh Mac and I have no idea if it is feesible to do anything with
> J on teh i-Mac I heerd that it is not cleer how to install emulations
>  on the Mac and everything may not work.

Regarding running J on the i-Mac (not MS-Windows emulation) then I wonder
how you do windows, read and write files, do sockets? Is there a problem
with charactersets or formats of files between the i-Mac and the PC and/or
Unix?

What are the limitations?

Can you do windows, read and write files, do sockets?

I would like to see all issues with the I-Mac presented to the forum.
I believe the I-Mac is going to be a trendsetter and will put Apple back
on the map. J needs to be present and active in there. Not just as an
afterthought as some people have indicated.

/Gosi

------ =_NextPart_000_01BE16F2.08D7A700
Content-Type: application/ms-tnef
Content-Transfer-Encoding: base64

eJ8+IigPAQaQCAAEAAAAAAABAAEAAQeQBgAIAAAA5AQAAAAAAADoAAENgAQAAgAAAAIAAgABBJAG
ABwBAAABAAAADAAAAAMAADACAAAACwAPDgAAAAACAf8PAQAAAEUAAAAAAAAAgSsfpL6jEBmdbgDd
AQ9UAgAAAABmb3J1bUBqc29mdHdhcmUuY29tAFNNVFAAZm9ydW1AanNvZnR3YXJlLmNvbQAAAAAe
AAIwAQAAAAUAAABTTVRQAAAAAB4AAzABAAAAFAAAAGZvcnVtQGpzb2Z0d2FyZS5jb20AAwAVDAEA
AAADAP4PBgAAAB4AATABAAAAFgAAACdmb3J1bUBqc29mdHdhcmUuY29tJwAAAAIBCzABAAAAGQAA
AFNNVFA6Rk9SVU1ASlNPRlRXQVJFLkNPTQAAAAADAAA5AAAAAAsAQDoBAAAAAgH2DwEAAAAEAAAA
AAAAAhk0AQiABwAYAAAASVBNLk1pY3Jvc29mdCBNYWlsLk5vdGUAMQgBBIABABIAAABSRTogSmZv
cnVtOiBJLU1hYwBFBQEFgAMADgAAAM4HCwAXAA4AOwASAAEAUwEBIIADAA4AAADOBwsAFwAOACcA
HQABAEoBAQmAAQAhAAAAOUFBNDU2MjBFMDgyRDIxMThCOUEyQ0ExRkZDMDAwMDAADQcBA5AGAEwL
AAASAAAACwAjAAEAAAADACYAAAAAAAsAKQABAAAAAwA2AAAAAABAADkAQJF02PEWvgEeAHAAAQAA
ABIAAABSRTogSmZvcnVtOiBJLU1hYwAAAAIBcQABAAAAFgAAAAG+FvHYYyBWpJyC4BHSi5osof/A
AAAAAB4AHgwBAAAABQAAAFNNVFAAAAAAHgAfDAEAAAAQAAAAZ29zaUBjZW50cnVtLmlzAAMABhA6
ZFmkAwAHEKIJAAAeAAgQAQAAAGUAAABTQU1QTEVTT0ZBRkVXQU5TV0VSU0lHT1RGUk9NUEVSU09O
QUxQT1NUSU5HU05PVFNFTlRUT1RIRUZPUlVNLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tVEhFSS1N
QUNXSUxMUlVOAAAAAAIBCRABAAAA2wkAANcJAADoFgAATFpGde2v1uT/AAoBDwIVAqgF6wKDAFAC
8gkCAGNoCsBzZXQyNwYABsMCgzIDxQIAcHJCcRHic3RlbQKDM3cC5AcTAoB9CoAIzwnZO/EWDzI1
NQKACoENsQtgQG5nMTAzOQr0bHhpMzYN8AtVFFEL8mMbAEAGAW0LUAeRb2Yg2GEgZgfRAHF3BJAE
IDBJIGdvBUADUiBwbxyhAiAHQB2AbxPAC4BnHQQgbh0REbACMCB0b4IgCoV0aGUgRgWw6HVtLgqF
LSD/IWQfZv0KhT4K4RpLE1AdEAWQBUCLI34bElQf8WktTQDQ9yN/JIUD8GwDICBAA6AF4WED8G5k
b3cEIBPgdZ8LYB5QAiAg4CgwaGkRcFQgeQhgJyhhbgngZN8fOSUPGzAjbyR2cAhwEXH/EbAr/xsh
LU8khRGwCrEpwPBlbHkuK48snzDvMHBcU3QyQCkgHuBoCGBs/StAax6wB+AqQBHAH/Afwp8EABwQ
KaAygB7gdXAeIPsAIAQgSjKgMrgLGRqpOTX2VzaTHOBiIAABoBuQHzJlKJJMC4B1eBvAA6BpuR8i
bz85NRzgEYB2PCHoIGR1B0AtBuAdESnxEwbgH+AgbThAUENz8TKgVzk1HFErQD0DMqD+SSghNpM8
ER0ABHAfdh9QvzwZKTAmZS8QKDAycGwyp+87lB/gKcA8AmMHQBuQRbL7CdE/JT8bwB/BByI/QyB2
vzk7Gd8B0DRfJGgc0XdEcf04YHITUAQARpNF8T2RLwHfHqEcEBWgOIA4QGQFED6wfiwwcB6wBcAA
cDhBOWBjfyAAAhBI2TofSw8kdgIgZT05AUE4gArAHwE4MWV4/xPQBKAd8U8TBCBUcUZAA3CfHmE9
Uh9BH+IAwHJrEcBvKhE5PzpPWAJZB5Ec4GT+aStAHrEqYDxxReEyoCAhdx0CH0EvEGsmYBvgH+JD
XkQmYD1zTNIcAFJHAGT8L1cFEBPQXOFIf0mPUa/jUr9McmlpKThSBJBOo+UIkHNPYWJ1HyEf8C8h
/xyRIAAooD6gC3ALYDxSHAD3BGACMCqAYR0APvE8c1C/x2D/Yg8wcGh1ZyAADbCPA4ErQF0hH+JV
U0EgdvtYTzq8SQQgN7MdwAeAN7FvVnFgAFdwH9NaBSBA00p8YXo99l8/YE9ozyRJZM9jUFQ6H+Jq
wHQtCsAIYP82QVByVlAEEFZiY8YmYG6C/0I0KwF2gGdfcx90LxGAKSD/ciBWcR4gHJEbwh/iJnQi
YHM2gAeALXURsByxA+BhfXBAZCnAHAAD8D/xH+Fp/wXAQcBXYHlfem97fx2AC2D/UEF+0T6wHLFQ
chPABbBmoPxlLxYQRlI5D4FfIv8kDX8c4CiSKfEcACaSBGIDIEe+M0XEE1B+oH9xB5FzciD0Z2h1
5kkmkWwMci+B//+JLk3hBCBAIXbRHKEBkCkg31ZiRdONEyaDeGVzG2Bc0fxQVU9gH+GAz49vkH+L
YP9PYDYykxWUU1AQKyEyqYa//zraJjBN0kSBReI+cUcACyD/HTSTSJRQG5EdlD2yXr+OP/+WH5cv
JNEc4BWgPrEf4iaS/E9TT2Bkcm7ylS+h36Lv+QIQbGucwh9QVjEgAAhgPz+BXJRAUIBiNrEpMG4n
7wVAb5M9kIXxTysQpb+mz/+n31YxC1OJ8n7BK0OdUnhU3U3bIpITMoAeYSKk4axP661frm8ob5NE
pPJQcguA65JiUEAphfFCZIM30TfR+R6ycXU9kQUQjLFsCLOv97S/JHYmMmKMoFqBDdBlIf+3gbD3
H+Kk8EDTH+IpBFZi/nMTs7mvur+7zz6TPBAJ8N9dERPQCcAyUXb0eZ1hZDH3tzJd8RvDZJKjwH/B
j8Kf/ykGVqNwQBvRtqGZ75r/y3T/rBF9dwQQClAcwj6TnVS+Cv5mAxBkIhFyANBVERGxVdH9NkJ1
EXDLZVXyHrJHAACQ7zgxBGA+sEICdByQxBEf4v/UIFwhazKRkx6yf0BUZH5h/wfgH0iAcn+00HNr
VgDBUGPfHACe9bA2qoE2MlUDAEFg/5+voL/Hz8jfTJJvMlxgRdP/KqEoNNBwKSDGz91P3l9F0/ZK
KDg8EGFkgAaQOBMp8f8qoQXBjXGGD8xf25/i30w2/+F/4oMmIOn/fDUgAOSQUHKfk6UHQEzQE7Ab
8SJiANC+aziSstCqGISCKeEs5ub/AZHrj+KPJEk2MikwB5Eesv/QcB7RBGA/4Tgxf8ZMwVTR/YSB
eW80MnARsPHf8u/z//8n9ICBylSkhGwP5+/o//4f//qf6t8vreSQ9ZMBrySUHrP9/XB3ioHhHwD/
BV/5Iw5A71xR/Ji2NR/iIjaAE8Cy0P9WMWsT9ZMp8f1PB98I7wn4/yig2uBA00BQt7IOb/8fAC/7
D08kK083YyRxxIEMwByh/wcfFV8Wb/kjQ+Kr0iAhVOH/lGBKIKSRvtA7kJ2BhbCKgLeFsmVQcEBF
uPApxEVakP+FIbmfSqQfjxmfGq9acSlADm6kIF4AKzFKNC4w34fwk0I/4TeBf3B5mHQ9kf9akiiR
MqAf/w3PL8sqA4gX9z5mTnGTUGxwQNf0UHLkkP/8mSsIW/FNUEaTfdZkcYgX/z5wSiFWs3ZhU9I2
YjiwMoH/2xwv0i2tT9J5INaQLKpu4f8+YR3CLfNEsVx1Kngz4oUQ/nW9cOSoPWNE5y9phRFO0P/Z
8X7AVmI0K0YghbB+wdU1/TTxbdIR0/JVEWNi8FLZ8P+IF/yVQFAtYjCS0DNG8HzT/5L25eKM4fBS
buN9dk7AHsL7GHY+VGX3IAtS0cIrGFqg/8XgXHLVRD/B01Bl4taxHAH/T9FvNNejiBcspEOBLtSd
MvdVIE2YuIVj0JAlsdZ1tzP/5NFrAOWwHrNCqAra0cL3yb9rEDPBuMGActsNXeBnKLHfVmLlAdrQ
Ooou1CgGYh1A/C1XygVLx2NQk0GKgM7g/4BwkiIoJdZy4EIcAcn1mHD3vaDF8dHCd15D0HUcAW7w
+/Aw0YE/bmRlItlBAqBl4f/AZtej0Ozu0SxhaxBbQsYw39f01Aou1L722lQv7tAoJfvawnDdV5zy
0rKTQhRgd1D3t2BCY3DdQx3RVZ9Wr1e9/9scVGLlsNoAb5RYAZmw72H/NfHOhPb3k4SL4fiQxFHa
A/PQM+7QdW2Nls7gw/AUYP/3wZM8eNCSs9bAw/DZMTNAvb2wZNFxPRJkg+TCcLgBv3VxRhHwEigl
/JVb0HDmsP8EgHkg2fB4cW3DagWYhALgXmnDwdhUvaDmsE64wWrPO8D1MdGiiAZhZtFBWmD/qdC5
YXTCQYOe8EJARhHDoz3KAWmFsMSx/T8nfyAvqkcMUGl4VX14UAB7cAADABAQAAAAAAMAERAAAAAA
QAAHMKAkxhPvFr4BQAAIMKAkxhPvFr4BHgA9AAEAAAAFAAAAUkU6IAAAAAC+fg==

------ =_NextPart_000_01BE16F2.08D7A700--

--------------------------------------------------------------------------------
J Forum: for information about this list, see http://www.jsoftware.com/forum.htm

From owner-jsoftware@lists.interlog.com  Mon Nov 23 11:10:33 1998
Date: Mon, 23 Nov 1998 09:48:27 -0600 (CST)
From: John Howland <jhowland@ariel.cs.trinity.edu>
Subject: RE: Jforum: I-Mac
In-Reply-To: <01BE16F2.087C1980@geisli-37.centrum.is>
Content-Transfer-Encoding: 8bit
X-MIME-Autoconverted: from QUOTED-PRINTABLE to 8bit by lists.interlog.com id KAA25513

On Mon, 23 Nov 1998, Bj�rn Gosi Helgason wrote:

> Samples of a few answers I got from personal postings not sent to
> the Forum.
> ------------------------
>
> >  The i-Mac will run MS windows emulation - which you'll need to
> > purchase  separately.
> >  Strand should know whether this fully supports J.
>
> Would I be able to run Linux on it too?

I use Linuxppc on PowerMac's.  At this point (with recent Kernals)
Linuxppc boots on an iMac, but there is no USB support for USB
keyboards and mice, so you have to access it via net or terminal.
There is lots of work going on in the USB area, so this situation
is temporary and even this report may be out of date.

John

> I have a dual-boot on both my PCs. W95 and Linux. It would be good
> to be able to do i-Mac as well.
> Would that be called threeal-boot? or trial-boot.
>
> >   I was surprised that it has no floppy drive,  nor any space for
> > one.  Apparently external drives are coming on to the market -
>
> Yes I did notice that. Forgot to ask if the CD in it was a Read/Write CD.
>
> >   ii) superfloppies,  but these were unavailable a month ago due to
> >   huge demand in the USA.
>
> Is this something like the Zip and Jaz?
>
> > d)  Apparently the get-around for missing floppies is the good net-
> > handling power of the i-Mac - home-users swap data with their work-
> > place servers for storage/recall.
>
> > I run on a Mac model G3 that pre-dates slightly the IMac.
> > It is my understanding that the I-Mac is the same CPU, the
> > G3, and at the same speed.
>
> That is what I heard from the I-Mac salesperson too.
>
> >  I love the Mac OS, but some
> > folks who come out of the PC world don't like it.  One
> > complaint I used to hear is that it has no "underlying" OS
> > (like DOS, for instance).  But this is not quit right.
> > The big difference is that the OS and the windowing system
> > have been integrated for years, instead of adding
> > windows on top of DOS.
>
> One of the issues I have heard is that the files, charactersets and such
> are not easily moved between the two and it is not apparent how to
> work with files in the mac for a person used to PC and Unix.
>
> >  I think that you will find
> > that J will run beautifully on your Mac.
>
>    >  The J for Mac is always a "backport" of the PC version,
> 	> and does not fit smoothly with the way everything else
> 	> works on the Mac.
>
> >     J does not spawn a
> > 	task on the Mac (like the "host" command does on
> > 	unix and PC).
> > Other programmers
> > 	do it.  For example MS Word can call up Equation Editor.
>
> > I downloaded J4.01 the other day, and it did run.
>
> >  I have no help files for J on the Mac. I have not tried the i-Mac but
> > I plan to get one shortly.
>
> > I have not tried any new J on the Mac so I can not tell if the
> >  new stuff will run on it.
>
> > I stopped using J on the Mac because it is so much better supported
> > on the PC. I get the feeling that they only port some of the options
> > on teh Mac and I have no idea if it is feesible to do anything with
> > J on teh i-Mac I heerd that it is not cleer how to install emulations
> >  on the Mac and everything may not work.
>
> Regarding running J on the i-Mac (not MS-Windows emulation) then I wonder
> how you do windows, read and write files, do sockets? Is there a problem
> with charactersets or formats of files between the i-Mac and the PC and/or
> Unix?
>
> What are the limitations?
>
> Can you do windows, read and write files, do sockets?
>
> I would like to see all issues with the I-Mac presented to the forum.
> I believe the I-Mac is going to be a trendsetter and will put Apple back
> on the map. J needs to be present and active in there. Not just as an
> afterthought as some people have indicated.
>
> /Gosi
>

________________________________________________________________
John E. Howland        url: http://www.cs.trinity.edu/~jhowland/
Computer Science     email: jhowland@ariel.cs.trinity.edu
Trinity University   voice: (210) 736-7480
715 Stadium Drive      fax: (210) 736-7477
San Antonio, Texas  78212-7200

--------------------------------------------------------------------------------
J Forum: for information about this list, see http://www.jsoftware.com/forum.htm

From owner-jsoftware@lists.interlog.com  Mon Nov 23 13:00:37 1998
Date: Mon, 23 Nov 1998 12:38:12 -0500
From: Roger Hui <RHui@interlog.com>
Subject: Jforum: Re: usefulness of .
References: <36543E67.64CA@Interlog.Com> <AB5YMMsCHB@voxel.kharkov.ua>

Andrew Nikitin writes on Monday, November 22:

> Trying to determine actual order of !n ways involved i have composed verb
>
> detperm=. ,/ . (,&.>)
>
> and applied it to  ...

The ordinary determinant -/ .* A, -/*/p{A, is equivalent to +/ (_1^sgn(q)) * */ q{A
where sgn(q) is the parity of permutation q, the parity of the number of pairwise
interchanges necessary to convert the identity permutation to the permutation q.

> I was slightly surprized that this order is the same, as generated by A. verb.
> (Of course, there is nothing unexpected in this fact. BTW, maybe this method
> can be used as one more way to produce table of permutation in lexical order
> is APLs without A., but with monadic . (are there any?).)

This is an inefficient way of generating the table of permutations.  Compare it
to the following methods:

grow=: [: ,/ 0&,.@:>: {"2 1 \:"1@=@(_1&,)@{.

p0=: i.@! A. i.
p1=: 1 0&


gemini - kennedy.gemi.dev




([: ,/ 0&,.@($:&.(<:"_)) {"2 1 \:"1@=@i.) @. *
p2=: grow^:(]`(1 0&$))
p3=: 3 : 'grow^:y. i.1 0'
p4=: 3 : 0
 z=.1 0$j=.0
 while. y.>:j=.1+j do. z=.,/(0,.1+z){"2 1\:"1=i.j end.
)

> > Note that currently, only -/ .* on extended integer or rational arguments
> > executes in polynomial time and linear space; all other case take
> > at least !n time and space.
>
> Why doubles are not included in this list? Because of impossibility to
> perform exact division? If so, than optimisation of +/\ is also questionable,

a. Numerical properties of the floating point determinant are quite subtle,
much more so than for simple operations.

b. Floating point determinant computations are available elsewhere (e.g. in LAPACK).

--------------------------------------------------------------------------------
J Forum: for information about this list, see http://www.jsoftware.com/forum.htm

From owner-jsoftware@lists.interlog.com  Wed Nov 25 12:03:25 1998
Date: Wed, 25 Nov 1998 10:15:25 -0600
From: Don Guinn <donguinn@hal-pc.org>
Subject: Re: Jforum: I-Mac
References: <01BE162A.B15D45B0@n211.skima.is> <3658FDF3.78136263@balcab.ch>

If you are referring to "Advanced Windows" from Microsoft Press by Jeffrey Richter
then there is a new third edition of the book.  It has been updated for W95 and
NT4.0.  I found the book at Micro Center in Houston Texas.

david alis wrote:

> Amazon.com is reporting that the book reference in the mapped files Lab is out
> of print...
> Any suggestions for alternatives?
> David Alis
> =================
> " For more information use Win32 reference materials. 'Advanced
> Windows : The Developer's Guide to the Win32 API for Windows
> NT 3.5 and Windows 95' by Jeffrey Richter from Microsoft
> Press is recommended."
>
> --------------------------------------------------------------------------------
> J Forum: for information about this list, see http://www.jsoftware.com/forum.htm

--------------------------------------------------------------------------------
J Forum: for information about this list, see http://www.jsoftware.com/forum.htm

From owner-jsoftware@lists.interlog.com  Wed Nov 25 22:08:44 1998
From: =?iso-8859-1?Q?Bj=F6rn_Gosi_Helgason?= <gosi@centrum.is>
Subject: RE: Jforum: I-Mac
Date: Wed, 25 Nov 1998 10:00:12 -0000
Content-Type: multipart/mixed; boundary="---- =_NextPart_000_01BE18E8.7D8B19E0"

------ =_NextPart_000_01BE18E8.7D8B19E0

From: John Howland[SMTP:jhowland@ariel.cs.trinity.edu]
> I use Linuxppc on PowerMac's.  At this point (with recent Kernals)
> Linuxppc boots on an iMac, but there is no USB support for USB
> keyboards and mice, so you have to access it via net or terminal.
> There is lots of work going on in the USB area, so this situation
> is temporary and even this report may be out of date.

Where do you get Linuxppc?

If I understand you correctly then PowerMac is the same as the iMac and
you can not use Linuxppc on this achine standalone but that is probably
solved soon.

Have you run J on Linuxppc on the iMac?
Do you run J on the iMac under the native OS
or under Windows emulation on the iMac? or all three?

I am most interested in finding out if this is a machine worth
buying and I will not unless I can run J on it.

/Gosi

------ =_NextPart_000_01BE18E8.7D8B19E0
Content-Type: application/ms-tnef
Content-Transfer-Encoding: base64

eJ8+IhcCAQaQCAAEAAAAAAABAAEAAQeQBgAIAAAA5AQAAAAAAADoAAENgAQAAgAAAAIAAgABBJAG
AHwCAAACAAAADQAAAAMAADAGAAAACwAPDgEAAAACAf8PAQAAAEMAAAAAAAAAgSsfpL6jEBmdbgDd
AQ9UAgAAAQBiamFybnRoQGlzbWVubnQuaXMAU01UUABiamFybnRoQGlzbWVubnQuaXMAAB4AAjAB
AAAABQAAAFNNVFAAAAAAHgADMAEAAAATAAAAYmphcm50aEBpc21lbm50LmlzAAADABUMAgAAAAIB
+Q8BAAAAQwAAAAAAAACBKx+kvqMQGZ1uAN0BD1QCAAABAGJqYXJudGhAaXNtZW5udC5pcwBTTVRQ
AGJqYXJudGhAaXNtZW5udC5pcwAAAwD+DwYAAAAeAAEwAQAAABUAAAAnYmphcm50aEBpc21lbm50
LmlzJwAAAAACAQswAQAAABgAAABTTVRQOkJKQVJOVEhASVNNRU5OVC5JUwADAAA5AAAAAAsAQDoA
AAAAAgH2DwEAAAAEAAAAAAAABgwAAAADAAAwBwAAAAsADw4AAAAAAgH/DwEAAABFAAAAAAAAAIEr
H6S+oxAZnW4A3QEPVAIAAAAAZm9ydW1AanNvZnR3YXJlLmNvbQBTTVRQAGZvcnVtQGpzb2Z0d2Fy
ZS5jb20AAAAAHgACMAEAAAAFAAAAU01UUAAAAAAeAAMwAQAAABQAAABmb3J1bUBqc29mdHdhcmUu
Y29tAAMAFQwBAAAAAwD+DwYAAAAeAAEwAQAAABYAAAAnZm9ydW1AanNvZnR3YXJlLmNvbScAAAAC
AQswAQAAABkAAABTTVRQOkZPUlVNQEpTT0ZUV0FSRS5DT00AAAAAAwAAOQAAAAALAEA6AQAAAAIB
9g8BAAAABAAAAAAAAAc9fAEIgAcAGAAAAElQTS5NaWNyb3NvZnQgTWFpbC5Ob3RlADEIAQSAAQAS
AAAAUkU6IEpmb3J1bTogSS1NYWMARQUBBYADAA4AAADOBwsAGQAKAAAADAADABIBASCAAwAOAAAA
zgcLABkACgAAAAwAAwASAQEJgAEAIQAAAEE4OTU1MTc5NDc4NEQyMTE4QjlBMkNBMUZGQzAwMDAw
AAYHAQOQBgCkBAAAEgAAAAsAIwABAAAAAwAmAAAAAAALACkAAQAAAAMANgAAAAAAQAA5AMAFOmRa
GL4BHgBwAAEAAAASAAAAUkU6IEpmb3J1bTogSS1NYWMAAAACAXEAAQAAABYAAAABvhhaZCl5UZWs
hEcR0ouaLKH/wAAAAAAeAB4MAQAAAAUAAABTTVRQAAAAAB4AHwwBAAAAEAAAAGdvc2lAY2VudHJ1
bS5pcwADAAYQxdwVGwMABxCEAgAAHgAIEAEAAABlAAAARlJPTTpKT0hOSE9XTEFORFNNVFA6SkhP
V0xBTkRAQVJJRUxDU1RSSU5JVFlFRFVJVVNFTElOVVhQUENPTlBPV0VSTUFDU0FUVEhJU1BPSU5U
KFdJVEhSRUNFTlRLRVJOQUxTKQAAAAACAQkQAQAAADMDAAAvAwAA0wUAAExaRnU6kCAH/wAKAQ8C
FQKoBesCgwBQAvIJAgBjaArAc2V0MjcGAAbDAoMyA8UCAHByQnER4nN0ZW0CgzN3AuQHEwKAfQqA
CM8J2TvxFg8yNTUCgAqBDbELYEBuZzEwMzkK/zFWNgwhE1BvE9BjBUBGPQNhOgrhGesa1gyCIEpE
b2gDoEhvdxjxZABbU01UUDpqaA0d1EAKwAiQbC5jc4wudAUQAwB0eS4JgIR1XQqLbGkzNg3wlwtV
FFEL8mMAQCA+G6cjIhUa1kkgdRGwIEyBC4B1eHBwYyACIKwgUB3QBJBNANAnH5AmIBSwBUB0aAQA
IHC2bwuABUAoA/AmcCAWEDZjCfAFQEsEkQdAcyn/CochvyLPGtYktwbgGvAEIKslQQORaSXBLCwg
dSZSBwSQJJAmkW5vIFVTsEIgc3UlABWxIAIQHwXALlEofymPKp9rZXmPBuALEQQgHgEgbWknoFUt
MHMuMHkIYCARgHZ9JJB0LjAA0CegBBEf8CB+dgcwLhARwCUwBcAT0HK7M5AoIS4vjzCfMa9ULaYj
FaAsYmYgdwWwayD6ZybRZyUyC4Atgi5DCsAcZWEz0yZzAJB0dWH8dGkCIDbPN9847yaRE9HrLsEK
wHkzQ2U0gDvyJpHvFhAuwwDAQeBiJJAIYDXhtTrgZD2wZTa/C9MgCo/VPsxXLaNkNARnNdEktvY/
ReVF5Uk64CRRHhAEkJ8TwDNSNCIFoSeBdGxB4M8tkSVYQSM8IXNhB4AssP9NJCzyM0NF5UtTA5Eu
IAVA/yR+JnMA0CaANcAugEsCB0C/AiAkkC1UPbAt4hrRYgGg90wBReUz8Gw0gDNwM/ACINtEdkXl
SDRyNCJySqAdYO8lMlBMTiRJZkQ0BFZnTgffSqM8AyggPcA0gU8F8EXl2wWxWkRXC4BIMHcEIBPg
/nULYD3CV3s18gdAAyAmcNcJ0UluLLBtM4BvE8A70d82MQeQE9AzcDvhZlyRO3P/LWEGkCZkUSJD
QVFkOwEmcPtF5S1QeTtyM1IkUAPwXrH5T8NubDUSJFBPglZnH/DpVO0vR2CAaUl8ReUVMQIAaiAA
AwAQEAAAAAADABEQAAAAAEAABzDgySd6VBi+AUAACDDgpkFkWhi+AR4APQABAAAABQAAAFJFOiAA
AAAA+V0=

------ =_NextPart_000_01BE18E8.7D8B19E0--

--------------------------------------------------------------------------------
J Forum: for information about this list, see http://www.jsoftware.com/forum.htm

From owner-jsoftware@lists.interlog.com  Thu Nov 26 01:50:45 1998
Date: Thu, 26 Nov 1998 07:28:12 +0100
From: "david alis" <dalis@balcab.ch>
Subject: Jforum: J and HP-UX
References: <01BE162A.B15D45B0@n211.skima.is> <3658FDF3.78136263@balcab.ch> <365C2D1D.D8349FB2@hal-pc.org>

Where should I look to get information about versions of J that run on HP-UX?

--------------------------------------------------------------------------------
J Forum: for information about this list, see http://www.jsoftware.com/forum.htm

From owner-jsoftware@lists.interlog.com  Thu Nov 26 02:49:58 1998
Date: Thu, 26 Nov 1998 02:27:39 -0500
From: Fraser Jackson <Fraser_Jackson@compuserve.com>
Subject: Jforum: Termination of explicit definition
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
X-MIME-Autoconverted: from quoted-printable to 8bit by lists.interlog.com id CAA05013

In a script the following  will generate the functions a and b
a =:  3 : 0
y.^2
)

b =: 3 : 0
y.^3

I was surprised that the last definition did not need a final right
parenthesis, contrary to the Dictionary IIH.  Is this deliberate or a
consequence of some other definition.

Fraser Jackson

--------------------------------------------------------------------------------
J Forum: for information about this list, see http://www.jsoftware.com/forum.htm

From owner-jsoftware@lists.interlog.com  Thu Nov 26 08:06:09 1998
Date: Thu, 26 Nov 1998 13:47:30 +0100
From: "david alis" <dalis@balcab.ch>
Subject: Re: Jforum: Termination of explicit definition
References: <199811260227_MC2-6193-B512@compuserve.com>

Maybe one could chain scripts together..
script1=. 'c:\script1.ijs'
script2=. 'c:\script2.ijs'
script3=. 'c:\script3.ijs'
(0!:1) script1;script2;script3
so that the files are joined together and then  executed as a script. Instead of as
now, where the
files are executed together, but in an order which is unspecified. Such a device
could help, albeit in a minor way, program organisation.
(Perhaps the rank of (0!:0) should be 0 instead of _
   (0!:0) b. 0
_ _ _
)

Fraser Jackson wrote:

> In a script the following  will generate the functions a and b
> a =:  3 : 0
> y.^2
> )
>
> b =: 3 : 0
> y.^3
>
> I was surprised that the last definition did not need a final right
> parenthesis, contrary to the Dictionary IIH.  Is this deliberate or a
> consequence of some other definition.
>
> Fraser Jackson
>
> --------------------------------------------------------------------------------
> J Forum: for information about this list, see http://www.jsoftware.com/forum.htm

--------------------------------------------------------------------------------
J Forum: for information about this list, see http://www.jsoftware.com/forum.htm

From ljdickey Thu Nov 26 09:09:01 1998
Subject: RE: Jforum: I-Mac

It would be a mistake to not buy an iMac because
the mklinux does not run on it yet.

J runs under MacOS.  I think I told you that.
Moving J files on and off the Mac is not a hard thing to do.
I move files daily between UNIX systems and my Mac sytsems at
home and at work.  You know that you can move files between
UNIX and PC.

In fact, FTP works beautifully between all three and it
resolves the differences between the end of line markers,
CR, LF, and CR-LF.  There are other differences to think about.
The Mac uses ":" to mark a node in a pathname, where unix
uses "/" and DOS uses "\".   All these problems are easily solved.

Lee

From owner-jsoftware@lists.interlog.com  Thu Nov 26 09:10:33 1998
Date: Thu, 26 Nov 1998 08:45:13 -0500
From: David Ness <DNess@home.com>
Subject: Re: Jforum: Termination of explicit definition
References: <199811260227_MC2-6193-B512@compuserve.com>

How did you conclude that the final right parenthesis was *not*
needed? (i.e. what did you type following the code you presented
that convinced you that everything was ok).

Fraser Jackson wrote:
>
> In a script the following  will generate the functions a and b
> a =:  3 : 0
> y.^2
> )
>
> b =: 3 : 0
> y.^3
>
> I was surprised that the last definition did not need a final right
> parenthesis, contrary to the Dictionary IIH.  Is this deliberate or a
> consequence of some other definition.
>
> Fraser Jackson
>
> --------------------------------------------------------------------------------
> J Forum: for information about this list, see http://www.jsoftware.com/forum.htm

--------------------------------------------------------------------------------
J Forum: for information about this list, see http://www.jsoftware.com/forum.htm

From ljdickey Thu Nov 26 10:04:28 1998
Subject: Re: Jforum: Termination of explicit definition

It is a script, right?
Perhaps J, on coming to the end of a script, closes some
of the things that are open.

> How did you conclude that the final right parenthesis was *not*
> needed? (i.e. what did you type following the code you presented
> that convinced you that everything was ok).
>
>
> Fraser Jackson wrote:
> >
> > In a script the following  will generate the functions a and b
> > a =:  3 : 0
> > y.^2
> > )
> >
> > b =: 3 : 0
> > y.^3
> >
> > I was surprised that the last definition did not need a final right
> > parenthesis, contrary to the Dictionary IIH.  Is this deliberate or a
> > consequence of some other definition.
> >
> > Fraser Jackson
> >
> > --------------------------------------------------------------------------------
> > J Forum: for information about this list, see http://www.jsoftware.com/forum.htm
>
> --------------------------------------------------------------------------------
> J Forum: for information about this list, see http://www.jsoftware.com/forum.htm
>

From owner-jsoftware@lists.interlog.com  Thu Nov 26 10:22:57 1998
Date: Thu, 26 Nov 1998 10:04:28 -0500 (EST)
From: Lee Dickey <ljdickey@math.uwaterloo.ca>
Subject: Re: Jforum: Termination of explicit definition

It is a script, right?
Perhaps J, on coming to the end of a script, closes some
of the things that are open.

> How did you conclude that the final right parenthesis was *not*
> needed? (i.e. what did you type following the code you presented
> that convinced you that everything was ok).
>
>
> Fraser Jackson wrote:
> >
> > In a script the following  will generate the functions a and b
> > a =:  3 : 0
> > y.^2
> > )
> >
> > b =: 3 : 0
> > y.^3
> >
> > I was surprised that the last definition did not need a final right
> > parenthesis, contrary to the Dictionary IIH.  Is this deliberate or a
> > consequence of some other definition.
> >
> > Fraser Jackson
> >
> > --------------------------------------------------------------------------------
> > J Forum: for information about this list, see http://www.jsoftware.com/forum.htm
>
> --------------------------------------------------------------------------------
> J Forum: for information about this list, see http://www.jsoftware.com/forum.htm
>

--------------------------------------------------------------------------------
J Forum: for information about this list, see http://www.jsoftware.com/forum.htm

From owner-jsoftware@lists.interlog.com  Thu Nov 26 10:32:16 1998
Date: Thu, 26 Nov 1998 10:16:51 -0500
From: David Ness <DNess@home.com>
Subject: Re: Jforum: Termination of explicit definition
References: <199811261504.KAA05069@math.uwaterloo.ca>

Lee Dickey wrote:
>
> It is a script, right?
> Perhaps J, on coming to the end of a script, closes some
> of the things that are open.
>

I guess so. I experimented with a file that terminates in a
^Z and it appears that `J' treats this as an extra line-feed which
is then followed by an assumed `)'.

--------------------------------------------------------------------------------
J Forum: for information about this list, see http://www.jsoftware.com/forum.htm

From gosi@centrum.is  Thu Nov 26 12:36:36 1998
From: Bjorn Helgason <gosi@centrum.is>
Subject: RE: Jforum: I-Mac
Date: Thu, 26 Nov 1998 17:40:05 -0000

From:	Lee Dickey [SMTP:ljdickey@math.uwaterloo.ca]
 >  It would be a mistake to not buy an iMac because
 >  the mklinux does not run on it yet.

I am thinking about buying an iMac. I want to make sure
I get as much as I need before I buy it because I know
from experience that the salespeople are much more
willing to do something for you before you buy than after.
The more I include in the original order the less individualk components
are going to cost.

>  J runs under MacOS.  I think I told you that.
You did. I want to hear from as many people as possible and
I want to hear about any eventual shortcomings so either I or
someone else can work on fixing it.

>  Moving J files on and off the Mac is not a hard thing to do.
Good

>  I move files daily between UNIX systems and my Mac sytsems at
>  home and at work.

I am more interested in the moveing of files between
the Mac, Linux and Windows on the same machine and also
of problems with charactersets which has always been a problem
in Iceland.

> You know that you can move files between
>  UNIX and PC.
>  In fact, FTP works beautifully between all three and it
>  resolves the differences between the end of line markers,
>  CR, LF, and CR-LF.  There are other differences to think about.
> The Mac uses ":" to mark a node in a pathname, where unix
> uses "/" and DOS uses "\".   All these problems are easily solved.

Thanks

I like to see more discussions about this in the forum

/Gosi
From CHAA006@vms.rhbnc.ac.uk  Thu Nov 26 12:59:00 1998
Date: Thu, 26 Nov 1998 17:58:53 GMT
From: Philip Taylor (RHBNC) <CHAA006@vms.rhbnc.ac.uk>
CC: CHAA006@vms.rhbnc.ac.uk
Subject: RE: Link missing

Many thanks, Lee; the problem lies in the "vms"
component, which is taking you to a non-current
web server.  Please use the URL www.rhbnc.ac.uk,
and all should be well.  If you'd like a preview
of what our site _might_ look like (and if you
are configured for 1024 x 768 : I haven't put in
the auto-resize code yet), you might like to look
at www1.rhbnc.ac.uk  I'd appreciate any comments
you may have on it.



From ljdickey Thu Nov 26 13:57:37 1998
Subject: RE: Jforum: I-Mac

> From: Bjorn Helgason <gosi@centrum.is>
> To: "'Lee Dickey'" <ljdickey@math.uwaterloo.ca>
> Subject: RE: Jforum: I-Mac
> Date: Thu, 26 Nov 1998 17:40:05 -0000
>
> From:	Lee Dickey [SMTP:ljdickey@math.uwaterloo.ca]
>  >  It would be a mistake to not buy an iMac because
>  >  the mklinux does not run on it yet.
>
> I am thinking about buying an iMac. I want to make sure
> I get as much as I need before I buy it because I know
> from experience that the salespeople are much more
> willing to do something for you before you buy than after.
> The more I include in the original order the less individual
> components are going to cost.
>
> >  J runs under MacOS.  I think I told you that.
> You did. I want to hear from as many people as possible and
> I want to hear about any eventual shortcomings so either I or
> someone else can work on fixing it.
>
> I am more interested in the moveing of files between
> the Mac, Linux and Windows on the same machine and also
> of problems with charactersets which has always been a problem
> in Iceland.

I have no experience moving things from one OS to another
on one machine.  Just as there are cards with 68000 chips
for the PC there are also cards with DOS/Windows for the Mac.
However, the iMac is almost certainly not extendable in this
way.  It is my impression that the iMac has almost no room
for any internal expansion.  Perhaps there is room for more
RAM or VRAM.

The other direction is to use software emulation.  It is my impression
that this is always slower than an appropriate chip set running at the
same speed.  I have used PCSoft and Virtual PC.  I think that both
allow Windows 9x and NT, but am not sure about that.

Such software emulators do a good job with the basics.  I have no
experience with how well the handle peripherals, like printers,
CDRom, modem, and so on.

You might ask about how easy it is to moving from one to another
of the various operating systems.  (I have no experience with this.)

One of the features of unix is that path names are always relative.
If I am in directory

	/u3/ljdickey/J

and I fire up J7, for instance, and then aske to read a file called
"foo.ijs", the program searches for the file as "/u3/ljdickey/J/foo.ijs".
Not so with the Macintosh.  I have not figured out a way to do this
sort of default path hunting, except to do it (more or less) by
hand, by setting a variable "dir" that gives the path from the root
to the current directory.  There must be a way.  I just don't
know it.

I am discovering the joys of "vim" today.  This is the text
editor that replaces "vi" in linux.  Most linux systems us a soft
link from "vi" to "vim"  (Vi IMproved).  This software has been
ported to many platforms.

From owner-jsoftware@lists.interlog.com  Thu Nov 26 15:18:22 1998
Date: Thu, 26 Nov 1998 15:01:51 -0500
From: Fraser Jackson <Fraser_Jackson@compuserve.com>
Subject: Jforum: Termination of explicit definition
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
X-MIME-Autoconverted: from quoted-printable to 8bit by lists.interlog.com id PAA07385

As you would expect in J, the file origin ( J session manager or other
editor) does not matter, but the file content does.

What did surprise me was that as Lee Dickey says it appears to have as a
default closing an object that I had thought was syntactically incomplete.

A multiline comment merely needs to begin

comment =:  noun define

and it will continue to the end of the script.  It can contain as many
parentheses as you like provided there is no embedded line with a single
right parenthesis in the first position.

While all of this may be convenient, I think it is more consistent  to
require the objects to be syntactically complete and generate an error
message when they are not.

Fraser Jackson

--------------------------------------------------------------------------------
J Forum: for information about this list, see http://www.jsoftware.com/forum.htm

From ljdickey Thu Nov 26 15:48:47 1998
Subject: Re:  Jforum: Termination of explicit definition

My guess is that Roger will adopt your idea.
I once tried to convince roger to accept a line like

	a =: 'Now is the time

by supplying the missing quotation mark.  This is done in APL.68000,
and I was quite comfortable with it.  Roger would not hear of it.

Lee

From owner-jsoftware@lists.interlog.com  Thu Nov 26 18:42:42 1998
Date: Fri, 27 Nov 1998 00:29:20 +0100 (MET)
From: Martin Neitzel <neitzel@gaertner.de>
Subject: Re:  Jforum: Termination of explicit definition

Fraser Jackson:
>
> While all of this may be convenient, I think it is more consistent  to
> require the objects to be syntactically complete and generate an error
> message when they are not.

Yes.  I'm not a final authority, but the way I read the DoJ,
it's required to close any : 0  with its ')' AND you are  supposed
to put complete J constructs into a script.  In other words, the
way I see, it the current implementation is just a bit tolerant towards
scripts which are simply wrong.  I won't cry foul if the next version
suddenly throws an error or dumps core all for such script files.

BTW, the "as-defined-from-literal-data" facility  : 0  has a known
weak point:  you cannot nest it naively.  For example:

someniceverb =: 3 : 0
	synonyms =. <;._1 ;._2 (0 : 0) NB. Tabs a-head !
	good	,admirable,agreeable,benevolent,capable,cheerful
	bad	,baleful,base,deleterious,evil,immoral,iniquitous
	ugly	,deformed,hideous,homely,plain,repellent,repulsive
)
	foo =. synonyms lookup y.
	more =. code + here
	return. bar
)

The scanning for the "procedure body" would stop right in the middle.
This is unavoidable because its impossible to detect the embedded
(0 : 0) script starter.  Don't say "J could have an open eye on such
en embedded thing" -- we could all outsmart it by disguising it as
"(noun define)" or "tabelle wie folgt".

The J "script scanner" (remember the subject topic?  good.) does not
provide a built-in quoting mechanism to allow something like this:

someverb=: 3 : 0
	text=. 0 : 0
data data
data data
))			<-- protected initial ')', will be restored
	sentence one	    when the script is scanned.
	sentence two
)

Should J behave this way?  One could argue either way.  I'm happy with
the way it is.  I am free to come up with my own script protector.
Then I could end up with:

someverb=: 3 : parstripped
	text=. 0 : 0
data data
data data
))
	sentence one
	sentence two
)

(I think this week's homework assignment is clear.)

J's scanner and its stopping on ')' lines was also a major issue for J
script files with Unix and whenever you consider that it might be just
great to be able to use control words "outside of verb definitions".
As in:

if. running_under_windows then.
	notify =: wdshow
else.
	notify =: 1!:2&2
end.

Just like source conditional with preprocessor directives, see?  Well,
the standard J library actually uses some simple construct to get to
that effect.  You can take a peek at its solution.  You can also
think hard about any interactions of toplevel control words as a
built-in feature with the original subject topic.
Remember the subject topic?  Good.

							Martin

PS:  Since we are on a mailing list here, I don't want to close
without the little note that the following line consisting of a dot
.
was transfered as two dots when this message was passed
from mailserver to mailserver via SMTP until it found its
way to you.  Guess why.  Did work, dinnit?

--------------------------------------------------------------------------------
J Forum: for information about this list, see http://www.jsoftware.com/forum.htm

From owner-jsoftware@lists.interlog.com  Fri Nov 27 10:14:02 1998
Date: Fri, 27 Nov 98 07:49:39 MST
In-Reply-To: <199811262329.AAA12076@ohura.gaertner.de>
From: Joey Tuttle <jkt@pocus.hexagon.com>
Subject: Re:  Jforum: Termination of explicit definition

At 0:29 +0100 11/27/98, Martin Neitzel wrote:
>Fraser Jackson:
>>
>> While all of this may be convenient, I think it is more consistent  to
>> require the objects to be syntactically complete and generate an error
>> message when they are not.
>
>Yes.  I'm not a final authority, but the way I read the DoJ,
>it's required to close any : 0  with its ')' AND you are  supposed
>to put complete J constructs into a script.  In other words, the
>way I see, it the current implementation is just a bit tolerant towards
>scripts which are simply wrong.  I won't cry foul if the next version
>suddenly throws an error or dumps core all for such script files.
>
I wasted a fair bit of time (and wasted some of Roger's time with silly
questions) over the subject issue. I had a script that was used two
different ways (by being loaded, or by being  infixed in a datastream) -
it worked in the first case but not in the second, and it was not at all
obvious (to me) what my problem was...

Certainly it was not my intent to "take advantage of this feature" and I
would have been happier if the error of my ways had been pointed out. Or,
since I don't like/appreciate even so much help as syntax/spelling checks
on ending definitions, I would have been happy if it had failed in both
cases without telling me the reason - since I had to figure it out on my
own in any case...

I  won't even start on my feelings about ^Z, but it is enough to say that
as a Unix user, I don't have kind words for it or 16 bit line-end characters.

Joey.Tuttle@hexagon.com

--------------------------------------------------------------------------------
J Forum: for information about this list, see http://www.jsoftware.com/forum.htm

From gosi@centrum.is  Fri Nov 27 11:14:34 1998
From: =?iso-8859-1?Q?Bj=F6rn_Gosi_Helgason?= <gosi@centrum.is>
Subject: RE: Jforum: I-Mac
Date: Fri, 27 Nov 1998 15:44:11 -0000
Return-Receipt-To: <gosi@centrum.is>

> I have no experience moving things from one OS to another
> on one machine.  Just as there are cards with 68000 chips
> for the PC there are also cards with DOS/Windows for the Mac.
> However, the iMac is almost certainly not extendable in this
> way.  It is my impression that the iMac has almost no room
> for any internal expansion.  Perhaps there is room for more
> RAM or VRAM.

I was not really meaning to have different processors in the same
machine even if that is an interesting thing to do.

I have now Windows and Linux and it is quite a number of options
how to format the disks I use in the Zip-drive as well as the disks
in the machines.

Linux can read and write most types but the others are not so flexible.

Let me nam a few examples. Dos, W95, WNT, Linux native, Linux Swap
FAT, NTFS, FAT32, Compressed various types and of course files in
Word, Excel, and all kinds of specially formatted files.

When you send files from one environment to the other you need applications
that can interpret what is in the files. There are various charactersets and
all kinds of control characters.

I have heard that the Mac stuff is different from all of the above in many ways.
What is needed is conversion filters between different disktypes and
charactersets. Linux is pretty good at providing options to allow you
to do just that.

Now there is a problem with the iMac that it does not allow you to get in touch
with Zip-,Jaz- or discette-drives at all. That will make it very hard to move any data to or from it. I think I will wait a bit.

> The other direction is to use software emulation.  It is my impression
> that this is always slower than an appropriate chip set running at the
> same speed.  I have used PCSoft and Virtual PC.  I think that both
> allow Windows 9x and NT, but am not sure about that.

That is one of the things I like to know. Does J run well in such an emulation?

> Such software emulators do a good job with the basics.  I have no
> experience with how well the handle peripherals, like printers,
> CDRom, modem, and so on.

That is another.

> You might ask about how easy it is to moving from one to another
> of the various operating systems.  (I have no experience with this.)

Neither do I that is why I ask.

> One of the features of unix is that path names are always relative.
> If I am in directory
>
	> /u3/ljdickey/J
>
> and I fire up J7, for instance, and then aske to read a file called
> "foo.ijs", the program searches for the file as "/u3/ljdickey/J/foo.ijs".
>Not so with the Macintosh.  I have not figured out a way to do this
> sort of default path hunting, except to do it (more or less) by
> hand, by setting a variable "dir" that gives the path from the root
> to the current directory.  There must be a way.  I just don't
> know it.

Have you asked ISI or Strand?
This sounds like a good candidate for the Forum.

> I am discovering the joys of "vim" today.  This is the text
> editor that replaces "vi" in linux.  Most linux systems us a soft
> link from "vi" to "vim"  (Vi IMproved).  This software has been
 > ported to many platforms.

Sounds interesting. I always go back to VI even if I like many of other
editors. It is everywhere.

/Gosi

A foursome was on the last hole and when the last golfer
drove off the tee he hooked into a cow pasture. He advised
his friends to play through and he would meet them at the
clubhouse. They followed the plan and waited for their friend.
After a considerable time he appeared dishoveled, bloody,
and badly beaten up. They all wanted to know what
happened.

He explained that he went over to the cow pasture but could
not find his ball. He noticed a cow wringing her tail in obvious
pain. He went over and lifted her tail and saw a golf ball solidly
embedded.

It was a yellow Titlist so he knew it was not his. A woman
comes out of the bushes apparently searching for her lost golf
ball.

The helpful male golfer lifted the cow's tail and asked, "Does
this look like yours?" and that was the last thing he could
remember.

From ljdickey Fri Nov 27 13:57:28 1998
Subject: RE: Jforum: I-Mac

>
> Now there is a problem with the iMac that it does not allow you to get
> in touch
> with Zip-,Jaz- or discette-drives at all. That will make it very hard to
> move any data to or from it. I think I will wait a bit.

Almost all moving of files that I do is by ftp and e-mail.
My machine at home and my machine at the office are both on
the net.  Both have an internet address.  That makes it a piece
of cake.  I do use floppies occasionally, when I give a file
to a friend.  Yes, disks are faster than using a wire to move
files, but I seldom have the need to move a lot of files.  If I do,
I just start the task and then walk away and do something else,
like eat or sleep.

> That is one of the things I like to know. Does J run well in such
> an emulation?

I have not done this.  It is simply a matter of need with me.  I am
not offering a consulting service.  I can see that you need to run
PC applications, and would want that.  But are you not keeping your
old PC machine, anyway?

> > You might ask about how easy it is to moving from one to another
> > of the various operating systems.  (I have no experience with this.)

> Neither do I that is why I ask.

I was not clear here... what I mean is having two OSs on the machine
at the same time, and toggleing back and forth.  I know (have seen a
demo) that it can be done, and is easy.  I think that you have to adopt
some convention about naming the hard drive so that the C drive on the
PC side corresponds to some direcory on the Mac side.

> > ....
> > and I fire up J7, for instance, and then aske to read a file called
> > "foo.ijs", the program searches for the file as "/u3/ljdickey/J/foo.ijs".
> > Not so with the Macintosh.  I have not figured out a way to do this
> > sort of default path hunting, except to do it (more or less) by
> > hand, by setting a variable "dir" that gives the path from the root
> > to the current directory.  There must be a way.  I just don't
> > know it.
>
> Have you asked ISI or Strand?
No.
> This sounds like a good candidate for the Forum.
Yes.

> > I am discovering the joys of "vim" today.  This is the text
> > editor that replaces "vi" in linux.  Most linux systems us a soft
> > link from "vi" to "vim"  (Vi IMproved).  This software has been
>  > ported to many platforms.
>
> Sounds interesting. I always go back to VI even if I like many of other
> editors. It is everywhere.

Have you seen "vim"?

Lee

From ljdickey@math.uwaterloo.ca  Fri Nov 27 13:57:29 1998
From: Lee Dickey <ljdickey@math.uwaterloo.ca>
Date: Fri, 27 Nov 1998 13:57:28 -0500 (EST)
Subject: RE: Jforum: I-Mac

>
> Now there is a problem with the iMac that it does not allow you to get
> in touch
> with Zip-,Jaz- or discette-drives at all. That will make it very hard to
> move any data to or from it. I think I will wait a bit.

Almost all moving of files that I do is by ftp and e-mail.
My machine at home and my machine at the office are both on
the net.  Both have an internet address.  That makes it a piece
of cake.  I do use floppies occasionally, when I give a file
to a friend.  Yes, disks are faster than using a wire to move
files, but I seldom have the need to move a lot of files.  If I do,
I just start the task and then walk away and do something else,
like eat or sleep.

> That is one of the things I like to know. Does J run well in such
> an emulation?

I have not done this.  It is simply a matter of need with me.  I am
not offering a consulting service.  I can see that you need to run
PC applications, and would want that.  But are you not keeping your
old PC machine, anyway?

> > You might ask about how easy it is to moving from one to another
> > of the various operating systems.  (I have no experience with this.)

> Neither do I that is why I ask.

I was not clear here... what I mean is having two OSs on the machine
at the same time, and toggleing back and forth.  I know (have seen a
demo) that it can be done, and is easy.  I think that you have to adopt
some convention about naming the hard drive so that the C drive on the
PC side corresponds to some direcory on the Mac side.

> > ....
> > and I fire up J7, for instance, and then aske to read a file called
> > "foo.ijs", the program searches for the file as "/u3/ljdickey/J/foo.ijs".
> > Not so with the Macintosh.  I have not figured out a way to do this
> > sort of default path hunting, except to do it (more or less) by
> > hand, by setting a variable "dir" that gives the path from the root
> > to the current directory.  There must be a way.  I just don't
> > know it.
>
> Have you asked ISI or Strand?
No.
> This sounds like a good candidate for the Forum.
Yes.

> > I am discovering the joys of "vim" today.  This is the text
> > editor that replaces "vi" in linux.  Most linux systems us a soft
> > link from "vi" to "vim"  (Vi IMproved).  This software has been
>  > ported to many platforms.
>
> Sounds interesting. I always go back to VI even if I like many of other
> editors. It is everywhere.

Have you seen "vim"?

Lee

From owner-jsoftware@lists.interlog.com  Fri Nov 27 13:57:52 1998
Date: Fri, 27 Nov 1998 19:43:40 +0100 (MET)
From: Martin Neitzel <neitzel@gaertner.de>
Subject: Jforum: Script frets

Joey Tuttle:
>
> as a Unix user, I don't have kind words for [^Z] or 16 bit line-end characters.

This reminds me to remind the forum of same perhaps not so well-known
fact in J.  (As evidenced by some unnecessary CR treatment in a recent
forum message for splitting a (0 : 0)-derived noun.)

J has some sort of convention to use one single linefeed character
(ascii 10, aka \n in C or LF in J) and nothing else to end lines
in text vectors.  Across all platforms.

This convention is exemplified by the behaviour

   a. i. 0 : 0
Joey
Tuttle
)
74 111 101 121 10 84 117 116 116 108 101 10
               ^^                        ^^

even with the Windows implementation.  (And in the II.H example.)

The second indication is that the utilities "freads" and "fwrites" convert
between the host-dependent line ends in files and single-LF frets in the
J string.

The third indication is are the utilities "clipcopy" and "clippaste".
They do the same conversion.

I actually don't find a place where it definitely says that

   0 : script_from_para_scanning_or_boxed_list_or_cut_vector

_always_ returns single LF frets in the noun, but's that what
J does, and it does it everywhere across all platforms.

I recommend to J programmers to continue along these lines (no pun
intended), i.e. to use always LFs for handling multi-line strings (no
matter what platform) and to use the "toHOST" and "toJ" stdlib routines
when it's necessary to interface to the outside world.

							Martin

PS Chris:
toNET and fromNET would be nice additions.  The text-oriented internet
protocols (such as SMTP) all use CRLF "on the wire".

--------------------------------------------------------------------------------
J Forum: for information about this list, see http://www.jsoftware.com/forum.htm

From owner-jsoftware@lists.interlog.com  Sat Nov 28 02:31:19 1998
Date: Sat, 28 Nov 1998 08:04:29 +0100
From: "david alis" <dalis@balcab.ch>
Subject: Jforum: J Primer
References: <199811271843.TAA19800@ohura.gaertner.de>

Who wrote the J primer?

--------------------------------------------------------------------------------
J Forum: for information about this list, see http://www.jsoftware.com/forum.htm

From owner-jsoftware@lists.interlog.com  Sat Nov 28 04:22:28 1998
Organization: Voxel
From: "Andrew Nikitin" <nsg@voxel.kharkov.ua>
Date: Fri, 27 Nov 1998 18:39:01 +0200 (EET)
Subject: Jforum: regexp

What regular expression matches one of the characters
a, [, ]? In perl, for example it would be [a\[\]], but it seems, that in j we
are not allowed to escape characters inside []. Some experiments show, that
one may use [][a]

   '[][a]' rxall 'ab[a]c]'
+-+-+-+-+-+
|a|[|a|]|]|
+-+-+-+-+-+

but not [a\]\[] or [[]a].

   '[[]a]' rxall 'ab[a]c]'
+---+
|[a]|
+---+
   '[a\]\[]' rxall 'ab[a]c]'

set utility from regbuild script doesn't recognize this case correctly.
My proposition is to change it to

set=:'['"_ , (\: '^'&i.)@(/: ']['&i.)@~. , ']'"_

Still, even this doesn't handle all cases: single ^ will disappoint it.

BTW, is there way to move ][ in front of string, and ^ to the end in one step,
not in two, as above implementation does?

nsg

--------------------------------------------------------------------------------
J Forum: for information about this list, see http://www.jsoftware.com/forum.htm

From gosi@centrum.is  Sat Nov 28 05:05:33 1998
From: =?iso-8859-1?Q?Bj=F6rn_Gosi_Helgason?= <gosi@centrum.is>
Subject: RE: Jforum: I-Mac
Date: Fri, 27 Nov 1998 19:17:37 -0000
Return-Receipt-To: <gosi@centrum.is>

>  But are you not keeping your old PC machine, anyway?
I am not just thinking about myself.
I am interested in getting all these things working to be
able to promote J better.

>> Have you asked ISI or Strand?
>No.
>> This sounds like a good candidate for the Forum.
>Yes.

Will you send it in to the forum?

> Have you seen "vim"?

No. I am sure I will like it when I do.
/Gosi

From owner-jsoftware@lists.interlog.com  Sat Nov 28 05:41:14 1998
Date: Sat, 28 Nov 1998 11:29:10 +0100
From: "david alis" <dalis@balcab.ch>
Subject: Jforum: Is there an inverse to 5!:2
References: <ABbMjNsChF@voxel.kharkov.ua>
Content-Transfer-Encoding: 8bit

Is there an inverse to 5!:2  ?

Given an expression such as


Its boxed display, which has three parts, looks like
�����������������������������������������Ŀ
����������������Ŀ�|��������������������Ŀ�
�����������Ŀ�@�]�� ��5:�*�������������Ŀ��
������Ŀ�@�$�� � �� ��  � ��������Ŀ�@�[���
����*�/�� � �� � �� ��  � ���i.�@�$�� � ���
�������ٳ � �� � �� ��  � ���������ٳ � ���
������������ٳ � �� ��  � ��������������ٳ�
�����������������ٳ ���������������������ٳ
�������������������������������������������
Using (5!:2) I can separate the expression into its three parts
'A B C' =.    5!:2  <'a' [.a=.  (((*/)@$)@]) | ((5:) * ((i.@$)@[))

How do I convert A from a boxed list back into something I can execute?
i.e.
A_verb =.(((*/)@$)@])

--------------------------------------------------------------------------------
J Forum: for information about this list, see http://www.jsoftware.com/forum.htm

From owner-jsoftware@lists.interlog.com  Sat Nov 28 06:05:21 1998
References: <365FA07D.ED931CCA@balcab.ch>
Organization: Voxel
From: "Andrew Nikitin" <nsg@voxel.kharkov.ua>
Date: Sat, 28 Nov 1998 11:18:59 +0200 (EET)
Subject: Re: Jforum: J Primer

28-Nov-98 08:04 david alis wrote:
> Who wrote the J primer?
>

Are you starting quiz? And what are prizes?

--------------------------------------------------------------------------------
J Forum: for information about this list, see http://www.jsoftware.com/forum.htm

From owner-jsoftware@lists.interlog.com  Sat Nov 28 06:47:59 1998
Date: Sat, 28 Nov 1998 12:35:28 +0100
From: "david alis" <dalis@balcab.ch>
Subject: Re: Jforum: J Primer
References: <365FA07D.ED931CCA@balcab.ch> <AB30yNsib2@voxel.kharkov.ua>

No.....
My mistake...I should have noticed the Author link sooner.
I wonder who Eric had in mind as the typical reader when he wrote it?

Is there something like a 'Tour of J' (apropos Stroustrup's C++ and/or the K User
Guide) in preparation anywhere?

Andrew Nikitin wrote:

> 28-Nov-98 08:04 david alis wrote:
> > Who wrote the J primer?
> >
>
> Are you starting quiz? And what are prizes?
>
> --------------------------------------------------------------------------------
> J Forum: for information about this list, see http://www.jsoftware.com/forum.htm

--------------------------------------------------------------------------------
J Forum: for information about this list, see http://www.jsoftware.com/forum.htm

From owner-jsoftware@lists.interlog.com  Sat Nov 28 10:56:14 1998
Date: Sat, 28 Nov 1998 10:31:14 -0500
From: Roger Hui <RHui@interlog.com>
Subject: Jforum: Re: Is there an inverse to 5!:2
References: <ABbMjNsChF@voxel.kharkov.ua> <365FD075.3817B041@balcab.ch>

David Alis writes on Saturday, November 28:

> Is there an inverse to 5!:2  ?

No there isn't.  One reason is that the boxed representation is not unambiguous.
e.g.  (,'+')&* and +&* are represented identically.  The atomic representation 5!:1
is unambiguous, and 5!:0 is an adverb that produces the represented from the representee.

--------------------------------------------------------------------------------
J Forum: for information about this list, see http://www.jsoftware.com/forum.htm

From ljdickey Sat Nov 28 13:14:20 1998
Subject: Re:  Jforum: Is there an inverse to 5!:2

Someone recently posted a message with this stuff in it.

> Its boxed display, which has three parts, looks like
> ZDDDDDDDDDDDDDDDDDBDBDDDDDDDDDDDDDDDDDDDDD?
> 3ZDDDDDDDDDDDBDBD?3|3ZDDBDBDDDDDDDDDDDDDD?3
> 33ZDDDDDBDBD?3@3]33 335:3*3ZDDDDDDDDBDBD?33
> 333ZDBD?3@3$33 3 33 33  3 33ZDDBDBD?3@3[333
> 3333*3/33 3 33 3 33 33  3 333i.3@3$33 3 333
> 333@DADY3 3 33 3 33 33  3 33@DDADADY3 3 333
> 33@DDDDDADADY3 3 33 33  3 3@DDDDDDDDADADY33
> 3@DDDDDDDDDDDADADY3 3@DDADADDDDDDDDDDDDDDY3
> @DDDDDDDDDDDDDDDDDADADDDDDDDDDDDDDDDDDDDDDY

This is completely unintelligible.  I am sure that this
must have looked good on someone's screen before it
was sent, but it does not look right to me.

J is a language that stakes some claim to being
a character set that can be used across many platforms.
But the above, I am sure, started out with a lot
of 8-bit drawing character specific to a particular
hardware.

> How do I convert A from a boxed list back into something I can execute?

I would ask, How does the rest of the world convert this
into something that can be read?

>

From owner-jsoftware@lists.interlog.com  Sat Nov 28 13:34:56 1998
Date: Sat, 28 Nov 1998 13:14:22 -0500 (EST)
From: Lee Dickey <ljdickey@math.uwaterloo.ca>
Subject: Re:  Jforum: Is there an inverse to 5!:2

Someone recently posted a message with this stuff in it.

> Its boxed display, which has three parts, looks like
> ZDDDDDDDDDDDDDDDDDBDBDDDDDDDDDDDDDDDDDDDDD?
> 3ZDDDDDDDDDDDBDBD?3|3ZDDBDBDDDDDDDDDDDDDD?3
> 33ZDDDDDBDBD?3@3]33 335:3*3ZDDDDDDDDBDBD?33
> 333ZDBD?3@3$33 3 33 33  3 33ZDDBDBD?3@3[333
> 3333*3/33 3 33 3 33 33  3 333i.3@3$33 3 333
> 333@DADY3 3 33 3 33 33  3 33@DDADADY3 3 333
> 33@DDDDDADADY3 3 33 33  3 3@DDDDDDDDADADY33
> 3@DDDDDDDDDDDADADY3 3@DDADADDDDDDDDDDDDDDY3
> @DDDDDDDDDDDDDDDDDADADDDDDDDDDDDDDDDDDDDDDY

This is completely unintelligible.  I am sure that this
must have looked good on someone's screen before it
was sent, but it does not look right to me.

J is a language that stakes some claim to being
a character set that can be used across many platforms.
But the above, I am sure, started out with a lot
of 8-bit drawing character specific to a particular
hardware.

> How do I convert A from a boxed list back into something I can execute?

I would ask, How does the rest of the world convert this
into something that can be read?

>

--------------------------------------------------------------------------------
J Forum: for information about this list, see http://www.jsoftware.com/forum.htm

From owner-jsoftware@lists.interlog.com  Sat Nov 28 14:32:54 1998
Date: Sat, 28 Nov 1998 14:18:37 -0500
From: David Ness <DNess@home.com>
Subject: Re: Jforum: Is there an inverse to 5!:2
References: <199811281814.NAA25711@math.uwaterloo.ca>

Lee Dickey wrote:
>
> Someone recently posted a message with this stuff in it.
>
> <snip of indecipherable `picture'>
>
> This is completely unintelligible.  I am sure that this
> must have looked good on someone's screen before it
> was sent, but it does not look right to me.
>
> J is a language that stakes some claim to being
> a character set that can be used across many platforms.
> But the above, I am sure, started out with a lot
> of 8-bit drawing character specific to a particular
> hardware.
>
>
> > How do I convert A from a boxed list back into something I can execute?
>
> I would ask, How does the rest of the world convert this
> into something that can be read?
>

One of the things that J *can't* do, it seems to me, is to know what
you are going to use to look at something. You may choose an ASCII
only reader with a limited number of monospaced fonts. I may choose
something with proportional spacing and no graphical characters.
What looks good one place will probably not look good in the other.
Indeed, many things may look bad both places on only a very few will
end up looking good both places.

My guess is that the best compromise is to either send a binary
picture (forbidden on lots of UseNet) or send a specification
of the `input source' and let the picture get generated by the
reader.

--------------------------------------------------------------------------------
J Forum: for information about this list, see http://www.jsoftware.com/forum.htm

From owner-jsoftware@lists.interlog.com  Sat Nov 28 15:11:58 1998
Delivered-To: fixup-forum@jsoftware.com@fixme
Date: Sat, 28 Nov 1998 11:56:29 -0800
From: greg heil <gheil@uswest.net>
Subject: Re: Jforum: boxing
References: <199811281814.NAA25711@math.uwaterloo.ca> <36604C8D.F886D28C@Home.Com>

David Ness wrote:

> My guess is that the best compromise is to either send a binary
 picture (forbidden on lots of UseNet) or send a specification
 of the `input source' and let the picture get generated by the
 reader.

Short of everyone switching over to the monospace.com font for
their fixed font (recommended btw) the courteous thing to do
would be to use the ascii box characters (a radio button in
the "edit | configure | view" dialog box.) for composing
mail messages. Prolly right up there with not using html,
or not broadcasting gifs ;-)

greg heil
mailto:gheil@acm.org
http://www.scn.org/tl/anvil

--------------------------------------------------------------------------------
J Forum: for information about this list, see http://www.jsoftware.com/forum.htm

From owner-jsoftware@lists.interlog.com  Sat Nov 28 17:19:01 1998
Date: Sat, 28 Nov 1998 16:59:50 -0500
From: Murray Eisenberg <murray@math.umass.edu>
Organization: Mathematics & Statistics, Univ. of Mass./Amherst
Subject: Re: Jforum: J Primer
References: <199811271843.TAA19800@ohura.gaertner.de> <365FA07D.ED931CCA@balcab.ch>

The title page of my copy lists the author as Eric B. Iverson.  So does
the page "author" hyperlinked to the Help system title page for the
Primer.

david alis wrote:
>
> Who wrote the J primer?
>
> --------------------------------------------------------------------------------
> J Forum: for information about this list, see http://www.jsoftware.com/forum.htm

--
  Murray Eisenberg                  Internet:  murray@math.umass.edu
  Mathematics & Statistics Dept.    Voice:  413-545-2859 (W)
  University of Massachusetts               413-549-1020 (H)
  Amherst, MA 01003                 Fax:    413-545-1801

--------------------------------------------------------------------------------
J Forum: for information about this list, see http://www.jsoftware.com/forum.htm

From owner-jsoftware@lists.interlog.com  Sat Nov 28 19:19:37 1998
Date: Sat, 28 Nov 98 16:58:45 MST
In-Reply-To: <199811281814.NAA25711@math.uwaterloo.ca>
From: Joey Tuttle <jkt@pocus.hexagon.com>
Subject: Re:  Jforum: Is there an inverse to 5!:2

At 13:14 -0500 11/28/98, Lee Dickey wrote:
>J is a language that stakes some claim to being
>a character set that can be used across many platforms.

> I would ask, How does the rest of the world convert this
> into something that can be read?

Hear hear! It is amazing how easy it is to create stuff that
is difficult/impossible to use in a discussion. While I think
that "box drawing characters" may look "nice" on some displays,
I really prefer to stick to - | and + since they look pretty
good on many different media (at least you can see the content).
Providing, of course, one uses a monospaced font... I am also
"amused" that, through the wonders of True Type, lessons learned
over 500 years ago have been forgotten. I speak of the fact that
I have seen several TT fonts where the counting numbers are not of
uniform width... Makes it hard to display a table that lines up!

I continue to laugh each time the subject repeats in CLA - after
all, everyone uses displays that can show any glyph, what can
be the problem???  Of course, this problem is not restricted to
things like APL (and J with box chars) - I have been amazed at
how difficult it is to provide something like a "chat room" that
can deal with conventional math notation. I agree with what -

At 11:56 -0800 11/28/98, greg heil wrote:
>....  the courteous thing to do
>would be to use the ascii box characters for composing
>mail messages. Prolly right up there with not using html,
>or not broadcasting gifs ;-)

Again - Hear hear!!

--------------------------------------------------------------------------------
J Forum: for information about this list, see http://www.jsoftware.com/forum.htm

From owner-jsoftware@lists.interlog.com  Sun Nov 29 07:15:28 1998
Date: Sun, 29 Nov 1998 12:59:58 +0100
From: "david alis" <dalis@balcab.ch>
Subject: Jforum: Is there an inverse to 5!:2 was the wrong question
References: <ABbMjNsChF@voxel.kharkov.ua> <365FD075.3817B041@balcab.ch> <36601742.47AB@Interlog.Com>

> Roger Hui wrote:

> David Alis writes on Saturday, November 28:
>
> > Is there an inverse to 5!:2  ?
>
> No there isn't.  One reason is that the boxed representation is not unambiguous.
> e.g.  (,'+')&* and +&* are represented identically.  The atomic representation 5!:1
> is unambiguous, and 5!:0 is an adverb that produces the represented from the representee.
>

>
--------------------

I guess I asked the wrong question.
Are there any  tools that would help me understand how the different parts of an expression
fit together?
The boxed display (aka 5!:2) is very useful. (The tree display (aka 5!:4) much less so). The
reason for its effectiveness  is  that it always returns an array of length 1,2 or 3 - and
all proper expressions, it seems, are the result of combining either 2 or 3 sub-expressions.
It would have been very helpful  if an inverse to 5!:2 could have been applied against each
of the representations of the sub-expressions in the result. In this way the subexpressions
could have been assigned  a name.

In view of Roger's reply, I think I should have asked the questions:
If the shape of the result of 5!:2 is k, how do I assign into each of  k names the J
expression represented by each of the items in 5!:2.
Would parsing the result of the fully parenthised result from 5!:6 give the required result?
If so, then  does anyone have such code they would be willing to post?

Example:
What would people suggest I do to figure out how the  following expression works; how should
I change it so that it works with characters?. ( It is the quicksort derived from Phrases
Section 2.H (gerunds) phrh2.ijs..)

]`($:@(] #~ ] < {.) , (] #~ ] = {.) , $:@(] #~ ] > {.))@.(1: < #)

====================================
For interest, here is the source from  Phrh2.ijs
a5=: sel=: 1 : '] #~ ] x. {.'     NB.Selection for Quicksort
m6=: qs=: ] ` ($:@(<sel), =sel,     $:@(>sel)) @. (1:<#)  NB.Quicksort defined recursively
And here are the linear  displays for qs are
   5!:5<'qs'
]`($:@(] #~ ] < {.) , (] #~ ] = {.) , $:@(] #~ ] > {.))@.(1: < #)
   5!:6<'qs'
(]`(($:@(] (#~) (] < {.))) , ((] (#~) (] = {.)) , ($:@(] (#~) (] > {.))))))@.((1:) < #)

--------------------------------------------------------------------------------
J Forum: for information about this list, see http://www.jsoftware.com/forum.htm

From owner-jsoftware@lists.interlog.com  Sun Nov 29 10:23:20 1998
From: Bjorn Helgason <gosi@centrum.is>
Subject: Jforum: Contact us - changerequest
Date: Sun, 29 Nov 1998 15:12:07 -0000
Content-Type: multipart/mixed; boundary="---- =_NextPart_000_01BE1BAA.D31DFA20"

------ =_NextPart_000_01BE1BAA.D31DFA20

I have changed internetserviceprovider so

Please change the entry on:
http://www.jsoftware.com/contact/contact.htm

To:

Bjorn Helgason
Fugl & Fiskur hf
Spitalastig 4
101 Reykjavik
Iceland
Tel: 354-562-5441
Email: gosi@centrum.is

/Gosi	-	Jack of all trades
Bjorn Helgason, Spitalastig 4, 101 Rvik, 562 5441, gosi@centrum.is
------ =_NextPart_000_01BE1BAA.D31DFA20
Content-Type: application/ms-tnef
Content-Transfer-Encoding: base64

eJ8+Ih8PAQaQCAAEAAAAAAABAAEAAQeQBgAIAAAA5AQAAAAAAADoAAEIgAcAGAAAAElQTS5NaWNy
b3NvZnQgTWFpbC5Ob3RlADEIAQ2ABAACAAAAAgACAAEEkAYAoAEAAAEAAAAQAAAAAwAAMAIAAAAL
AA8OAAAAAAIB/w8BAAAARQAAAAAAAACBKx+kvqMQGZ1uAN0BD1QCAAAAAGZvcnVtQEpTb2Z0d2Fy
ZS5Db20AU01UUABmb3J1bUBKU29mdHdhcmUuQ29tAAAAAB4AAjABAAAABQAAAFNNVFAAAAAAHgAD
MAEAAAAUAAAAZm9ydW1ASlNvZnR3YXJlLkNvbQADABUMAQAAAAMA/g8GAAAAHgABMAEAAAAWAAAA
J2ZvcnVtQEpTb2Z0d2FyZS5Db20nAAAAAgELMAEAAAAZAAAAU01UUDpGT1JVTUBKU09GVFdBUkUu
Q09NAAAAAAMAADkAAAAACwBAOgEAAAAeAPZfAQAAABQAAABmb3J1bUBKU29mdHdhcmUuQ29tAAIB
918BAAAARQAAAAAAAACBKx+kvqMQGZ1uAN0BD1QCAAAAAGZvcnVtQEpTb2Z0d2FyZS5Db20AU01U
UABmb3J1bUBKU29mdHdhcmUuQ29tAAAAAAMA/V8BAAAAAwD/XwAAAAACAfYPAQAAAAQAAAAAAAAC
8VQBBIABABsAAABDb250YWN0IHVzIC0gY2hhbmdlcmVxdWVzdACwCQEFgAMADgAAAM4HCwAdAA8A
DAAHAAAAHwEBIIADAA4AAADOBwsAHQAPAAkABgAAABsBAQmAAQAhAAAANzhERkQzMkZBOTFCQkUx
MThDMkQ4MkU0MTZDNDE1RDkAUwcBA5AGANQEAAAhAAAACwACAAEAAAALACMAAAAAAAMAJgAAAAAA
CwApAAAAAAADAC4AAAAAAAMANgAAAAAAQAA5AMDyPqGqG74BHgBwAAEAAAAbAAAAQ29udGFjdCB1
cyAtIGNoYW5nZXJlcXVlc3QAAAIBcQABAAAAFgAAAAG+G6qhCmTQOSKHnBHSigUAAAAAAAAAAB4A
HgwBAAAABQAAAFNNVFAAAAAAHgAfDAEAAAAQAAAAZ29zaUBjZW50cnVtLmlzAAMABhBxj0FwAwAH
EBMBAAAeAAgQAQAAAGUAAABJSEFWRUNIQU5HRURJTlRFUk5FVFNFUlZJQ0VQUk9WSURFUlNPUExF
QVNFQ0hBTkdFVEhFRU5UUllPTjpIVFRQOi8vV1dXSlNPRlRXQVJFQ09NL0NPTlRBQ1QvQ09OVEFD
VEhUAAAAAAIBCRABAAAAvwEAALsBAACbAgAATFpGdQTqKvcDAAoAcmNwZzEyNRYyAPgLYG4OEDAz
OZ0B9yACpAPjAgBjaArAYHNldDAgBxMCgH2zCoAIyCA7CW8OMDUS32cKYAKACoF1YwBQCwNjiwBB
DwUzC6YgSSARALh2ZSAQ8Q8gCYAgC4BOdASREUARMHJ2DeBljnADYBkgBIEgc28Koh8KhAqEFhIO
UA8GIFBsjGVhETAX5SB0aBfQoQnwdHJ5IAIgOhoVFRYydQMgaAJAcDovZC93HwAuahnwAYB3yQrA
ZS4FoG0vBaACMNUA0HQgFi4ekG0WIQFAZx5gAUAaKVRvHaYaI0KGagWwA6BIZWxnHDAjAiAaFEZ1
ZwMgJiBaRgQAawhwF5BmGhRTDHBpAZALYHN0aWcsIDQaFA9AMQfwZXmka2oXsGlrGhRJGUAPDwEL
MSJTI/A6IDM1IDQtNTYyKdA0NDsncBoURQDAAxApgGdvjQCQQBlAHTF1bS4EAB8aHh33GnoWdyGh
IC9HUytRDIIgLS+jSgDQa7kdcGYgB0ADIB1AYQEA+ywlI4wsBgAmOjKwJ1Mn8f8ysCnhNFAqMTKw
K00qZRHxAgA2oAADABAQAAAAAAMAERAAAAAAAwCAEP////9AAAcw8IEoNaobvgFAAAgw8IEoNaob
vgELAAGACCAGAAAAAADAAAAAAAAARgAAAAADhQAAAAAAAAMABYAIIAYAAAAAAMAAAAAAAABGAAAA
AFKFAAC3DQAAHgAGgAggBgAAAAAAwAAAAAAAAEYAAAAAVIUAAAEAAAAEAAAAOC4wAAMAB4AIIAYA
AAAAAMAAAAAAAABGAAAAAAGFAAAAAAAACwAQgAggBgAAAAAAwAAAAAAAAEYAAAAADoUAAAAAAAAD
ABGACCAGAAAAAADAAAAAAAAARgAAAAAQhQAAAAAAAAMAEoAIIAYAAAAAAMAAAAAAAABGAAAAABGF
AAAAAAAAAwAVgAggBgAAAAAAwAAAAAAAAEYAAAAAGIUAAAAAAAAeACWACCAGAAAAAADAAAAAAAAA
RgAAAAA2hQAAAQAAAAEAAAAAAAAAHgAmgAggBgAAAAAAwAAAAAAAAEYAAAAAN4UAAAEAAAABAAAA
AAAAAB4AJ4AIIAYAAAAAAMAAAAAAAABGAAAAADiFAAABAAAAAQAAAAAAAAAeAD0AAQAAAAEAAAAA
AAAAAwANNP03AAD75Q==

------ =_NextPart_000_01BE1BAA.D31DFA20--

--------------------------------------------------------------------------------
J Forum: for information about this list, see http://www.jsoftware.com/forum.htm

From owner-jsoftware@lists.interlog.com  Sun Nov 29 10:46:43 1998
Date: Sun, 29 Nov 1998 16:34:38 +0100 (MET)
From: Martin Neitzel <neitzel@gaertner.de>
Subject: Re:  Jforum: regexp

"Andrew Nikitin" <nsg@voxel.kharkov.ua>
>
> What regular expression matches one of the characters
> a, [, ]? In perl, for example it would be [a\[\]], but it seems, that in j we
> are not allowed to escape characters inside []. Some experiments show, that
> one may use [][a]

J uses standard Extended Regular Expressions, not perl regexps which
are also nice but different.  "Standard" means "as defined by ISO/IEC
9945:2 1993 (E) aka IEEE Std 1003.2-1992 aka POSIX.2.  The J lab on
regexps is just a gentle introduction to make it easy to make use
of them.  It glosses over some of the more arcane points.

So here's the beef.  To quote Section 2.8.3.2, "RE Bracket
Expression":

	(1) [...]  The right bracket (]) shall loose its special
	meaning and represent itself in a bracket expression if it
	occurs first in the list [after an initial circumflex (^), if
	any].  Otherwise, it shall terminate the bracket expression
	[...]  The special special characters

		. * [ \

	(period, asterisk, left bracket, and backslash, repectively)
	shall loose their special meaning within a bracjet expression.
	[...]

	(3) A nonmatching list expression begins with a circumflex (^)
	[...] The circumflex shall have this special meaning only when
	it occurs first in the list, immediately following the left
	bracket.

I omitted distracting rules pertaining to the embedding of [.collating
symbols.], [=equvalence classes=], and [:character classes:] which extend
the above "naturally".

To buy the POSIX standards itself is very expensive (but worthwhile
if you are a professional Unix shop).  For other mortal souls,
the unix system's man pages on egrep(1) and/or regexp(5) will be
good resources for information.

To conclude:
(1) To find detailed infos on J regexps, it's best to have access
    to some unix system.
(2) Be sure to look at some documentation of "extended regular expressions"
    (as used in unix with egrep(1) and awk(1)), not "basic regular
    expressions" (as used in grep(1), ed(1), vi(1), and sed(1)), and
    neither the matching expressions coming with perl(1).

>
>    '[][a]' rxall 'ab[a]c]'
> +-+-+-+-+-+
> |a|[|a|]|]|
> +-+-+-+-+-+

Perfect.

> set utility from regbuild script [...]

Sorry, I currently lack the time to look into this.  Perhaps
somebody else can.

						Martin Neitzel

--------------------------------------------------------------------------------
J Forum: for information about this list, see http://www.jsoftware.com/forum.htm

From owner-jsoftware@lists.interlog.com  Sun Nov 29 12:17:31 1998
Date: Sun, 29 Nov 1998 12:02:32 -0500
From: Roger Hui <RHui@interlog.com>
Subject: Jforum: Re: Is there an inverse to 5!:2 was the wrong question
References: <ABbMjNsChF@voxel.kharkov.ua> <365FD075.3817B041@balcab.ch> <36601742.47AB@Interlog.Com> <3661373E.5E6F3871@balcab.ch>

David Alis writes on Sunday, November 29:

> Are there any  tools that would help me understand how the different parts of an expression
> fit together?
> The boxed display (aka 5!:2) is very useful. (The tree display (aka 5!:4) much less so). The
> reason for its effectiveness  is  that it always returns an array of length 1,2 or 3 - and
> all proper expressions, it seems, are the result of combining either 2 or 3 sub-expressions.
> It would have been very helpful  if an inverse to 5!:2 could have been applied against each
> of the representations of the sub-expressions in the result. In this way the subexpressions
> could have been assigned  a name.
>
> In view of Roger's reply, I think I should have asked the questions:
> If the shape of the result of 5!:2 is k, how do I assign into each of  k names the J
> expression represented by each of the items in 5!:2.

The question may be different but the answer here is the same:  The atomic representation
5!:1 is more systematic and therefore more amenable to analysis and automatic manipulation.
For example, although it is true that the boxed representation 5!:2 always returns 1,2, or 3
elements, which element is the "root function" and which are the arguments?

> Would parsing the result of the fully parenthised result from 5!:6 give the required result?
> If so, then  does anyone have such code they would be willing to post?
>
> Example:
> What would people suggest I do to figure out how the  following expression works; how should
> I change it so that it works with characters?. ( It is the quicksort derived from Phrases
> Section 2.H (gerunds) phrh2.ijs..)
>
> ]`($:@(] #~ ] < {.) , (] #~ ] = {.) , $:@(] #~ ] > {.))@.(1: < #)      NB. [**]
>
> ====================================
> For interest, here is the source from  Phrh2.ijs
> a5=: sel=: 1 : '] #~ ] x. {.'     NB.Selection for Quicksort
> m6=: qs=: ] ` ($:@(<sel), =sel,     $:@(>sel)) @. (1:<#)  NB.Quicksort defined recursively

It is much easier to analyze qs (m6) itself, rather than the expression ** above derived
from qs, because it suppresses the details of sel.

To have a quicksort that works on different data types, simply supply comparatives
to sel appropriate to that data type.  For example:

sel=: 1 : '] #~ ] x. {.'
qs =: ] ` ($:@(<sel), =sel, $:@(>sel)) @. (1:<#)

sgn=: ((0&~: i. 1:) { ,&0) @: * @: - " 1

qs1=: ] ` ($:@((_1: = sgn)         sel), -:"1 sel, $:@((1: = sgn)         sel)) @. (1:<#)
qs2=: ] ` ($:@(<&(a.&i.)           sel), -:"1 sel, $:@(>&(a.&i.)          sel)) @. (1:<#)
qs3=: ] ` ($:@((_1: = sgn&(a.&i.)) sel), -:"1 sel, $:@((1: = sgn&(a.&i.)) sel)) @. (1:<#)

The dyad sgn applies to numeric vectors of equal length, and returns _1, 0, or 1 depending
on whether the left argument is less than, equal to, or greater than the right argument.
qs1 is quicksort on numeric matrices; qs2 is quicksort on literal vectors; qs3 is quicksort
on literal matrices.  Thus:

   ] x=: ?.7 4$10
1 7 4 5
2 0 6 6
9 3 5 8
0 0 5 6
0 3 0 4
6 5 9 8
5 0 6 4

   2 0 6 6 sgn x
1 0 _1 1 1 _1 _1

   qs1 x
0 0 5 6
0 3 0 4
1 7 4 5
2 0 6 6
5 0 6 4
6 5 9 8
9 3 5 8

   ] a=:>;:'the quick brown fox jumps over the lazy dog'
   a
the
quick
brown
fox
jumps
over
the
lazy
dog
  qs3 a
brown
dog
fox
jumps
lazy
over
quick
the
the

Literals can also be sorted by sorting numerics under indexing into the alphabet.  Thus:

   qs4=: qs1&.(a.&i.)
   (qs3 -: qs4) a
1

--------------------------------------------------------------------------------
J Forum: for information about this list, see http://www.jsoftware.com/forum.htm

From owner-jsoftware@lists.interlog.com  Sun Nov 29 12:24:43 1998
Date: Sun, 29 Nov 1998 12:11:32 -0500
From: Roger Hui <RHui@interlog.com>
Subject: Jforum: Re: Is there an inverse to 5!:2 was the wrong question
References: <ABbMjNsChF@voxel.kharkov.ua> <365FD075.3817B041@balcab.ch> <36601742.47AB@Interlog.Com> <3661373E.5E6F3871@balcab.ch> <36617E28.4630@Interlog.Com>

Roger Hui writes on Sunday, November 29:

> qs2=: ] ` ($:@(<&(a.&i.)           sel), -:"1 sel, $:@(>&(a.&i.)          sel)) @. (1:<#)

Oops, the "equal" should be = instead of -:"1 .  Thus:

   qs2=: ] ` ($:@(<&(a.&i.) sel), = sel, $:@(>&(a.&i.) sel)) @. (1:<#)

   qs2 'Madam, I''m Adam.'
  ',.AIMaaaddmmm

--------------------------------------------------------------------------------
J Forum: for information about this list, see http://www.jsoftware.com/forum.htm

From owner-jsoftware@lists.interlog.com  Mon Nov 30 01:24:10 1998
Date: Mon, 30 Nov 1998 01:01:13 -0500
From: Roger Hui <RHui@interlog.com>
Subject: Jforum: Re: J program question.
References: <199811292224.WAA13320@yrloc2.tor.soliton.com>

Brian Schott writes on Saturday, November 28:

> Happy Thanksgiving to all. I have a J programming question.
> Any ideas would be appreciated.
>
> The elements of the boxes in the boxed array k below
> represent connection weights between a feedforward
> artificial neural network with architecture 2 3 3 1 (this
> network representation does not contain the "bias" nodes);
> there are two input nodes, 2 hidden layers with 3 nodes
> each, and a single output node.
>
>    ]k =:(2 3


abcdef');(3 3


ghijklmno');3 1


pqr'
> +---+---+-+
> |abc|ghi|p|
> |def|jkl|q|
> |   |mno|r|
> +---+---+-+
>
> I have successfully created a list of the 18 possible paths
> (*/2 3 3 1) each of length three in the array rk:
>
>    Y0 =: >@(;/) .(,"0)
>    Y1 =: >@(;/) .(,"1 0)
>    ]rk =: ,"2]0|:,"_2] 0 1 2|:((0{k) Y0&> 1{k) Y1 >2{k
> aaabbbcccdddeeefff
> ghijklmnoghijklmno
> pqrpqrpqrpqrpqrpqr
>
> Similarly the 36 paths (*/2 3 2 3) for the architecture
> representing the connections boxed arrays in l, are in rl:
>
>    ]l =:(2 3


abcdef');(3 2


ghijkl');2 3


mnopqr'
> +---+--+---+
> |abc|gh|mno|
> |def|ij|pqr|
> |   |kl|   |
> +---+--+---+
>    ]rl =: ,"2]0|:,"_2] 0 1 2|:((0{l) Y0&> 1{l) Y1 >2{l
> aaaaaabbbbbbccccccddddddeeeeeeffffff
> ggghhhiiijjjkkklllggghhhiiijjjkkklll
> mnopqrmnopqrmnopqrmnopqrmnopqrmnopqr
>
> I have not been successful in generalizing the program which
> produces result arrays above (eg, rk and rl) to other inputs
> for which the number of hidden layers (boxed terms) is
> greater.
>
> The approach I have been using (which is embodied in the
> verbs Y0 and Y1) is the dot product. This is not essential,
> but it appeals to my understanding of the topology. But this
> approach is certainly not a requirement. Notice that the
> adjacent boxes are pairwise matrix multiplication
> conformable. In other words the boxed ranks of the three
> boxes in k are kk =: 2 3;3 3;3 1 and in this case the
> conformability requires that the adjacent values are all 3,
> but that is coincidental.
>
> The order of the columns in the result arrays is not
> important, by the way. I need to use only J6.2 and earlier
> primitives, not newer primitives.
>
> Does anyone see a way to generalize this result?

The problem can be solved in the form   > f&.>/y   where f
is an appropriate inner product.  (The following examples
are best viewed using a monospaced font.)

   f=: , . (,&.>)

   ] k =:(2 3


abcdef');(3 3


ghijklmno');3 1


pqr'
+---+---+-+
|abc|ghi|p|
|def|jkl|q|
|   |mno|r|
+---+---+-+
   > f&.>/ k
+---+---+---+---+---+---+---+---+---+
|agp|ahq|air|bjp|bkq|blr|cmp|cnq|cor|
+---+---+---+---+---+---+---+---+---+
|dgp|dhq|dir|ejp|ekq|elr|fmp|fnq|for|
+---+---+---+---+---+---+---+---+---+
   |: > , > f&.>/ k
aaabbbcccdddeeefff
ghijklmnoghijklmno
pqrpqrpqrpqrpqrpqr

   ] h=: (2 3


abcdef');(3 4


ghijklmnopqr');(4 1


stuv');1 3


wxy'
+---+----+-+---+
|abc|ghij|s|wxy|
|def|klmn|t|   |
|   |opqr|u|   |
|   |    |v|   |
+---+----+-+---+

   > f&.>/ h
+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----
|agsw|agsx|agsy|ahtw|ahtx|ahty|aiuw|aiux|aiuy|ajvw|ajvx|ajvy|bksw|bksx|bksy  ...
+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----
|dgsw|dgsx|dgsy|dhtw|dhtx|dhty|diuw|diux|diuy|djvw|djvx|djvy|eksw|eksx|eksy
+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----

   |: > ,> f&.>/ h
aaaaaaaaaaaabbbbbbbbbbbbccccccccccccddddddddddddeeeeeeeeeeeeffffffffffff
ggghhhiiijjjkkklllmmmnnnooopppqqqrrrggghhhiiijjjkkklllmmmnnnooopppqqqrrr
ssstttuuuvvvssstttuuuvvvssstttuuuvvvssstttuuuvvvssstttuuuvvvssstttuuuvvv
wxywxywxywxywxywxywxywxywxywxywxywxywxywxywxywxywxywxywxywxywxywxywxywxy

   {body}amp;.> f&.>/\. h
+----+----+---+---+
|2 36|3 12|4 3|1 3|
+----+----+---+---+
   {body}amp;.> h
+---+---+---+---+
|2 3|3 4|4 1|1 3|
+---+---+---+---+

--------------------------------------------------------------------------------
J Forum: for information about this list, see http://www.jsoftware.com/forum.htm