Presentation software

Daniel Barlow <[email protected]> Mon, 04 Aug 2003 12:38:59 +0100
Newsgroups gmane.lisp.clump
Message-ID <[email protected]>
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1


For my recent presentation at the Linux 2003 conference (SBCL
threads), unimpressed with the general state of available presentation
software for Linux, I decided to write my own.

Acclaim is still very early-days - and probbaly doomed to stay that
way until I have another speaking engagement that needs new features
- From it - but might be interesting to someone nevertheless

* Like magicpoint, in that it reads slide definitions from a file,
  which can be edited with any text editor

* Unlike magicpoint, the file format is not whitespace-sensitive.
  Instead it uses sexps.

(slide
 (title "LinuxThreads: signals redux")
 (ul
  (li "There is some disconnect between the traditional Linux clone() model and
 the needs of POSIX threads")
  (li "LinuxThreads, to accomodate these, does strange things with signals to
ensure they get delivered to the threads that POSIX says they should")
  (li "We " (i "don't") " need our signal handling messed with")
  (li "And actually we don't even want this behaviour.  Lisp programmers
aren't going to care about the POSIX thread model")))

  Element names are chosen to be vaguely reminiscent of HTML, but no 
  real attempt is made to conform to any kind of html standard

* Requires CLX.  Currently only tested with SBCL, whose clx has a
  open-default-display extension, but if that's changed ought to work
  on pretty much anything

* Possibly the only presentation software ever where the attributes
  of an element (font sizes, colours) are specified by :around methods 
  on a CLOS generic function

* Single-pass rendering model (render-element renders an element then
  returns the size used so that we know where to put the following
  element) will probably need revising as layouts get more complex:
  to do things like (center) properly requires knowing the size of the
  child element before deciding where to draw it

* There's no reason that it couldn't be used to generate slides
  programmatically

* Most likely future features:
  - Add pictures
  - Funky inter-slide dissolves/wipes/fades etc


Anyway, My First CLX Program is available for the time being at 
http://www.linux.org.uk/~dan/linux2003/


- -dan

- -- 

   http://www.cliki.net/ - Link farm for free CL-on-Unix resources 
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.1 (GNU/Linux)

iD8DBQE/LkXZHDK5ZnWQiRMRAgVcAJ4mBXc+azMmx2hftNJPqsZGHGjTjwCeJyFr
61HfoRvyMSXeUci7fGfNWqE=
=liYe
-----END PGP SIGNATURE-----