home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ftp.cs.arizona.edu
/
ftp.cs.arizona.edu.tar
/
ftp.cs.arizona.edu
/
icon
/
newsgrp
/
group86.txt
< prev
next >
Wrap
Text File
|
1988-10-29
|
21KB
|
759 lines
From m14051%mwvm@mitre.ARPA Tue Feb 25 17:09:45 1986
From: m14051%mwvm@mitre.ARPA
Organization: The MITRE Corp., Washington, D.C.
Apparently-To: icon-group%arizona.csnet@csnet-relay.arpa
Status: R
To: ICON-GROUP%ARIZONA.CSNET@CSNET-RELAY.A
From: John DeCarlo <M14051%mwvm@mitre.arpa>
Subject: Placement on the ICON-Group mailing list
Would you please putme on the Icon Group Mailing List?
Thank you very much.
John DeCarlo
<M14051%mwvm@mitre.arpa>
From whm Mon Mar 10 20:52:41 1986
From: "Bill Mitchell" <whm>
To: icon-group
Subject: Testing...
Status: R
Please ignore this test. (!)
From ralph Tue Mar 11 05:32:28 1986
From: "Ralph Griswold" <ralph>
To: icon-group@arizona
Subject: Icon Newsletter #20
Status: R
Icon Newsletter #20 was mailed out several weeks ago to persons who were
then on our mailing list. It was sent bulkrate to addresses in the United
States, but it should have been delivered by now.
If you did not get a copy or know of someone who would like a copy but who
is not on our list, send us a postal address and we'll mail one.
From ralph Sat Mar 15 08:42:07 1986
From: "Ralph Griswold" <ralph>
To: icon-group@arizona
Subject: math procedures
Status: R
George Yee, a graduate student in the Department of Computer Science
at the University of Arizona, has written a package of math procedures
in Icon. A UNIX-style manual page and the source code for these procedures
follow:
-----------------------------------------------------------------------
MATH(3.icon) Icon Program Library MATH(3.icon)
NAME
sin, cos, tan, asin, acos, atan, atan2 - trigonometric func-
tions and their inverses
SYNOPSIS
link "math"
sin(x)
cos(x)
tan(x)
asin(x)
acos(x)
atan(x)
atan2(y,x)
dtor(deg)
rtod(rad)
DESCRIPTION
Sin, cos and tan return trigonometric functions of radian
arguments x.
Asin returns the arc sine in the range -pi/2 to pi/2.
Acos returns the arc cosine in the range 0 to pi.
Atan returns the arc tangent in the range -pi/2 to pi/2.
Atan2(y,x) := atan(y/x) if x > 0,
sign(y)*(pi - atan(|y/x|)) if x < 0,
0 if x = y = 0, or
sign(y)*pi/2 if x = 0 ~= y.
Dtor converts degrees to radians, while rtod converts radi-
ans to degrees.
DIAGNOSTICS
If |x| > 1 then asin(x) and acos(x) will fail.
MATH(3.icon) Icon Program Library MATH(3.icon)
NAME
sqrt - square root
SYNOPSIS
link "math"
sqrt(x)
DESCRIPTION
Sqrt(x) returns the square root of x.
DIAGNOSTICS
Sqrt(negative) fails to produce a result.
MATH(3.icon) Icon Program Library MATH(3.icon)
NAME
exp, log, log10 - exponential and logarithm
SYNOPSIS
link "math"
exp(x)
log(x)
log10(x)
DESCRIPTION
Exp returns the exponential function of x.
Log returns the natural logarithm of x.
Log10 returns the logarithm of x to base 10.
DIAGNOSTICS
Log(negative) and log10(negative) fail to produce a result.
MATH(3.icon) Icon Program Library MATH(3.icon)
NAME
floor, ceil - floor and ceiling
SYNOPSIS
link "math"
floor(x)
ceil(x)
DESCRIPTION
Floor returns the largest integer no greater than x.
Ceil returns the smallest integer no less than x.
-----------------------------------------------------------------------
# math.icn - mathematical procedures for Icon programming language
#
# Version 1.0 created on 10 February 1986.
#
# Procedures developed in Icon by George D. Yee
# 1847 N. Frances Blvd.
# Tucson, AZ 85712
#
# Free distribution and use of this material is granted provided the
# above credit is left intact on all source copies. No warranties
# are made as to the correctness or suitability of these procedures
# for any purpose. Please send any suggestions to me at the above
# address.
#
procedure sin(x)
return _sinus(numeric(x),0)
end
procedure cos(x)
return _sinus(abs(numeric(x)),1)
end
procedure tan(x)
return sin(x) / (0.0 ~= cos(x))
end
# atan returns the value of the arctangent of its
# argument in the range [-pi/2,pi/2].
procedure atan(x)
if numeric(x) then
return if x > 0.0 then _satan(x) else -_satan(-x)
end
# atan2 returns the arctangent of y/x
# in the range [-pi,pi].
procedure atan2(y,x)
local r
static pi
initial pi := 3.141592653589793238462643
return if numeric(y) & numeric(x) then {
if x > 0.0 then
atan(y/x)
else if x < 0.0 then {
r := pi - atan(abs(y/x))
if y >= 0.0 then r else -r
}
else if x = y = 0.0 then
0.0 # special value if both x and y are zero
else
if y >= 0.0 then pi/2.0 else -pi/2.0
}
end
procedure asin(x)
if abs(numeric(x)) <= 1.0 then
return atan2(x, (1.0-(x^2))^0.5)
end
procedure acos(x)
return 1.570796326794896619231e0 - asin(x)
end
procedure dtor(deg)
return numeric(deg)/57.29577951308232
end
procedure rtod(rad)
return numeric(rad)*57.29577951308232
end
procedure sqrt(x)
return (0.0 <= numeric(x)) ^ 0.5
end
procedure floor(x)
return if numeric(x) then
if x>=0.0 | real(x)=integer(x) then integer(x) else -integer(-x+1)
end
procedure ceil(x)
return -floor(-numeric(x))
end
procedure log(x)
local z, zsq, ex
static log2, sqrto2, p0, p1, p2, p3, q0, q1, q2
initial {
# The coefficients are #2705 from Hart & Cheney. (19.38D)
log2 := 0.693147180559945309e0
sqrto2 := 0.707106781186547524e0
p0 := -0.240139179559210510e2
p1 := 0.309572928215376501e2
p2 := -0.963769093368686593e1
p3 := 0.421087371217979714e0
q0 := -0.120069589779605255e2
q1 := 0.194809660700889731e2
q2 := -0.891110902798312337e1
}
if numeric(x) > 0.0 then {
ex := 0
while x >= 1.0 do {
x /:= 2.0
ex +:= 1
}
while x < 0.5 do {
x *:= 2.0
ex -:= 1
}
if x < sqrto2 then {
x *:= 2.0
ex -:= 1
}
return ((((p3*(zsq:=(z:=(x-1.0)/(x+1.0))^2)+p2)*zsq+p1)*zsq+p0)/
(((1.0*zsq+q2)*zsq+q1)*zsq+q0))*z+ex*log2
}
end
procedure exp(x)
return 2.718281828459045235360287 ^ numeric(x)
end
procedure log10(x)
return log(x)/2.30258509299404568402
end
procedure _sinus(x,quad)
local ysq, y, k
static twoopi, p0, p1, p2, p3, p4, q0, q1, q2, q3
initial {
# Coefficients are #3370 from Hart & Cheney (18.80D).
twoopi := 0.63661977236758134308
p0 := 0.1357884097877375669092680e8
p1 := -0.4942908100902844161158627e7
p2 := 0.4401030535375266501944918e6
p3 := -0.1384727249982452873054457e5
p4 := 0.1459688406665768722226959e3
q0 := 0.8644558652922534429915149e7
q1 := 0.4081792252343299749395779e6
q2 := 0.9463096101538208180571257e4
q3 := 0.1326534908786136358911494e3
}
if x < 0.0 then {
x := -x
quad +:= 2
}
y := (x *:= twoopi) - (k := integer(x))
if (quad := (quad + k) % 4) = (1|3) then
y := 1.0 - y
if quad > 1 then
y := -y
return (((((p4*(ysq:=y^2)+p3)*ysq+p2)*ysq+p1)*ysq+p0)*y) /
((((ysq+q3)*ysq+q2)*ysq+q1)*ysq+q0)
end
procedure _satan(x)
static sq2p1,sq2m1,pio2,pio4
initial {
sq2p1 := 2.414213562373095048802e0
sq2m1 := 0.414213562373095048802e0
pio2 := 1.570796326794896619231e0
pio4 := 0.785398163397448309615e0
}
return if x < sq2m1 then
_xatan(x)
else if x > sq2p1 then
pio2 - _xatan(1.0/x)
else
pio4 + _xatan((x-1.0)/(x+1.0))
end
procedure _xatan(x)
local xsq
static p4,p3,p2,p1,p0,q4,q3,q2,q1,q0
initial {
# coefficients are #5077 from Hart & Cheney. (19.56D)
p4 := 0.161536412982230228262e2
p3 := 0.26842548195503973794141e3
p2 := 0.11530293515404850115428136e4
p1 := 0.178040631643319697105464587e4
p0 := 0.89678597403663861959987488e3
q4 := 0.5895697050844462222791e2
q3 := 0.536265374031215315104235e3
q2 := 0.16667838148816337184521798e4
q1 := 0.207933497444540981287275926e4
q0 := 0.89678597403663861962481162e3
}
return x * ((((p4*(xsq:=x^2)+p3)*xsq+p2)*xsq+p1)*xsq+p0) /
(((((xsq+q4)*xsq+q3)*xsq+q2)*xsq+q1)*xsq+q0)
end
From ralph Sat Mar 29 14:27:14 1986
From: "Ralph Griswold" <ralph>
To: icon-group@arizona
Subject: Patch for Icon Version 5.9 of Icon under DOS
Status: R
There is a bug in Version 5.9 of Icon for DOS in the handling of
variables returned by procedures. Variables that should be dereferenced
are not and vice versa. This bug only causes trouble if the result
returned by a procedure is used as a variable, as in
p() := 1
Cheyenne Wills has provided the following patch to iconx.exe.
The patch hardcodes the actual top of the system stack into
the co-expression block for the main procedure (&main).
It is suggested that a backup of iconx.exe be made prior to
adding the patch.
----PATCH---- ----- Comments -----
rename iconx.exe iconx.dat >> debug can't handle writing back to .exe
debug iconx.dat
d ds:398 >> should display fe ff
e ds:398 5e 57 >> replace fe with 5e and ff with 57
u ds:394 >> mov word ptr [2858],575e
w
q
---- End of PATCH----
If you should compare (with the DOS COMP command) you should only
have two mismatches at offset 298 and 299.
| original | patched
---+----------+---------
298| fe | 5e
299| ff | 57
rename iconx.dat iconx.exe
Note that if the .EXE header has been altered (via Microsoft EXEMOD)
to increase the system stack size this procedure will not work.
From ralph Mon May 19 09:12:44 1986
From: "Ralph Griswold" <ralph>
To: icon-group@arizona
Status: R
Version 6.0 of Icon for UNIX systems is now available for distribution.
Version 6.0 is written entirely in C, except for a small amount of optional
machine-dependent code needed for co-expressions and arithmetic overflow
checking. It is much more portable than the Version 5 implementation and
has been successfully installed on computers ranging from the Amdahl 580
running UTS to the IBM AT running XENIX.
The features of Version 6.0 are essentially the same as those of Version 5.10.
Version 6.0 requires somewhat more memory than Version 5.10 and may be
somewhat slower on some systems. For example, over a wide range of tests on
a VAX 8600, Version 6.0 is about 6% slower, on the average, than 5.10.
Our future work will be concentrated on Version 6 and Version 5 implementations
will no longer be supported.
Program material and documentation for Version 6.0 is available without charge.
The initial distribution is on magnetic tape. Distribution on 5-1/4" diskettes
will be available later and announced separately.
To obtain a copy of Version 6.0 Icon, format the t/nroff text following the
dashed line using -ms and mail it to us with a tape or a check to cover
the cost of a tape, as indicated.
--------------------------------------------------------------------
.nr LL 6.5i
.ds CF
.de LE
\l'3.9i'
.sp 1
..
.de Ip
.IP "\\$1" 25
.LE
..
.LP
.ce 1
\f3Request for Version 6.0 of Icon\fR
.sp 2
.LP
\fINote:\fR The distribution package includes a brief description of Icon,
installation instructions, and supporting documentation.
.sp 2
.Ip name
.Ip address
.LE
.LE
.LE
.Ip telephone
.Ip "electronic mail address"
.sp 1
.Ip computers
.Ip "operating systems"
.sp 1
.LP
Tapes are written in 9-track \fIcpio\fR or \fItar\fR format.
Specify preferred format and tape recording density:
.sp .8
.in .5i
\(sq cpio\h'|1.5i'\(sq tar
.sp .5
\(sq 6250 bpi\h'|1.5i'\(sq 1600 bpi
.sp .8
.in 0
Send this form, together with a magnetic tape (600\(fm is sufficient and
preferred) \fIor\fR a check for $25 payable to the University of Arizona, to:
.DS
.ft R
Icon Project
Department of Computer Science
The University of Arizona
Tucson, AZ 85721
.DE
From ralph Mon May 26 06:18:16 1986
From: "Ralph Griswold" <ralph>
To: icon-group@arizona
Subject: Icon Version 6.0 for VAX/VMS
Status: R
Version 6.0 of Icon for the VAX running VMS is now available for distribution.
Version 6.0 includes a number of features not present in the earlier Version
5.9. Documentation on new features is included with the distribution.
This distribution also includes source code, so that sites with C compilers
can recompile Icon locally.
VMS Icon Version 6.0 was built using VAX C 2.1 under VMS 4.3. We believe
that this version will also run under VMS 4.2 but not under VMS 4.1.
Program material and documentation for Version 6.0 is available without charge.
To obtain a copy of Version 6.0 Icon for VMS, complete the following form
and mail it to us with a tape or a check to cover the cost of a tape, as
indicated.
-----------------------------------------------------------------------
Request for Version 6.0 of Icon for VMS
Note: The distribution package includes a brief description of
Icon, installation instructions, and supporting documentation.
name _______________________________________
address _______________________________________
_______________________________________
_______________________________________
_______________________________________
telephone _______________________________________
electronic mail address _______________________________________
computers _______________________________________
VMS version _______________________________________
Tapes are written in 9-track BACKUP format. Specify preferred
tape recording density:
[] 6250 bpi [] 1600 bpi
Send this form, together with a magnetic tape (600' is sufficient
and preferred) or a check for $25 payable to the University of
Arizona, to:
Icon Project
Department of Computer Science
The University of Arizona
Tucson, AZ 85721
From ralph Mon May 26 10:40:27 1986
From: "Ralph Griswold" <ralph>
To: icon-group@arizona
Subject: Icon Version 5.10 on Sun Workstations
Status: R
There are problems with Version 5.10 of Icon running on Sun Workstations
under Version 3.0.
While we recommend that all Sun sites switch to Version 6, the following
changes should make Version 5.10 work on Sun workstations running Release 3.0.
In v5/src/link/builtin.c, lines 33-34, change
cmp = strcmp(btable[test], s);
if (cmp < 0)
to
if ((cmp = strcmp(btable[test], s)) < 0)
In v5/src/mc68000/params.h, line 16, change the value of StkBase to 0x7fffffff.
From whm Tue Jul 29 14:13:23 1986
From: "Bill Mitchell" <whm>
To: icon-group
Subject: Re: WP translations
In-Reply-To: <8607292059.AA12138@arizona.arizona.edu>
Status: R
As a new twist for those of you familiar with mailing lists, here's a message
that was sent to the -request address rather than the group (instead of
vice-versa!).
From FRIENDLY%YORKVM1@WISCVM.WISC.EDU Tue Jul 29 13:59:28 1986
To: icon-group-request%arizona.csnet@csnet-relay.arpa
Subject: WP translations
This is a practical question which may have some interest to those
in the Icon group, concerning translation of text files from one
text formatter to another.
I have written a book using WordStar on a PC which is to be
typeset on a Shafstall phototypesetter using a formatter
called XY-Vision. My problem is how to translate about 1 Mbyte
of text with WordStar formatting commands to XY-Vision commands,
without having to do it all manually. I know that a completely
general solution is quite difficult. I'm just looking for ideas
that can help ease the pain.
Much of the translation can be described by production rules,
such as
^S arb ^S --> $f2 arb $f1
^D arb ^D --> $f3 arb $f1
" arb " --> `` arb ''
' arb ' --> ` arb '
..IA nl arb --> $h1 arb
.IA nl arb --> $h1 arb
..IB nl arb --> $h2 arb etc.
.IB nl arb --> $h2 arb etc.
where ^c means ASCII control-c, arb is an arbitrary character string,
nl is a new line, etc.
I have Icon 5.9 on the PC, and from the sample programs it seemed
possible to write a translator in Icon.
This seems like a problem that someone else must have faced before,
so I thought I'd send this query. Any help would be greatly
appreciated.
Please reply directly to the address below. I will collect any
useful replies and repost them to the discussion.
-- Snail Mail -- ** E-mail **
Michael Friendly BITNET: FRIENDLY@YORKVM1
Psychology Department Othernet: FRIENDLY@YORKVM1.BITNET
York University or FRIENDLY%YORKVM1.BITNET@WISCVM.WISC.EDU
Toronto ONT CompuServe: 72777,253
CANADA M3J 1P3 Voice: (416) 736-5118 x6249 *NEW*
From whm Thu Aug 28 16:24:08 1986
From: "Bill Mitchell" <whm>
To: icon-group
Subject: Testing Icon-group (#1)
Status: R
This is a test message. Please ignore this unless you get more than one copy
of this message (#1).
From whm Thu Sep 25 00:47:05 1986
From: "Bill Mitchell" <whm>
To: icon-group
Subject: Testing Icon-group (#2)
Status: R
This is a test message. Please ignore this unless you get more than one copy
of this message (#2).
From gmt Wed Oct 22 08:35:44 1986
From: "Gregg Townsend" <gmt>
To: ralph
Subject: atari file structure
Cc: icon-group
Status: R
I was hoping someone would provide a more authoritative answer on this,
but here goes: I think the atari does have a hierarchical file structure
in the same way the macintosh does, using folders. I don't know what
this looks like to the development system (C compiler etc.).
The news (this is one sample; it's corroborated by others) indicates a
maximum of 40 subdirectories in the entire system:
...
>> (2) Much more serious are limitations mentioned in the owners manual;
>> in particular, that you should not have more than 40 directories total
>> in all partitions and all devices attached to the ST.
In article <425@atari.UUcp> neil@atari.UUcp (Neil Harris) writes:
>The 40 folder limit is inherent in GEMDOS.
This is totally unacceptable. In these enlightened times there are no
reasons to have stupid arbitrary limits like 6 desk accessories or 40
folders.
Are you saying there is no fix short of new ROMs?
...
From gmt Wed Oct 22 08:53:22 1986
From: "Gregg Townsend" <gmt>
To: icon-group
Subject: Re: atari file structure (oops)
Status: R
My previous message was misdirected to this mailing list due to an error on my
part. Although it alludes to an earlier message, that message was not broadcast
to this group, so don't be alarmed that you missed it. My apologies to anyone
who was bewildered.
Gregg Townsend
From ralph Tue Oct 28 15:51:52 1986
From: "Ralph Griswold" <ralph>
To: icon-group
Subject: Version 6 of Icon for MS-DOS
Status: R
Version 6 of Icon for MS-DOS is now available. It runs on
computers with 8086/88/186/286-family processors. IBM hardware
compatibility is not necessary. MS- or PC-DOS Version 2.0 or
higher is required. There are both small- and large-memory-model
implementations. The SMM requires 192 kilobytes of memory, while the
LMM requires at least 256 kilobytes. The SMM is faster and more
compact than the LMM, but it cannot handle programs that need
large amounts of storage. It is inadvisable to run both the SMM
and LMM implementations on the same computer because of file nam-
ing conflicts.
Version 6 of Icon for MS-DOS is distributed on 5-1/4'' 2S/DD
diskettes. There are three diskettes available: LMM binary files,
SMM binary files, and the Icon program library for Version 6,
which is the same for both models. The diskettes are $15 each,
which includes media, hardcopy documentation, handling, and ship-
ping in the United States and Canada. Add $5 per diskette for
air mail overseas.
Address orders to
Icon Project
Department of Computer Science
The University of Arizona
Tucson, AZ 85721
Orders must be prepaid by check or money order in U.S. dollars.
Address questions to the address above or electronically to
icon-project@arizona.edu (CSNET)
... ihnp4!arizona!icon-project (UUCPNET)
From berry@s1-solaria.arpa Tue Oct 28 19:46:34 1986
From: berry@s1-solaria.arpa
To: "Ralph Griswold" <ralph@arizona.edu>
Cc: icon-group@arizona.edu
Subject: Re: Version 6 of Icon for MS-DOS
In-Reply-To: Your message of Tue, 28 Oct 86 15:51:52 MST.
<8610282251.AA02707@megaron.arizona.edu>
Status: R
Thanks for the info; Janalee has already taken care of me! Great
service. Now if only I can get ftp to work...
--berry