[Pharo-project] Pharo scripting -- reborn as "Coral"
Hi Folks, I spent some time yesterday together with Stef to take a closer look at the Pharo scripting project. We have repackaged and renamed the project as "Coral". It is available on SqueakSource at: http://www.squeaksource.com/Coral You can now load it simply into a fresh Pharo-dev image by evaluating: ScriptLoader new installer ss project: 'Coral'; install: 'LoadCoral'. This will load everything that is required and pop up a few Workspace windows with further instructions. (You will need John McIntosh's latest VM to get this to work -- all is described in the image.) There is also a window with TO-DO items. I am interested in starting a student project to really make this fly, so I would be grateful for your suggestions and desiderata. If you are a potential user, please try it out and let me know what you would expect from a real Smalltalk scripting environment. Thanks again to Mathieu and Gwenaël for getting this to work! Oscar --- Prof. Dr. O. Nierstrasz -- Oscar.Nierstrasz@iam.unibe.ch Software Composition Group -- http://www.iam.unibe.ch/~scg University of Bern -- Tel/Fax +41 31 631.4618/3355 vcard: http://www.iam.unibe.ch/~oscar/oscarNierstrasz.vcf
I just tried it. It works. This is excellent! By reading /dev/stdin, we should be able to have a prompt. Cheers, Alexandre On 25 Feb 2009, at 13:55, Oscar Nierstrasz wrote:
Hi Folks,
I spent some time yesterday together with Stef to take a closer look at the Pharo scripting project.
We have repackaged and renamed the project as "Coral". It is available on SqueakSource at:
http://www.squeaksource.com/Coral
You can now load it simply into a fresh Pharo-dev image by evaluating:
ScriptLoader new installer ss project: 'Coral'; install: 'LoadCoral'.
This will load everything that is required and pop up a few Workspace windows with further instructions. (You will need John McIntosh's latest VM to get this to work -- all is described in the image.)
There is also a window with TO-DO items. I am interested in starting a student project to really make this fly, so I would be grateful for your suggestions and desiderata. If you are a potential user, please try it out and let me know what you would expect from a real Smalltalk scripting environment.
Thanks again to Mathieu and Gwenaël for getting this to work!
Oscar --- Prof. Dr. O. Nierstrasz -- Oscar.Nierstrasz@iam.unibe.ch Software Composition Group -- http://www.iam.unibe.ch/~scg University of Bern -- Tel/Fax +41 31 631.4618/3355 vcard: http://www.iam.unibe.ch/~oscar/oscarNierstrasz.vcf
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
-- _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: Alexandre Bergel http://www.bergel.eu ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
On 25-Feb-09, at 4:55 AM, Oscar Nierstrasz wrote:
This will load everything that is required and pop up a few Workspace windows with further instructions. (You will need John McIntosh's latest VM to get this to work -- all is described in the image.)
Well I'm curious why won't older VM's work? -- = = = ======================================================================== John M. McIntosh <johnmci@smalltalkconsulting.com> Corporate Smalltalk Consulting Ltd. http://www.smalltalkconsulting.com = = = ========================================================================
Hi John, Apparently it has to do with support for relative paths. Cheers, - on On Feb 26, 2009, at 11:50, Stéphane Ducasse wrote:
because he changed the way the path of the vm is computed you can type
squeak -image -file (relative path)
before you had to squeak -image -file full path
On Feb 25, 2009, at 17:19, John M McIntosh wrote:
On 25-Feb-09, at 4:55 AM, Oscar Nierstrasz wrote:
This will load everything that is required and pop up a few Workspace windows with further instructions. (You will need John McIntosh's latest VM to get this to work -- all is described in the image.)
Well I'm curious why won't older VM's work?
-- = = = = = ====================================================================== John M. McIntosh <johnmci@smalltalkconsulting.com> Corporate Smalltalk Consulting Ltd. http:// www.smalltalkconsulting.com = = = = = ======================================================================
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
because you change the way the file is looked up this way we can now use vm -headless -file ljkljljkl without been forced to provide the full path but may I'm wrong since I\m doing too much stuff On Feb 25, 2009, at 5:19 PM, John M McIntosh wrote:
On 25-Feb-09, at 4:55 AM, Oscar Nierstrasz wrote:
This will load everything that is required and pop up a few Workspace windows with further instructions. (You will need John McIntosh's latest VM to get this to work -- all is described in the image.)
Well I'm curious why won't older VM's work?
-- = = = = = ====================================================================== John M. McIntosh <johnmci@smalltalkconsulting.com> Corporate Smalltalk Consulting Ltd. http:// www.smalltalkconsulting.com = = = = = ======================================================================
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Oscar Nierstrasz wrote:
Hi Folks,
I spent some time yesterday together with Stef to take a closer look at the Pharo scripting project.
We have repackaged and renamed the project as "Coral". It is available on SqueakSource at:
I really didnt understand what Coral Saphire was all about, in InstallerLauncher you could ask squeak to execute a script and output to stdout. When I looked at Saphir I could see all sorst of parsers etc. Whats it all for? Keith
On 25.02.2009, at 19:59, Keith Hodges wrote:
Oscar Nierstrasz wrote:
Hi Folks,
I spent some time yesterday together with Stef to take a closer look at the Pharo scripting project.
We have repackaged and renamed the project as "Coral". It is available on SqueakSource at:
I really didnt understand what Coral Saphire was all about, in InstallerLauncher you could ask squeak to execute a script and output to stdout. When I looked at Saphir I could see all sorst of parsers etc. Whats it all for?
Having a grammar? Smalltalk has no language element to define classes and methods. There is only "fileout" syntax. (expressions seperated by ! that get evaluated when loaded). Nobody wants to write scripts that way. And the proof is that nobody does it. Marcus -- Marcus Denker -- denker@acm.org http://www.marcusdenker.de
Coral combining with Rio looks promising. A prompt will be great although.
There is only "fileout" syntax. (expressions seperated by ! that get evaluated when loaded).
Nobody wants to write scripts that way. And the proof is that nobody does it.
GNUSmalltalk also adopted a proper syntax. Cheers, Alexandre -- _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: Alexandre Bergel http://www.bergel.eu ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
please try it out and let me know what you would expect from a real Smalltalk scripting environment.
Something that would really push me in using Coral is an intelligent prompt. A list of the things the prompt should do: - crawling into the history of typed commands using up and down key arrow - tab completion (classes and method name) - colored output - Ctl-D to quit - Keybinds: * Ctlr-A beginning of the line * Ctrl-E end of the line * Alt- -> / Alt- <- to jump words Cheers, Alexandre -- _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: Alexandre Bergel http://www.bergel.eu ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
On 25.02.2009, at 21:26, Alexandre Bergel wrote:
please try it out and let me know what you would expect from a real Smalltalk scripting environment.
Something that would really push me in using Coral is an intelligent prompt. A list of the things the prompt should do: - crawling into the history of typed commands using up and down key arrow - tab completion (classes and method name) - colored output - Ctl-D to quit - Keybinds: * Ctlr-A beginning of the line * Ctrl-E end of the line * Alt- -> / Alt- <- to jump words
Microsoft's OO shell (I forgot the name. And it changed multiple times) is quite cool. It shows how typical Shell things fit into OO nicely. e.g. dir | sort would communicate via a pipe, but and OO one, that is, objects describing files, not text would be exchanged. And, they had a cool framework for making these commands. Your script inherits from the general superclass all the cool stuff, e.g. command line parsing and things like that. Smalltalk would be very powerfull as an OO shell... Marcus -- Marcus Denker -- denker@acm.org http://www.marcusdenker.de
Microsoft's OO shell (I forgot the name. And it changed multiple times) is quite cool. It shows how typical Shell things fit into OO nicely. e.g.
dir | sort
You raise an interesting point. If we have a Smalltalk shell, does it make sense to have unix-like pipe (|) ? Maybe for efficiency. Alexandre -- _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: Alexandre Bergel http://www.bergel.eu ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
Others have mentioned looking at GNU Smalltalk (at least for a sane interchange syntax). I would also look at F-Script, particularly for Array Programming. See also: http://www.cincomsmalltalk.com/blog/blogView?showComments=true&entry=3272861... http://www.smalltalk.org/articles/article_20040920_a1.html http://www.fscript.org/download/OOPAL.pdf http://www.fscript.org/download/FScriptGuide.pdf On Wed, Feb 25, 2009 at 2:54 PM, Alexandre Bergel <alexandre@bergel.eu> wrote:
Microsoft's OO shell (I forgot the name. And it changed multiple times) is quite cool. It shows how typical Shell things fit into OO nicely. e.g.
   dir | sort
You raise an interesting point. If we have a Smalltalk shell, does it make sense to have unix-like pipe (|) ? Maybe for efficiency.
Alexandre -- _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: Alexandre Bergel  http://www.bergel.eu ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
On Thu, Feb 26, 2009 at 9:26 AM, Alexandre Bergel <alexandre@bergel.eu>wrote:
please try it out and let me know what you would expect from a real Smalltalk scripting environment.
Something that would really push me in using Coral is an intelligent prompt. A list of the things the prompt should do: - crawling into the history of typed commands using up and down key arrow - tab completion (classes and method name) - colored output - Ctl-D to quit - Keybinds: * Ctlr-A beginning of the line * Ctrl-E end of the line * Alt- -> / Alt- <- to jump words
I modified REPLServer to do all of the above except for CTRL-d, colour and Alt-word skipping. I originally made it so that I could do stuff that breaks Morphic then still be able to use and recover the image. REPLServer uses telnet but can be modified to use other input/output mechanisms such as stdin/stdout or Display/EventSensor. REPLServer is loadable in Squeak 3.9, 3.10 using the Packages Universe, or http://www.squeaksource.com/SecureSqueak (I should really put it in its own project at some stage). Its documentation is available as "online help" from the CLI. Gulik. -- http://gulik.pbwiki.com/
Michael van der Gulik <mikevdg@...> writes:
On Thu, Feb 26, 2009 at 9:26 AM, Alexandre Bergel
<alexandre@bergel.eu> wrote:
please try it out and let me know what you would expect from a real Smalltalk scripting environment. Something that would really push me in using Coral is an intelligent prompt. A list of the things the prompt should do: - crawling into the history of typed commands using up and down key arrow - tab completion (classes and method name) - colored output - Ctl-D to quit - Keybinds: * Ctlr-A beginning of the line * Ctrl-E end of the line * Alt- -> / Alt- <- to jump words
Please, please, keep UI feel homogeneous ! Why not HOME, END, CTRL + -> like any other text editor in the world ? Even squeak is following that convention in TextMorphs ! Also let SHIFT+CONTROL+-> select over words and typed characters overwrite selection. You don't have to imitate a poor man's shell! Let history cycle when at beginning/end of list (with some form of advertising). And let restrict history crawling among lines matching the first letters if you typed some (like Matlab does). Nicolas
Please, please, keep UI feel homogeneous ! Why not HOME, END, CTRL + -> like any other text editor in the world ? Even squeak is following that convention in TextMorphs ! Also let SHIFT+CONTROL+-> select over words and typed characters overwrite selection. You don't have to imitate a poor man's shell!
You could have several ways to get at the first character. Actually, not only "could", but "should". Why not "home", "end" ? because there is no such keys on a mac.
Let history cycle when at beginning/end of list (with some form of advertising). And let restrict history crawling among lines matching the first letters if you typed some (like Matlab does).
As most shell do as well. Would be great to have, indeed. Cheers, Alexandre -- _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: Alexandre Bergel http://www.bergel.eu ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
sound interesting thanks for the pointer On Feb 25, 2009, at 10:09 PM, Michael van der Gulik wrote:
On Thu, Feb 26, 2009 at 9:26 AM, Alexandre Bergel <alexandre@bergel.eu> wrote:
please try it out and let me know what you would expect from a real Smalltalk scripting environment.
Something that would really push me in using Coral is an intelligent prompt. A list of the things the prompt should do: - crawling into the history of typed commands using up and down key arrow - tab completion (classes and method name) - colored output - Ctl-D to quit - Keybinds: * Ctlr-A beginning of the line * Ctrl-E end of the line * Alt- -> / Alt- <- to jump words
I modified REPLServer to do all of the above except for CTRL-d, colour and Alt-word skipping. I originally made it so that I could do stuff that breaks Morphic then still be able to use and recover the image.
REPLServer uses telnet but can be modified to use other input/output mechanisms such as stdin/stdout or Display/EventSensor.
REPLServer is loadable in Squeak 3.9, 3.10 using the Packages Universe, or http://www.squeaksource.com/SecureSqueak (I should really put it in its own project at some stage). Its documentation is available as "online help" from the CLI.
Gulik.
-- http://gulik.pbwiki.com/ _______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
My dream is to completely get rid of bash and other awful shells. I remember to have seen a talk on a OO shell, where each command like 'cat', 'ls', 'cd' where actually message sent to an instance of a class Shell. The receiver would then be implicit. Imagine a prompt like: shell. Each command will then be a message sent to the object referenced by the variable 'shell'. entering 'ls' will then invoke 'shell.ls'... Cheers, Alexandre On 25 Feb 2009, at 13:55, Oscar Nierstrasz wrote:
Hi Folks,
I spent some time yesterday together with Stef to take a closer look at the Pharo scripting project.
We have repackaged and renamed the project as "Coral". It is available on SqueakSource at:
http://www.squeaksource.com/Coral
You can now load it simply into a fresh Pharo-dev image by evaluating:
ScriptLoader new installer ss project: 'Coral'; install: 'LoadCoral'.
This will load everything that is required and pop up a few Workspace windows with further instructions. (You will need John McIntosh's latest VM to get this to work -- all is described in the image.)
There is also a window with TO-DO items. I am interested in starting a student project to really make this fly, so I would be grateful for your suggestions and desiderata. If you are a potential user, please try it out and let me know what you would expect from a real Smalltalk scripting environment.
Thanks again to Mathieu and Gwenaël for getting this to work!
Oscar --- Prof. Dr. O. Nierstrasz -- Oscar.Nierstrasz@iam.unibe.ch Software Composition Group -- http://www.iam.unibe.ch/~scg University of Bern -- Tel/Fax +41 31 631.4618/3355 vcard: http://www.iam.unibe.ch/~oscar/oscarNierstrasz.vcf
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
-- _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: Alexandre Bergel http://www.bergel.eu ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
On Wed, Feb 25, 2009 at 10:14:30PM +0100, Alexandre Bergel wrote:
My dream is to completely get rid of bash and other awful shells.
I remember to have seen a talk on a OO shell, where each command like 'cat', 'ls', 'cd' where actually message sent to an instance of a class Shell. The receiver would then be implicit. Imagine a prompt like: shell.
Each command will then be a message sent to the object referenced by the variable 'shell'.
entering 'ls' will then invoke 'shell.ls'...
At least in theory, quoth already does this http://netjam.org/quoth/ -- Matthew Fulmer -- http://mtfulmer.wordpress.com/
On 25.02.2009, at 22:27, Matthew Fulmer wrote:
Each command will then be a message sent to the object referenced by the variable 'shell'.
entering 'ls' will then invoke 'shell.ls'...
I would say that a command like "ls" is not a method. It's an object (instance of a sublass of "Script" or "Command"). You want, for example, inherit things like command line parsing, standard options (e.g. --help) and things liket that. A command like ls is far too complex to be just one method. Marcus -- Marcus Denker -- denker@acm.org http://www.marcusdenker.de
Marcus Denker <denker@...> writes:
On 25.02.2009, at 22:27, Matthew Fulmer wrote:
Each command will then be a message sent to the object referenced by the variable 'shell'.
entering 'ls' will then invoke 'shell.ls'...
I would say that a command like "ls" is not a method. It's an object (instance of a sublass of "Script" or "Command").
You want, for example, inherit things like command line parsing, standard options (e.g. --help) and things liket that. A command like ls is far too complex to be just one method.
Marcus
-- Marcus Denker -- denker@... http://www.marcusdenker.de
I would say ls is a message, and Shell ls answer with a LSCommand which is kindOf: Command. A Command use lazy evaluation: it does not evaluate until a end of line or pipe message triggers evaluation (i mean send the message #value). Before being evaluated, Command behaviour can be modified by sending all sort of message, like -l --help etc... Of course, apart options which are messages sent to the command (eventually with arguments), a list of arguments can be passed to the Command itself (Command valueWithArguments: aList). Just have to invent the syntax now... Nicolas
On Wed, Feb 25, 2009 at 09:48:08PM +0000, Nicolas Cellier wrote:
Marcus Denker <denker@...> writes:
On 25.02.2009, at 22:27, Matthew Fulmer wrote:
Each command will then be a message sent to the object referenced by the variable 'shell'.
entering 'ls' will then invoke 'shell.ls'...
I would say that a command like "ls" is not a method. It's an object (instance of a sublass of "Script" or "Command").
You want, for example, inherit things like command line parsing, standard options (e.g. --help) and things liket that. A command like ls is far too complex to be just one method.
I would say ls is a message, and Shell ls answer with a LSCommand which is kindOf: Command. A Command use lazy evaluation: it does not evaluate until a end of line or pipe message triggers evaluation (i mean send the message #value).
Before being evaluated, Command behaviour can be modified by sending all sort of message, like -l --help etc... Of course, apart options which are messages sent to the command (eventually with arguments), a list of arguments can be passed to the Command itself (Command valueWithArguments: aList).
Just have to invent the syntax now...
You may be interested in ExternalCommandShell which is part of the CommandShell package (SqueakMap, SqueakSource, etc). This lets you use Squeak as a command line shell replacing /bin/sh, and uses pipes to connect Smalltalk expressions, command objects, and external OS programs. http://wiki.squeak.org/squeak/6023 http://wiki.squeak.org/squeak/2153 http://wiki.squeak.org/squeak/1914 The syntax is a mashup of Smalltalk and unix shell conventions. The pipes are OS pipes where necessary to interact with external programs, or an object that minics OS pipe behavior if the "commands" being connected are Smalltalk expressions or command objects. For example, if you enter "help | cat" at the command prompt, you will get a Smalltalk command object that evaluates "help" and writes its output to a Unix pipe connected to an OS process running the /bin/cat command, which reads the output of the "help" command, and copies it to the shell output: sqsh> help | cat cd [path] - change default directory help - help on sqsh commands history - display command history list pwd - print current working directory sls [filepatterns] - list current directory contents snapshot - save the Squeak image exit - exit shell and quit Squeak without saving image type [names...] - indicate how each name would be interpreted if used as a command simple Smalltalk expression! evaluates a simple expression as a doIt <ctl-C> to interrupt a running program <ctl-D> to end input to a running program sqsh> Dave
sounds fun. For the syntax, if we could keep the one of Smalltalk this would be great because find . *.tex -print name -exec {} looks like something you want to avoid. else bash is good enough for me right now I want to code in pharo the lib to be able to write little scripts to script them. :) On Feb 25, 2009, at 10:48 PM, Nicolas Cellier wrote:
Marcus Denker <denker@...> writes:
On 25.02.2009, at 22:27, Matthew Fulmer wrote:
Each command will then be a message sent to the object referenced by the variable 'shell'.
entering 'ls' will then invoke 'shell.ls'...
I would say that a command like "ls" is not a method. It's an object (instance of a sublass of "Script" or "Command").
You want, for example, inherit things like command line parsing, standard options (e.g. --help) and things liket that. A command like ls is far too complex to be just one method.
Marcus
-- Marcus Denker -- denker@... http://www.marcusdenker.de
I would say ls is a message, and Shell ls answer with a LSCommand which is kindOf: Command. A Command use lazy evaluation: it does not evaluate until a end of line or pipe message triggers evaluation (i mean send the message #value).
Before being evaluated, Command behaviour can be modified by sending all sort of message, like -l --help etc... Of course, apart options which are messages sent to the command (eventually with arguments), a list of arguments can be passed to the Command itself (Command valueWithArguments: aList).
Just have to invent the syntax now...
Nicolas
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
I would say that a command like "ls" is not a method. It's an object (instance of a sublass of "Script" or "Command").
You want, for example, inherit things like command line parsing, standard options (e.g. --help) and things liket that. A command like ls is far too complex to be just one method.
could also be a trait. But I understand what you're saying. Entering 'ls' will actually be translated into a 'ls executeInContext: currentContext' or something. currentContext will then be aware of the current path. Looks like to be an exciting project! Alexandre -- _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: Alexandre Bergel http://www.bergel.eu ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
Hi Alex, I am interested in using Smalltalk as a scripting language for routine tasks (to replace sh, perl, python, ruby etc.). It seems that you want to use it as an interactive shell language (to replace sh, bash, tcsh etc.). These are somewhat different goals. I am not sure if they are compatible, but it is interesting to explore. Does anyone know of any previous attempts to use Smalltalk or Smalltalk-like syntax for an interactive shell? David Lewis mentioned ExternalCommandShell as an example. Is that the state-of-the-art? - on On Feb 25, 2009, at 22:14, Alexandre Bergel wrote:
My dream is to completely get rid of bash and other awful shells.
I remember to have seen a talk on a OO shell, where each command like 'cat', 'ls', 'cd' where actually message sent to an instance of a class Shell. The receiver would then be implicit. Imagine a prompt like: shell.
Each command will then be a message sent to the object referenced by the variable 'shell'.
entering 'ls' will then invoke 'shell.ls'...
Cheers, Alexandre
On Thu, Feb 26, 2009 at 12:03:43PM +0100, Oscar Nierstrasz wrote:
David Lewis mentioned ExternalCommandShell as an example. Is that the state-of-the-art?
Well, I wrote it so you may be sure that it is not state-of-the-art ;) Dave
:) soa is relative to the context :) Stef PS: I like the energy we are creating here.
David Lewis mentioned ExternalCommandShell as an example. Is that the state-of-the-art?
Well, I wrote it so you may be sure that it is not state-of-the-art ;)
Dave
Haha! I just meant, is there anything else out there I should know about? Do you know about any other Smalltalk-based shells? - on On Feb 26, 2009, at 13:35, David T. Lewis wrote:
On Thu, Feb 26, 2009 at 12:03:43PM +0100, Oscar Nierstrasz wrote:
David Lewis mentioned ExternalCommandShell as an example. Is that the state-of-the-art?
Well, I wrote it so you may be sure that it is not state-of-the-art ;)
Dave
Hello Oscar, I know about STSH Shell for Smalltalk/X: http://www.vanak.cz/downloads.html (distributed as a binary release) and Sh++ which is a "visual" shell using the FOIBLE framework for visual languages: http://ftp3.gwdg.de/pub/languages/smalltalk/st.cs.uiuc.edu/Smalltalk/st80_pr... Hernán 2009/2/26 Oscar Nierstrasz <oscar@iam.unibe.ch>:
Haha! Â I just meant, is there anything else out there I should know about?
Do you know about any other Smalltalk-based shells?
- on
On Feb 26, 2009, at 13:35, David T. Lewis wrote:
On Thu, Feb 26, 2009 at 12:03:43PM +0100, Oscar Nierstrasz wrote:
David Lewis mentioned ExternalCommandShell as an example. Â Is that the state-of-the-art?
Well, I wrote it so you may be sure that it is not state-of-the-art ;)
Dave
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
participants (13)
-
Alexandre Bergel -
Cédrick Béler -
David Mitchell -
David T. Lewis -
Hernán Morales Durand -
John M McIntosh -
Keith Hodges -
Marcus Denker -
Matthew Fulmer -
Michael van der Gulik -
Nicolas Cellier -
Oscar Nierstrasz -
Stéphane Ducasse