For Programmers: Free Programming Magazines  


Home > Archive > APL > June 2006 > IP Sharp APL -- WSPRINT.ZIP









You are viewing an archived Text-only version of the thread. To view this thread in it's original format and/or if you want to reply to this thread please [click here]

 

Author IP Sharp APL -- WSPRINT.ZIP
Fredric L. Rice

2006-06-17, 6:56 pm

Greetings!

I thought I'd subscribe for a while and see if anyone would like
to swap some IP Sharp APL workspaces. I'd like to see if I can get
some APL workspaces if anyone wants to give them to me. }:-}

I've put up

http://www.linkline.com/personal/frice/wsprint.zip

That ZIP file contains an IP Sharp workspace that contains a single
function called wsprint. It allows you to )copy the workspace into
your own, run wsprint, and it will export every function and variable
in your workspace to a file called WSPRINT.OUT. That file can then
be printed to a LaserJet or C.Itoh printer using one of the EXE files
also contained in the ZIP file.

I wrote wsprint because I had no way to dump my APL workspaces to
paper.

My email address is frice@skeptictank.org

Incidentally, if you'd like a copy of APLFONT.COM that reconfigures
the font for your DOS window to give APL characters, let me know. It
was originally written by IP Sharp but I reworked it a bit.

---
"de omnibus dubitandum" All is to be doubted --- Descartes
http://www.SkepticTank.org/ http://www.SkepticFiles.ORG/

Ibeam2000

2006-06-18, 7:56 am

One Sharp APL workspace I would like to see again is "778 NASTY". This
workspace contained all sort of examples of incredibly bad one liners
and system-specific programming techniques. Quite probably many of the
examples would not make sense outside of Sharp APL mainframe, but would
still be interesting to look at.

Andrew Shepp

2006-06-18, 6:56 pm

If your <aplfont.com> will rework fonts in a DOS5 (or whatever) box
called from WinXP, I could use it, I just discovered a five-page WSDOC
printout of a very large workspace accumulating all the APL work I've
done since 1990, so the floppy must be around here somewhere; the Dell
machine with the original died DIED DEAD DEAD DEAD when I tried to put
up a Suse partition; if I can recover it I'd like a WSDOC or WSPRINT to
put them on longer-living paper.
Yours/Andrew



Fredric L. Rice wrote:
> Greetings!
>
> I thought I'd subscribe for a while and see if anyone would like
> to swap some IP Sharp APL workspaces. I'd like to see if I can get
> some APL workspaces if anyone wants to give them to me. }:-}
>
> I've put up
>
> http://www.linkline.com/personal/frice/wsprint.zip
>
> That ZIP file contains an IP Sharp workspace that contains a single
> function called wsprint. It allows you to )copy the workspace into
> your own, run wsprint, and it will export every function and variable
> in your workspace to a file called WSPRINT.OUT. That file can then
> be printed to a LaserJet or C.Itoh printer using one of the EXE files
> also contained in the ZIP file.
>
> I wrote wsprint because I had no way to dump my APL workspaces to
> paper.
>
> My email address is frice@skeptictank.org
>
> Incidentally, if you'd like a copy of APLFONT.COM that reconfigures
> the font for your DOS window to give APL characters, let me know. It
> was originally written by IP Sharp but I reworked it a bit.
>
> ---
> "de omnibus dubitandum" All is to be doubted --- Descartes
> http://www.SkepticTank.org/ http://www.SkepticFiles.ORG/


TaliesinSoft

2006-06-18, 6:56 pm

On Sun, 18 Jun 2006 05:41:11 -0500, Ibeam2000 wrote
(in article <1150627271.919418.186990@y41g2000cwy.googlegroups.com> ):

> One Sharp APL workspace I would like to see again is "778 NASTY". This
> workspace contained all sort of examples of incredibly bad one liners
> and system-specific programming techniques. Quite probably many of the
> examples would not make sense outside of Sharp APL mainframe, but would
> still be interesting to look at.


Back in the early seventies, in the days of pre-APL2 and such, Larry Breed
issued a challenge for someone to paraphrase reshape without using the rho
symbol in the solution.

I submitted something like the following

Given say

X assign 2 3 4

Y assign 1000+ iota 30

then

Y [ ( , Q) iota Q assign ? 1E6 + X take 0]

where assign, iota, and take represent the appropriate APL glyphs

gives the desired result -- at least I was never able to get it to fail.

At the APL conference in Pisa Roy Sykes dubbed this the most pornographic APL
expression he had yet encountered!


--
James Leo Ryan ..... Austin, Texas ..... taliesinsoft@mac.com

Fredric L. Rice

2006-06-18, 9:56 pm

"Andrew Shepp" <ashepp0@gmail.com> wrote:

>If your <aplfont.com> will rework fonts in a DOS5 (or whatever) box
>called from WinXP, I could use it, I just discovered a five-page WSDOC


Don't know if it'll help but try:

http://www.linkline.com/personal/frice/aplfont.com

And file wsprint.zip is also stll there at

http://www.linkline.com/personal/frice/wsprint.zip

I just put the aplfont.com file there. If you can't get it, email
me at frice@skeptictank.org and I'll send it to you. Don't know if
it'll work but you could try it.

>printout of a very large workspace accumulating all the APL work I've
>done since 1990, so the floppy must be around here somewhere; the Dell
>machine with the original died DIED DEAD DEAD DEAD when I tried to put
>up a Suse partition; if I can recover it I'd like a WSDOC or WSPRINT to
>put them on longer-living paper.


That's a good idea. I found a whole bunch of APL code put to paper
that was printed in 1979 and while it's probably on magnetic tape
some where, there's nothing left that can read it so the paper is
the only easy copy of it.

---
http://www.skeptictank.org/mine006.jpg

Ibeam2000

2006-06-19, 7:56 am

An interesting nasty.

I suppose ?(x/X)+... would work as well as ?1e6+, particularily on
machines with 2 byte integers and when the number of items is small
enough (i.e. <32767).

This fragment fails on undertake. 6 rho 1 2 3.

The one thing I really wanted to see was the way two variables were
swapped without any explicit assignment.

TaliesinSoft

2006-06-19, 6:59 pm

On Mon, 19 Jun 2006 07:29:27 -0500, Ibeam2000 wrote
(in article <1150720167.639836.38990@r2g2000cwb.googlegroups.com> ):

> An interesting nasty.
>
> I suppose ?(x/X)+... would work as well as ?1e6+, particularily on
> machines with 2 byte integers and when the number of items is small
> enough (i.e. <32767).
>
> This fragment fails on undertake. 6 rho 1 2 3.
>
> The one thing I really wanted to see was the way two variables were
> swapped without any explicit assignment.


After I posted I realized I had forgotten to add the code that corrects for
the above "undertake" problem. Have sympathy! I'm recalling something I wrote
some 30 years ago!

Tonight I'll play around a bit and try to add the additioinal code. At the
time I originally composed it the expression did indeed cover all possible
cases of reshape.



--
James Leo Ryan ..... Austin, Texas ..... taliesinsoft@mac.com

RAV

2006-06-24, 7:59 am

TaliesinSoft wrote:
> On Sun, 18 Jun 2006 05:41:11 -0500, Ibeam2000 wrote
> (in article <1150627271.919418.186990@y41g2000cwy.googlegroups.com> ):
>
>
> Back in the early seventies, in the days of pre-APL2 and such, Larry Breed
> issued a challenge for someone to paraphrase reshape without using the rho
> symbol in the solution.
>
> I submitted something like the following
>
> Given say
>
> X assign 2 3 4
>
> Y assign 1000+ iota 30
>
> then
>
> Y [ ( , Q) iota Q assign ? 1E6 + X take 0]
>
> where assign, iota, and take represent the appropriate APL glyphs
>
> gives the desired result -- at least I was never able to get it to fail.
>
> At the APL conference in Pisa Roy Sykes dubbed this the most pornographic APL
> expression he had yet encountered!
>


That's high "praise" from Roy, indeed!

Not this is exactly pornographic, but, since you mentioned Roy: When
Roy was developing the STSC EMMA product, a few of us were tasked with
finding very fast (using virtually no CPU) implicit ways of checking the
arguments to the EMMA functions and signalling errors if they were
invalid. He wanted no use of error handling, but wanted actual APL
errors signalled within the called APL functions. For example, to make
sure that a function argument was numeric, perform monadic + on it,
which for any numeric simply passed the argument pointer through (a
no-op), but would signal DOMAIN ERROR for anything non-numeric (yes I
know, not for empties). To make sure it was a vector, index it with [],
which again simply passed vectors through with no work, but for
non-vectors would signal RANK ERROR. To ensure proper length (i.e. 2),
perform 1 1/ (in those days, 1 1/,3 signalled a length error). So, to
make sure you were passing a 2-element numeric vector, perform:

arg {<-} +1 1/arg[]

p
..

--
Posted via a free Usenet account from http://www.teranews.com

phil chastney

2006-06-24, 7:59 am

Ibeam2000 wrote:

> The one thing I really wanted to see was the way two variables were
> swapped without any explicit assignment.


IIRC, this depended on the fact that the interpreter produced
a temporary copy when doing a ravel operation

/phil

Sponsored Links







Also available: Server administration forum archive | Web Design forum archive | Software forum archive | Hardware reviews archive

Copyright 2009 codecomments.com