Browse thread
Announcing fun->pdf
- Jan Skibinski
[
Home
]
[ Index:
by date
|
by threads
]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: | 1998-07-06 (21:46) |
From: | Jan Skibinski <jans@n...> |
Subject: | Announcing fun->pdf |
Fun->pdf is a superset of few sets of scripts, written in various functional languages, and interfacing to PDFlib -- a third party C library capable of producing documents in Portable Document Format from Adobe. The package and a manual are freely available at: http://www.numeric-quest.com/funpdf At this time the interfacing scripts are written in three functional languages: + Equational Functional Lanquage Q + Ocaml + Haskell Fun->pdf is designed to be small, yet highly functional, powerful and user friendly. Users are offered a choice of direct interaction with PDFlib, or high-level functionalities fully implemented in scripts. At the top of these choices is a support for a HTML alike markup tag language, which is as easy as the basic HTML -- without complexities of the recent extensions to the HTML format. As a consequence, a PDF document, such as the fun->pdf manual, can be entirely written in ascii editor as a set of plain ascii files consisting of: plain text, ascii data for plots or tables and tagged material to be interpreted by fun->pdf parser. Any sequence of a language specific functions can be embedded within the special tags in a tagged file. Embedded scripts usually print or draw more complex entities, such as plots or tables. Aside from its main purpose of doing useful things, the package might be also used as a learning material for those wishing to advance into the functional programming; scripts are well documented, and the manual explains in a lay parlance the basics and also similarities and differences among those three languages. ================================================================= On the less "official" note: Ocaml beats hands down the two other implementations. But do not hold your breath: I made a few bad design choices that adversely impacted Haskell/Hugs performance. Everything is documented in chapter "Performance" of the manual. Pierre Weis: ------------ If you find it interesting you may host this package in your 'bazaar'. It is GPL-ed, after all :-). Xavier Leroy: ------------ Thank you for your advice on "Dynamic evaluation". As encouraged by you I stick to my first idea of using Toploop.run_script. I could not go by as easily in Haskell and I finally ended up with my own evaluator on a top of a third party Haskell Parser. That's why it took me an extra time before I could announce the package. What a shame to be forced to write an interpreter within an interpreter. Jan Skibinski, Numeric Quest Inc. Huntsville, Ontario, Canada July 4, 1998