``Almost a fifth of college students spend more that 20 hours a week on the Internet, reports CyberPsychology and Behaviour, a bimonthly journal. Jonathan J. Kandell of the University of Maryland Counseling Center quotes experts who say that this amount of time qualifies as addiction. Kandell also cites a New York University study that correlates high student Internet use with doubled rates of academic dismissals. [...]
In addition to Internet gambling, activities that can lend themselves to addictive of compulsive behaviour include playing computer games, being a junkie of unmoderated newsgroups and chat rooms, surfing the web, browsing for cool tools, cracking system security for amusement and perhaps even programming itself - which seems to inspire compulsive behaviour in certain individuals.''
Communications of the ACM, March 1998
Permanent URL: http://purl.org/net/emarsden/home/downloads
Note that my old email address @mail.dotcom.fr is no longer valid -- please use @laas.fr instead.
pg-dot-lisp, a socket-level interface to the PostgreSQL object-relational DBMS. It is capable of automatic coercion from a range of SQL types to the appropriate Common Lisp types. Supports large objects (BLOBs). Version 0.19, 2003-10-07, under GNU LGPL. Available as the debian package cl-pg. Sample code:
(with-pg-connection (conn "testdb" "login" :host "dbhost" :password "secret") (with-pg-transaction conn (when (member "test_date" (pg-tables conn) :test #'string=) (pg-exec "DROP TABLE test_date")) (pg-exec conn "CREATE TABLE test_date(a timestamp, b abstime, c time, d date)") (pg-exec conn "INSERT INTO test_date VALUES " "(current_timestamp, 'now', 'now', 'now')")))
The old single-file version is still available, but is not updated.
Some Common Lisp performance benchmarking code. Includes the Gabriel benchmarks, mathematical functions, bignum-intensive operations, CLOS test, hashtable exercising, read-line exercising, various operations on arrays, strings and bitvectors, and performance-intensive kernels such as CRC and DEFLATE. Updated 2004-08-02.
A CMUCL interface to the CPU Performance Counters library available with Solaris 8. Allows you to collect data on instruction/cycle counts, cache misses, branch mispredictions etc. Version 0.5, updated 2004-01-03.
A trampoline program for writing shell scripts in CMUCL. Dated 2001-12-04. Lets you write code like
#!/usr/bin/cmucl-trampoline \ -quiet -batch -noinit !# (format t "Hello, world!~%")
A tcp-forwarder program, which redirects TCP connections to another port on another machine. Uses CMUCL's SERVE-EVENT facility to handle several concurrent connections without using multithreading.
An interface to SSL streams for CMUCL. Uses FFI calls to the OpenSSL libraries, and is based on the CMUCL fd-stream implementation. Both client and server support (using PEM-encoded X.509 certificates) is included. Version 0.3 dated 2003-10-10, under GNU LGPL.
An adaptation of Chris Double's XML-RPC client implementation (originally for Corman Lisp) to CMUCL and CLISP.
coffee.el allows Emacs users to submit a BREW request to an RFC2324-compliant coffee device (Hyper Text Coffee Pot Control Protocol, or HTCPCP). It prompts the user for the different additives, then issues a HTCPCP BREW request to the coffee device. You can probably guess how coffee.el came about ...yadda yadda everything but make coffee ...yadda yadda ...
coffee.el requires a special BREW-capable version of Emacs/W3 to be installed. 1999-09-29, under GNU GPL. Available as part of the Debian package emacs-goodies-el.
pg.el is a socket-level Emacs interface to the PostgreSQL object-relational DBMS. It is capable of automatic coercion from a range of SQL types to the appropriate Emacs Lisp types. Supports large objects (BLOBs). Version 0.10 2003-02-12, under GNU GPL.
watson.el is an experimental Emacs interface to web search engines such as Altavista. Given a number of keywords to search for, it will send the query to several search engines. The results are then aggregated and displayed in a *watson* buffer. Currently backends exist for the search engines Altavista, Google, Yahoo!, Dejanews, Excite, Snap, ftpsearch and dmoz.org. watson is also able to generate a list of web pages which point to a given URL (function watson-referers).
watson.el attempts to rank hits intelligently: if an url is returned by more than one search engine, its rank will be increased. Hits in the same site are coalesced, with an increased rank. The ranking also takes into account the order in which hits were presented by the search engines. watson.el can be configured to issue multiple http requests in parallel, using an external program such as lynx for downloads. watson.el was inspired by the Sherlock web search program shipped with recent releases of MacOS. Requires Emacs/w3. Version 0.12 (2000-10-12) under GNU GPL.
dict-web.el is a simple Emacs interface to the Online Dictionary Database at dict.org. It will display the definitions for a word or phrase (defaulting to the word under the cursor). Requires Emacs/w3. Version 0.11 (2001-04-25) under GNU GPL.
babel.el is an Emacs interface to different web translation services such as Babelfish. Enter a phrase and a pair of languages to translate between, and it will connect to the server, translate the phrase (or buffer region) and display the result. babel.el has backends for Babelfish at Altavista (doesn't currently work correctly since Babelfish uses UTF-8), InterTrans (translate to and from any of 25 languages!), SysTran, FreeTranslation.com, WorldBlaze, e-PROMPT and the Leo Dictionary. babel.el requires w3, the Emacs web browser, to be installed. v0.20 2001-09-11, under GNU GPL. [This package probably won't work, because the format of the HTML output by the translation servers has changed, and I haven't had time to update babel.el. Patches welcome!]
cgi.el is a simple library for the Common Gateway Interface, which allows you to service requests for non static web pages in elisp. Provides routines for decoding arguments to GET- and POST-type CGI requests. Yes, this is another because I can; I don't expect performance to be crash hot. Version 0.2 2000-04-25, under GNU GPL.
httpd.el is an HTTP server embedded in the Emacs. It supports GET and HEAD requests for static and dynamic content. (supporting POST should be easy by stealing code from cgi.el above). Since Emacs doesn't support server sockets, you need to cheat a little and run it from a service such as tcpserver or inetd. You can get better performance by running a proxy server which forwards requests to a persistent emacs instance using gnuserv; see the commentary for details. Version 0.4, 2001-05-17 under GNU GPL.
ipp.el is an Emacs implementation of the Internet Printing Protocol. The IPP, defined by the Printer Working Group, is intended to replace the old LPD protocol for interacting with network printers. This is only a partial implementation of the client side of the protocol, but it's sufficient to submit a print job to a device, to query its capabilities, and to examine its queue. Version 0.5 2001-04-25, under GNU GPL.
cmucl-wire.el is a partial Emacs implementation of the client-side aspects of CMUCL's WIRE facility. WIRE is a simple sexp-based RPC mechanism that allows you to send requests to a remote CMUCL instance. cmucl-wire.el does not implement the remote-object parts of the wire protocol. Version 0.1 2003-08-07, under the GNU GPL.
lout-mode is an Emacs major-mode for the document markup language Lout (which is in the same problem space as LaTeX). It provides font-lock support, interaction with the lout compiler and a Postscript previewer, completion support, imenu support, and a friendly menu.
SquidFTP is a Squid-enabled commandline ftp client. It is intended for use with ange-ftp (Emacs' transparent ftp support) in organizations which block direct FTP access, but allow it through a Squid caching proxy. Very hackish, version 0.1.
A socket-level interface to the PostgreSQL object-relational DBMS for the Scheme Shell. Now (v 0.2 released 1999-09-17) supports large objects (BLOBs). GNU LGPL. This is the same as the file in the scsh contrib repository at MIT.
Some networking code for scsh. Includes an FTP client library, a POP3 client library (supporting APOP authentication) and access to the NetTime and Time protocols. GNU LGPL.
An example of the dump/restore marshalling functions in scsh, for externalizing objects in a binary format. Unfortunately no faster than writing an ASCII stream.
An example of using gnuplot from scsh via a pipe.
A scsh snippet providing a daemonize function which does chroot() to /, redirects stdin and stdout from /dev/null, and forks into a new session.
The Mandelbrot Set, in Postscript. Yes, Postscript is a programming language, not just a page layout language. You can select a black and white display, or full color. Feel free to send me a copy if you have access to a 1200 dpi color Postscript printer :-) There's also a simpler fractal called the Gingerbread Man. More fractals in Postscript here.
A small utility for printing address labels onto stickers. This perl script takes a list of newline-separated addresses from stdin and outputs a PostScript file to stdout. The size of the sheet of stickers is adjustable (A4, letter format, etc), as is the number of labels horizontally and vertically per sheet, and the desired font. The script is intelligent enough to compress items which wouldn't normally fit onto a label (three cheers for scalable PostScript fonts).
Before reporting a bug concerning one of these programs, please read this advice.
DISCLAIMER: Any use of products on this page will increase the amount of disorder in the Universe. Although no liability is implied herein, the consumer is warned that this process will ultimately lead to the heat death of the Universe.
This page can be found by searching the web for the 20-letter string uidemarsdendownloads. Please do not put this string in any document that could end up on the web, including email messages and PostScript documents. You can refer to it on the web as the string obtained by removing the - from uid-emarsdendownloads. |