Thread View: comp.lang.functional
4 messages
4 total messages
Started by Stephen J Bevan
Sun, 02 Aug 1992 21:48
functional language archive update
Author: Stephen J Bevan
Date: Sun, 02 Aug 1992 21:48
Date: Sun, 02 Aug 1992 21:48
389 lines
13394 bytes
13394 bytes
I haven't posted a notice about my small functional language archive
for a while as I haven't had any submissions and I haven't written any
code that is distributable. Feeling depressed about the lack of code
available, I thought I'd write some more (or more correctly - convert
some more). I couldn't find the book I was looking for, so instead I
thought I'd try encroaching on FORTRAN territory and convert some
numerical analysis functions into Haskell. The results of this foray
(+ a few misc things) are :-
file : Adams_Bashforth_Approx.hs
size : 2341
author : Stephen J. Bevan <bevan@cs.man.ac.uk>
version : 1.1 1992/08/02 15:12:06
purpose : Adams-Bashforth methods for solving second order
differential equations. Contains 2, 3 and 4 step methods.
file : Bisection_Approx.hs
size : 2338
author : Stephen J. Bevan <bevan@cs.man.ac.uk>
version : 1.2 1992/08/02 13:38:57
purpose : Bisection method for finding roots of "f(x) = 0"
file : Fixed_Point_Approx.hs
size : 1915
author : Stephen J. Bevan <bevan@cs.man.ac.uk>
version : 1.2 1992/08/02 13:39:54
purpose : Fixed-point method for finding roots of "f(x) = 0"
file : Horner.hs
size : 1200
author : Stephen J. Bevan <bevan@cs.man.ac.uk>
version : 1.1 1992/08/02 14:04:50
purpose : Horner's algorithm for evaluating a polynomial of the form :-
P(x) = a_n*x^n + a_(n-1)*x^(n-1) + ... + a_1*x + a_0
and its derivative at x0
file : Maybe.hs
size : 196
author : Stephen J. Bevan <bevan@cs.man.ac.uk>
version : 1.1 1992/08/02 13:44:48
purpose : Spivey's (?) Maybe
file : Neville_Iterated_Interpolation.hs
size : 1874
author : Stephen J. Bevan <bevan@cs.man.ac.uk>
version : 1.1 1992/08/02 18:09:24
purpose : Neville's Iterated Interpolation algorithm
This evaluates an interpolating polynomial P on the (n+1) distinct
numbers x0, ..., xn at the number _x_ for a given function _f_
file : Newton_Cotes.hs
size : 1634
author : Stephen J. Bevan <bevan@cs.man.ac.uk>
version : 1.2 1992/08/02 20:29:29
purpose : Newton-Cotes formulas for approximating an integral
Contains: closed formulas (trapezoidal, simpson, simpson 3/8, 4)
open forumlas (midpoint, 1, 2, 3)
file : Newton_Interpolatory_Divided_Difference.hs
size : 1874
author : Stephen J. Bevan <bevan@cs.man.ac.uk>
version : 1.4 1992/08/02 17:47:15
purpose : Newton's interpolatory divided-difference formula for finding
the divided-difference coefficients of an interpolatory
polynomial
file : Newton_Raphson_Approx.hs
size : 2641
author : Stephen J. Bevan <bevan@cs.man.ac.uk>
version : 1.2 1992/08/02 13:35:19
purpose : Newton-Raphson method for finding roots of "f(x) = 0"
file : Runge_Kutta_Approx.hs
size : 5051
author : Stephen J. Bevan <bevan@cs.man.ac.uk>
version : 1.1 1992/08/02 13:31:54
purpose : Runge-Kutta methods solving second-order differential equations.
Contains: Midpoint, Modified Euler, Heun, 4th order and Fehlberg
methods
file : Secant_Approx.hs
size : 1061
author : Stephen J. Bevan <bevan@cs.man.ac.uk>
version : 1.2 1992/08/02 13:38:10
purpose : Secant method of finding roots of "f(x) = 0"
file : Sort.hs
size : 4494
author : ?
version : extracted from ghc-0.06-test.tar.Z in Glasgow archive
purpose : Various list sorting algorithms
Contains: quick, insert, heap and merge sort
file : Steffensen_Approx.hs
size : 1843
author : Stephen J. Bevan <bevan@cs.man.ac.uk>
version : 1.2 1992/08/02 13:37:03
purpose : Steffensen's method of finding roots of "f(x) = 0"
file : Taylor_Approx.hs
size : 1258
author : Stephen J. Bevan <bevan@cs.man.ac.uk>
version : 1.2 1992/08/02 13:28:39
purpose : Taylor methods for solving second-order differential equations.
Contains Euler's method + a second order Taylor method
If you want any of these files, then you can get then via the mail
server(s) attached to my account here with the command :-
send haskell/<name-of-file>
for example, to get the file "Steffensen_Approx.hs" :-
send haskell/Steffensen_Approx.hs
Full instructions on how to use the mail servers follows at the end of
this message. *PLEASE* read them before sending for a file as they
contain special instructions regarding size limits and how to avoid
mail bounces.
Finally, there are ftp based archives for Haskell, ML and Scheme.
Haskell - pub/haskell/library:anonymous@ftp.dcs.glasgow.ac.uk
- pub/haskell/library:anonymous@nebula.cs.yale.edu
- pub/haskell/library:anonymous@animal.cs.chalmers.se
ML - pub/ml/library:anonymous@ftp.dcs.edinburgh.ac.uk
Scheme - pub/scheme:anonymous@nexus.cs.yorku.ca
If you have any code that you'd like to share please upload it into
the appropriate archive. It doesn't have to be a huge program; just
something that may be useful to someone else. Implementations of
"standard" algorithms are particularly welcome. If your code isn't in
any of the above languages, but it is _functional_ (or appears so
externally), then mail it to me and I'll put in this archive.
enjoy,
bevan
b-server help file
==================
All requests should be sent to `bevan@cs.man.ac.uk' and have a subject
line containing `b-server-request' i.e. a typical request from a UNIX
system will start with :-
To: bevan@cs.man.ac.uk
Subject: b-server-request
This server reponds to the following commands in the body of a mail
message :-
help
send <filename>
plain
uuencode
shar
help
----
Produces this message
send <filename>
---------------
Send the given file back to you. For example :-
send haskell/avl-tree.lgs
send oberon/oberon_2_p_v1.3.shar
will result in both files being sent back to you.
plain
-----
Send all the following files without any encoding i.e. send
them as they appear in the archive. This is the default.
shar
----
Use shar to archive any files sent back.
uuencode
--------
Use uuencode to archive any files. This must be used if you
are retrieving binary files.
Examples
========
To obtain a copy of this message :-
To: bevan@cs.man.ac.uk
Subject: b-server-request
help
To obtain a top level index of the available files :-
To: bevan@cs.man.ac.uk
Subject: b-server-request
send index
To obtain a shar'd copy of an avl-tree in literate Gofer :-
To: bevan@cs.man.ac.uk
Subject: b-server-request
shar
send haskell/avl-tree.lgs
Some points to note :-
1. The server is rather simple and doesn't split the result of
requests into separate messages. This means that if the total size
of the files you request is over 100K it won't get out of this site
and will just result in the administrator receiving messages from
the mailer deamon.
If you want a multi-part file (such as the turtle graphics in
Miranda), then separate messages should be sent, each one
requesting a single part.
2. There is a limit on the number of files that can be retrieved in
one message. It is currently set to 6. There is also a limit to
the number of files that will be sent out in one day. This is
currently 20. This means that if somebody has already requested a
lot of files that day, your request may not be dealt with (I don't
think you will even get a message indicating this fact -- sorry)
3. UUCP style addresses can cause problems. Some archive message
replies are received correctly, some bounce at this end, and some
disappear down a black hole. If you don't receive a reply within a
few days, you can try mailing the administrator directly, but
unless an alternative address can be suggested, attempts at
bouncing the mail off other sites are not usually successful.
4. Due to a problem at this site, any attempt to reply to an address
originating from Switzerland results in the message being sent to
the Chemistry departement at another university in Manchester. If
you have a Swiss address, then mail the administrator, and within
reason, the files will be mailed out manually.
5. If you have an address of the form <foo@cs.here.there.everywhere>
then try to put a machine name in before the `cs'. This is because
the mailer here attempts to turn addresses around to account for
difference between and JANET/INTERNET ordering, and consequently
will send messages with ending it doesn't recognise to the `cs'
domain. Addresses of the form <foo@cs.here.there.uk> and
<foo.cs.here.there.edu> seem to work, but outside of these, who
knows :-). One which definitely fails is <foo@cs.here.there.za>,
this is turned into <foo@za.there.here.cs> which just bounces back.
If you have any problems, send a message to the archive administrator,
but do _not_ put `b-server-request' in the subject line or the archive
server program will "see" it first and try to process it as a request!
Archive administrator: Stephen J. Bevan <bevan@cs.man.ac.uk>
c-server help file
==================
All requests should be sent to `bevan@cs.man.ac.uk' and have a subject
line containing `c-server-request' i.e. a typical request from a UNIX
system will start with :-
To: bevan@cs.man.ac.uk
Subject: c-server-request
This server reponds to the following commands in the body of a mail
message :-
help
send <filename>
path <mail address>
help
----
Produces this message
send <filename>
---------------
Send the given file back to you. For example :-
send haskell/avl-tree.lgs
send oberon/oberon_2_p_v1.3.shar
will result in both files being sent back to you.
path <mail address>
-------------------
Use <mail address> as the address to which files are sent rather
than using the address in the mail header.
Examples
========
To obtain a copy of this message :-
To: bevan@cs.man.ac.uk
Subject: c-server-request
help
To obtain a top level index of the available files :-
To: bevan@cs.man.ac.uk
Subject: c-server-request
send index
To obtain a shar'd copy of an avl-tree in literate Gofer :-
To: bevan@cs.man.ac.uk
Subject: c-server-request
shar
send haskell/avl-tree.lgs
Some points to note :-
1. UUCP style addresses can cause problems. Some archive message
replies are received correctly, some bounce at this end, and some
disappear down a black hole. If you don't receive a reply within a
few days, you can try mailing the administrator directly, but
unless an alternative address can be suggested, attempts at
bouncing the mail off other sites are not usually successful.
2. Due to a problem at this site, any attempt to reply to an address
originating from Switzerland results in the message being sent to
the Chemistry departement at another university in Manchester. If
you have a Swiss address, then try using the "path" command to add
in "@nsfnet-relay.ac.uk" into the address i.e. to change addresses
like :-
some-user@inf.ethz.ch
into :-
foo%info.ethz.ch@nsfnet-relay.ac.uk
If this does not work, then try mailing the archive administrator
directly.
3. If you have an address of the form <foo@cs.here.there.everywhere>
then try to put a machine name in before the `cs'. This is because
the mailer here attempts to turn addresses around to account for
difference between and JANET/INTERNET ordering, and consequently
will send messages with ending it doesn't recognise to the `cs'
domain. Addresses of the form <foo@cs.here.there.uk> and
<foo.cs.here.there.edu> seem to work, but outside of these, who
knows :-). One which definitely fails is <foo@cs.here.there.za>,
this is turned into <foo@za.there.here.cs> which just bounces back.
If you can't alter the path in the header, then use the path
command to add in a machine name. For example, if I was having
trouble with my usual address which is :-
path bevan@cs.man.ac.uk
I would insert the name of one of our machines (e.g. panda) to get :-
path bevan@panda.cs.man.ac.uk
If you have any problems, send a message to the archive administrator,
but do _not_ put `c-server-request' in the subject line or the archive
server program will "see" it first and try to process it as a request!
Archive administrator: Stephen J. Bevan <bevan@cs.man.ac.uk>
Re: functional language archive update
Author: Stephen J Bevan
Date: Tue, 04 Aug 1992 09:22
Date: Tue, 04 Aug 1992 09:22
39 lines
1463 bytes
1463 bytes
I've had a number of requests so far, and nearly all that
wanted to obtain a file did something wrong :-<
1. All the files I listed are in the "haskell" directory, so you need
to prefix them with "haskell/"
2. The case of the file matters, so please use exactly what is in the
index file (or my previous message).
So for example, if you wanted the following file :-
file : Adams_Bashforth_Approx.hs
size : 2341
author : Stephen J. Bevan <bevan@cs.man.ac.uk>
version : 1.1 1992/08/02 15:12:06
purpose : Adams-Bashforth methods for solving second order
differential equations. Contains 2, 3 and 4 step methods.
You should submit the following request :-
To: bevan@cs.man.ac.uk
Subject: b-server-request
send haskell/Adams_Bashforth_Approx.hs
or
To: bevan@cs.man.ac.uk
Subject: c-server-request
path <your-mail-address>
send haskell/Adams_Bashforth_Approx.hs
enjoy,
bevan
Re: functional language archive update
Author: Stephen J Bevan
Date: Tue, 04 Aug 1992 22:28
Date: Tue, 04 Aug 1992 22:28
61 lines
2692 bytes
2692 bytes
Since my last message, there have been some more submissions. Some of
these do potentially more interesting things than some of the previous
submissions (they certainly stress array code in your compiler anyway :-)
file : Adams_Predictor_Corrector_Approx.hs
size : 2114
author : Stephen J. Bevan <bevan@cs.man.ac.uk>
version : 1.1 1992/08/03 21:13:04
purpose : Adams-Predictor-Corrector methods for solving second order
differential equations. (only contains 4 step method so far)
file : Choleski_Factorization.hs
size : 1986
author : Stephen J. Bevan <bevan@cs.man.ac.uk>
version : 1.1 1992/08/04 22:08:34
purpose : Choleski's Algorithm for derviving the lower triangular matrix
i.e. produces L from A where LL$^{t}$ = A
As it is currently written, this one should really test how well array
construction is optimised in your compiler. If anybody has a "better"
way to write this, I'd like to hear about it.
file : Gauss_Seidel_Iteration.hs
size : 2939
author : Stephen J. Bevan <bevan@cs.man.ac.uk>
version : 1.1 1992/08/04 17:38:47
purpose : performs Gauss-Seidel Iteration to solve "Ax = b"
file : Huet_Knuth_Bendix.hs
size : 13210
author : Stephen Eldridge <see@sna.co.umist.ac.uk>
version : 19920804
purpose : Implements Huet's version of Knuth-Bendix completion.
file : Jacobi_Iteration.hs
size : 2604
author : Stephen J. Bevan <bevan@cs.man.ac.uk>
version : 1.1 1992/08/04 17:39:12
purpose : performs Jacobi Iteration to solve "Ax = b"
file : SOR_Iteration.hs
size : 2149
author : Stephen J. Bevan <bevan@cs.man.ac.uk>
version : 1.1 1992/08/04 17:39:29
purpose : perform Successive Over-Relaxation iteration to solve "Ax = b"
file : Vector_Ops.hs
size : 1301
author : Stephen J. Bevan <bevan@cs.man.ac.uk>
version : 1.1 1992/08/04 22:10:50
purpose : Misc. operations on vectors
Currently contains 3 normalisation routines, and scalar x vector
You might want this to use one of the vector normalisers if you pick
up any of the XXX_Iteration modules.
enjoy,
bevan
Re: functional language archive update
Author: Stephen J Bevan
Date: Thu, 06 Aug 1992 13:10
Date: Thu, 06 Aug 1992 13:10
6 lines
749 bytes
749 bytes
For those who have anonymous ftp capabilities, you can now get all the files I mentioned (+ a couple of new ones) from the Haskell library. They are currently in the Glasgow archive and should appear in the Yale and Chalmers archives soon. bevan
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads