This page was originally intended as a way of keeping track of any good
papers and articles, mostly computer-related, that I've downloaded from the
Internet. However, that got to be more trouble than it's worth - I can always
look up a paper using a search engine - so I've mostly been adding links to
collections of papers and articles, e.g., magazines with on-line articles,
E-zines, etc. There is lots of good stuff out there - enjoy!
Computer Science Papers
- DevJournal -
articles mostly about Microsoft Windows programming.
Civilization - a number of interesting articles, mostly
computer- and game-related.
- InformIT - articles, book
- Ubiquity -
"An ACM IT Magazine and Forum".
- Science Fiction, Fantasy, Horror
- AlienQ - science
- Analog Science Fiction
& Fact - has some treasures for those willing to
explore the site. As of this writing, the main page and the
page had links to on-line stories. Also check out John G. Cramer's
"The Alternate View"
- Anotherealm: A Zine of Short
- Aphelion: The
Webzine of Science Fiction and Fantasy
- Dark Moon Rising -
science fiction, fantasy, and horror.
Planet - science fiction, fantasy, and horror.
- Deep Outside
SFFH - science fiction, fantasy and horror.
- E-scape: The
Digital Journal of Speculative Fiction - defunct since
1999, but there are some
- InterText: The Online
Fiction Magazine - an established E-zine with great
short stories in a variety of
"Present Tense", "Science Fiction", and "The Fantastic", as they
- NeverWorlds Unique
Fiction - has current stories in HTML, PDF, PDA, and
MP3 format, as well as an extensive
of older stories (in HTML format).
- Nuketown -
science fiction and fantasy.
- Planet Magazine -
science fiction and fantasy.
- Quanta -
defunct since 1995, but there are lots of
- Quantum Muse -
- SCIFI.COM - has an excellent
of "classic" and "original" science fiction stories.
- Strange Horizons -
by Lincoln Stein - is a brief overview of and manual for a
PERL-friendly, data interchange format for genome analysis software.
The PERL objects? Boulders, stones, and pebbles (nested stones), of
- Primer on
Molecular Genetics by Denise Casey, for the Department
of Energy - an excellent, fairly detailed overview of the Human Genome
Project. I see so many links to it, would it be fair to call it a
"classic" in the field?
Introduction to Biocomputing" by David Steffen -
is the informative introduction to the
BioComputing HyperText Coursebook.
Sequence Analysis With Your Printer" by D. B. Searls - describes
(Rapid Sequence Visualization in PostScript), a suite of PostScript
programs that perform preliminary sequence analysis and generate
graphic output. The programs also run on any computer that has a
PostScript interpreter, so you're not restricted to a printer!
(Since our printer couldn't handle the graphics in the paper, I had
to manually delete the figures from the PostScript file in order
to print it. An example of the graphic output is found on RSVP's
Importance of Standards and Componentry in Meeting the Genome
Informatics Challenges of the Next Five Years" by Nathan Goodman,
Steve Rozen, and Lincoln Stein - discusses the benefits of building
tools in a modular fashion with standardized interfaces between the
modules and proposes a study of the existing practices and of ways
of merging them into some type of cohesive standard. (Also see
Case for Componentry in Genome Information Systems" by the same
History and Literature
- Emerging Infectious
Diseases - "a peer-reviewed journal published by the
National Center for Infectious Diseases".
- History of Diseases -
a collection of links compiled by the Karolinska Institutet.
- Perspectives - A
Mental Health Magazine - an on-line magazine for the layman,
covering various topics in psychology.
- Prevention &
Treatment - "a peer-reviewed, rapid publication, electronic
Times - "a monthly trade publication with news and clinical
articles read by psychiatrists, allied mental health professionals and
primary care physicians who treat mental disorders".
Psychotherapy Ethics, Fraud, Legislation, Commentary -
a "Consumer's Guide and Review of the Psychotherapy Industry".
The Journal of Medical Humour - great stuff! You'll need to
register (for free) with
Medscape® in order to
access the text of the articles.
- The Write
Brain - "a compilation of short stories, poetry, essays
and artwork created by consumers, caregivers, [and] mental health
- "The Alternate View" -
"cutting-edge science" columns by physicist John G. Cramer from the
pages of Analog Science Fiction & Fact Magazine.
Scientist - "The Magazine of Sigma Xi, The Scientific
- CHANCE -
"features articles that showcase the use of statistical methods and
ideas in the social, biological, physical, and medical sciences".
That's a dry description of what is actually an entertaining and
informative magazine aimed at the interested layperson. The online
articles are in PDF format.
- Discover - a
popular science magazine. Check out the full text of
issues and the
archive of older issues.
- Hot A.I.R. - "Rare and
well-done tidbits from the Annals of Improbable Research".
- New Scientist
(the British counterpart to Science News?) also has the
full text of selected articles, both from the current issue and from
The articles are aimed at the interested layman and cover a broad
range of scientific subjects.
- Perspectives on Science and
Christian Faith - a publication of the American Scientific
Affiliation. If you explore the web site, you'll find a number of
on-line articles and book reviews.
- Science News -
"the weekly newsmagazine of science".
- Scientific American -
scientific paradise - for the layman, more or less.
Inquirer - published by the Committee for the Scientific
Investigation of Claims of the Paranormal (CISCOP).
Outer Reaches of Life", excerpted from John Postgate's book
of the same name - discusses (with some humor thrown in here and
there) the conditions required to sustain life as deduced from the
range of life known on earth.
Computer Science Papers
- "Language Research: Functional Languages and
Object-Oriented Programming" by
John DiCamillo - a brief
overview of functional programming and languages.
- "Object-Oriented Scanning and Parsing" by
John DiCamillo - an
interesting overview of the design and implementation in C++ of
scanners and parsers intended for special purpose languages; e.g.,
for embedding in tools.
- "Usability and
Class Library Design: Guidelines for Simplicity and Power" by
Arthur T. Jolin, in Dr. Dobb's Journal, October 1996 - an
excellent set of general guidelines for designing class libraries and
Bug-Free O-O Software: An Introduction to Design by Contract" from
ISE, Inc. - sounds like it was written by Bertrand Meyer and, like
anything he writes, it was both interesting and worthwhile to read.
An Easy to Use Tool for Integrating Scripting Languages with C and
C++" by David M. Beazley, from the 4th Annual Tcl/Tck Workshop -
describes a tool, SWIG, for
automatically generating bindings of scripting language commands
to user-written C and C++ functions and variables. Of particular
interest is the capability of adapting the tool to arbitrary
scripting languages; e.g., Tcl, Perl, etc. A generic
Language class defines methods for emitting the
C++ code that implements the binding of scripting language
constructs to C++ constructs:
declare_const(), etc. To generate bindings for a new
scripting language, derive a new class from
and override the methods to genearte the appropriate C++ "wrappers"
for the scripting language.
A Critique of C++ by
Ian Joyner - hasn't
slowed the juggernaut - or should I say, bandwagon.
and the New Internet Programming Paradigm" adapted from Edward
Yourdon's Rise & Resurrection of the American Programmer -
a fairly in-depth overview of the capabilities and features of Java,
including an interesting look at its potential impact on the software
- Steve McConnell's
web site has his
columns from IEEE Software,
from Software Development, and excerpts from
vs. C++: One Language Designer's View" by Bertrand Meyer -
a USENET posting from 1989. Back then, multiple inheritance and
templates in C++ were just "around the corner" and exception handling
was just a gleam in someone's eye. Eiffel, of course, already had all
three; see my own "TPOCC and
STL" by David Harvey - is one among several useful and well-written
articles of his on C++ and the Standard Template Library.
Also see G. Bowden Wise's well-done
of the Standard Template Library".
Just Say No" by Michael Spertus - argues against the use of
threads. It is one of a number of columns and feature articles
available from the on-line magazine,
Currents; each monthly issue also includes links to on-line
articles from its hardcopy sister publications:
C++ Report, JOOP, etc. On the subject of
threads, also see John Ousterhout's presentation,
Are a Bad Idea (For Most Purposes)".
Higher Level Programming for the 21st Century" by
John Ousterhout - appears (to me) to be a subtle attempt to make people
realize that Java is not the be-all and end-all of the world. This
white paper is vintage Ousterhout: very readable, very interesting,
and making very good points. Unfortunately, most of the other
documents at his
are slide presentations in PostScript or PowerPoint form.
- "Samba -
Unix Talking with PC's"
by Andrew Tridgell - is, truthfully, an "entertaining account of the
development of the Samba package" and is one of a number of equally
articles available on-line from
Scheme as a C Library" by Brent W. Benson, Jr. -
describes a well-designed, embeddable Scheme interpreter inspired by
the embeddable Tcl interpreter. In the same vein are:
a deluxe, embeddable Scheme interpreter with all the bells and
whistles, described in Oliver Laumann's and Carsten Bormann's,
The Extension Language Kit"
MzScheme, another deluxe Scheme interpreter, patterned after
libscheme and described in Matthew Flatt's,
- "Escaping the
Event Loop: An Alternative for Multi-Threaded GUIs" by Matthew
Fuchs - makes the interesting point that the reactive style
of programming with event loops is equivalent to continuation
passing style. Fuchs then attempts to show how using continuations
as callbacks simplifies the implementation of a multi-threaded program
in the context of an event loop, but he loses me at this point.
- "Erlang -
A Survey of the Language and Its Industrial Applications"
by Joe Armstrong - presents an overview of
virtual machine-based, industrial-strength, functional language used
to write operational, real-time, telecommunications software. This
article made my blood boil - why do we put up with the likes of C++
Revised(4) Report on the Algorithmic Language Scheme
edited by William Clinger and Jonathan Rees - is a concise, but very
readable specification for the Scheme language, often contrasted with
the lengthy and dry specifications of other languages. (This is
apparently the official home of R^4RS - the HTML
document is correctly formatted and the bibiliography has links
to the proper, 2-column PostScript version of the report.)
Distributed Computing Model for Telemetry Data Processing"
by Matthew Barry, Kevin Scott, and Steven Weismuller - presents the
Sharing Protocol (ISP) used to distribute Space Shuttle telemetry
and other data to remote computers. In a nutshell, distributed data
servers publish data to which clients can subscribe. The paper
discussed a number of applications of ISP, but was lacking in
implementation details. These can be found, however, in the
- ARIANE 5
Flight 501 Failure - is the report from the Inquiry Board
which investigated the failure shortly after launch of the Ariane 5
rocket in June 1996. Briefly, failure in a software module (reused
from Ariane 4) which shouldn't have been active post-launch caused
CPUs in both the active and backup Inertial Reference Systems (SRI)
to halt. As a result, erroneous attitude data was forwarded to the
main computer, which then attempted to correct for the extreme
"attitude" of the launch vehicle. The report is very readable and
well-worth reading, particularly the final conclusions and
recommendations. Also see:
Converting a C++ Communication Software Framework to Java" by
Prashant Jain and Douglas C. Schmidt, in C++ Report,
January 1997 - discusses the conversion of ACE from C++ to Java.
(Also see Schmidt's other
A Free Win32 Porting Layer for UNIX® Applications" by Geoffrey
J. Noer. (Also see The
to the Future: The Story of Squeak, A Practical Smalltalk Written in
Itself" by Dan Ingalls, Ted Kaehler, John Maloney, Scott Wallace,
and Alan Kay, in OOPSLA '96 (or '97?) -
describes the design and implementation of a portable Smalltalk
software development environment - very interesting and very
impressive! (Also see the
Squeak home page for more
documentation and ports to Windows 95 and NT, Macintosh, most UNIX
platforms, various PDAs, Acorn's RiscOS, OS/2, DOS, BeOS, and NeXT.)