This is the mail archive of the
kawa@sources.redhat.com
mailing list for the Kawa project.
should BRL releases be announced to the kawa list?
- To: kawa at sources dot redhat dot com
- Subject: should BRL releases be announced to the kawa list?
- From: brlewis at alum dot mit dot edu
- Date: Mon, 23 Oct 2000 16:08:14 -0400
Previously I said that I would stop sending BRL announcements to the
kawa list, since interested parties could subscribe to the
brl-announce list. I got one response that I should continue sending
announcements to the kawa list. What do others think?
Simple do/don't answers can go to me and I'll summarize later. More
elaborate justifications to the list.
Incidentally, here's the latest announcement:
To receive e-mail notices of BRL releases, subscribe to the
low-traffic brl-announce list: http://sourceforge.net/mail/?group_id=3321
Also note that the brl-users list does exist, even though the archives
are not working. See the BRL manual.
BRL 2.1.19 released 2000-10-23 http://brl.sourceforge.net/
* Debugging info is visually separated from error messages to
increase readability and reduce user confusion.
* The brl-random and brl-random-typeable functions were added
and documented. Some previously-included functions were also
documented, including hashtable functions. The brl-random
function is notable in that it can seed itself from an input
port. (call-with-input-port "/dev/random" brl-random) will
provide a less guessable seed than the current time in
milliseconds (default seed). Non-guessable random numbers are
important for cookie-based authentication.
* The sql-execute function was added to support statements
such as CREATE TABLE that return neither a row count nor a
result set.
* Miscellaneous improvements to the manual were made.
* A new servlet intialization parameter, brldir, allows
.brl files to be placed outside the web root.
* CVS snapshots that aren't exactly the same as a release will
have the upcoming release number with "pre" or "prerelease"
appended. This should cause less confusion than the previous
method of reserving odd final release numbers for CVS
snapshots.
INTRODUCTION TO BRL
BRL is a language designed for server-side WWW-based applications,
particularly database applications. Its facility for generating output
from databases makes it a report language. It hides powerful semantics
behind a simple syntax, resulting in code that is easy to write, read
and maintain. This makes it a beautiful language. Thus its name, BRL,
the Beautiful Report Language.
BRL programs are very much like web pages. One simply puts a BRL file
on a HTTP server and calls up the appropriate URL In a web browser.
The first time the page is loaded it is compiled, and the same
compiled program is used for subsequent page loads until the
underlying BRL file is modified.
There are other systems besides BRL that work in a similar manner, but
they usually require learning a programming language that is unique to
that system (e.g. PHP, CFML), or a language that is more cumbersome
than necessary (e.g. Java/JSP) for the simple programming usually
demanded in HTML pages. BRL uses Scheme, a language taught in hundreds
of universities, colleges and secondary schools worldwide.
Scheme uses an extremely uncomplicated syntax that makes simple code
look simple. It is popular for teaching Computer Science (CS) because
instructors can spend a short time teaching the language itself,
leaving more time to teach CS principles. This has given Scheme a
reputation for being a difficult language because it is usually
associated with advanced concepts. However, those advanced concepts
are not necessary for writing applications using BRL.
BRL is suitable not just for HTML, but for any markup language. A
combination of BRL and pdflatex can be used to dynamically generate
PDF files.
BRL uses a database-neutral SQL interface, borrowed from Java's JDBC.
The current implementation of BRL is a Java Servlet, allowing
integration with all the most popular HTTP servers. All major
operating system / database / HTTP server combinations are suitable
for running BRL.