[Zope] [ANNOUNCE] ZShellScripts v0.2 now supports Lisp !
Jerome Alet
alet@librelogiciel.com
Wed, 30 Oct 2002 21:24:49 +0100
Hi,
I'm pleased to announce the preview version of ZShellScripts v0.2
Download ZShellScripts v0.2 from :
http://www.librelogiciel.com/software/ZShellScripts-0.2.tar.gz
This new release features William Annis' PyLisp interpreter, which
allows you to script Zope in Lisp !!!
ZShellScripts and the Grand Unification Theory :
------------------------------------------------
Why would Zope only support Python Scripts ?
Install ZShellScripts instead.
This will allow you to add your own languages interpreters,
and even define your own language syntax. Here's how :
1 - Create a Shell instance somewhere. Four types of Shell
instances are currently provided :
* Shell (Python) -- Can execute standard Zope Python Scripts.
Code was unashamedly borrowed from Zope 2.5.1,
then was re-ordered and factorized, so please report any
problem.
* Shell (Unix) -- Can execute Unix commands as the user Zope
is run as.
Variables like context, container, and so on are available
as standard environment variables, but will contain the URL
to the object instead of its value. This allows your shell
script to talk back to Zope using wget for example !
* Shell (Lisp) -- Can execute Lisp programs inside Zope.
**HELP NEEDED** : it basically works but I don't know Lisp to
test more.
* Shell (Zope) -- Can (*will soon*) execute Zope ZShell commands.
This part is currently not working but be sure you'll get it
soon !!! Shell (Python) and Shell (Unix) work as expected,
as far as I have tested.
2 - Create a "Script (ZShell)" instance, and put the path
to your Shell instance on its first line in the usual
Unix shell scripts way :
#! /path/to/myshell
3 - Put content in your "Script (ZShell)" instance, for example
put Python code in it if the shell you use is an instance
of "Shell (Python)", or Unix shell commands if it is an
instance of "Shell (Unix)", and so on...
4 - Run your "Script (ZShell)" instance as usual, as if it was a
standard Zope Python Script for example.
Launching your instance, will in fact delegate the code
execution to the Shell instance which path you specified
on the first line of your "Script (ZShell)" instance.
5 - ???
6 - Profit ! (ok, this one comes directly from SlashDot)
7 - Use ShellUnix.py, ShellPython.py, ShellLisp.py and
ShellZope.py as examples to create your own Shell
class. ZShellScripts.py doesn't need to change.
Any comment, bug report or help is **very** welcome.
Jerome Alet - alet@librelogiciel.com