> I agree. Please help, we need you
Well...

> ScriptLoader loadLatestPackage: 'OSProcess' from:
> 'http://www.squeaksource.com/OSProcess'
>
> By convention, Smalltalk scripts extension is '.st' and not '.sq'. But
> that shouldn't change anything.
>
> You have to pass the full path to the script file. Try something like:
>
> $ Squeak\ 4.2.1beta1U.app/Contents/MacOS/Squeak\ VM\ Opt
> pharo1.0-10418-BETAdev09.08.3.image $PWD/test.sq
The full path requirement should be considered a bug from my  
perspective.

However as a thank you and for my own records, a small tutorial for  
your google code wiki:





=Command-line Scripts with a Headless Pharo=

For some tasks like benchmarking and automated testing, an integration
with other tools comes in handy.
For such use cases, Pharo can be used headless, i.e., without its  
graphical
user interface.

This brief tutorial will demonstrate how to use the Debian Language  
Shootout
benchmarks with a fresh Pharo image.

==Step 1: Setup Pharo and a Fresh Image==

   * download a Pharo image, the sources file, and a VM from the
     [http://www.pharo-project.org/pharo-download download page]
   * extract all archives in the same folder
   * start Pharo, from the commandline, on a MacOSX it should look  
like this:
     {{{
        "Squeak 4.2.1beta1U.app/Contents/MacOS/Squeak VM Opt" \
           pharo1.0-10418-BETAdev09.08.3.image
     }}}

==Step 2: Load OSProcess==

For output on the shell, we need an extra package from the SqueakSource
repository.

It can be loaded by simply executing the following code in a workspace  
window:

{{{
ScriptLoader loadLatestPackage: 'OSProcess' from:
'http://www.squeaksource.com/OSProcess'
}}}

To execute this code snippet, select it and press cmd+d or use the "do  
it"
item in the context menu.

==Step 3: Load Common Benchmark Code==

Now we can load the common parts of all shootout benchmarks into our  
image.

   * On way to do this is to grab the code shown 
[http://shootout.alioth.debian.org/gp4/benchmark.php?test=all&lang=squeak&lang2=squeak
 here 
]
and save it to a file called `common.st`.
   * Open the file browser from the Menu -> Tools -> File Browser.
   * Select `common.st` and press `filein` to load the code.

Now you can close all windows in your image and save and quit it.

==Step 4: Run a Benchmark==

   * Grab the code of a benchmark like 
[http://shootout.alioth.debian.org/gp4/benchmark.php?test=fannkuch&lang=squeak&id=1
 Fannkuch 
]
   * Save it to a file named like `fannkuch.st`
   * Add a run script to the end of the code in `fannkuch.st`, like  
this:
{{{
     Tests fannkuch.
     SmalltalkImage current snapshot: false andQuit: true.
}}}
   * Run it with a headless Pharo:
{{{
     "Squeak 4.2.1beta1U.app/Contents/MacOS/Squeak VM Opt" \
         -headless pharo1.0-10418-BETAdev09.08.3.image \
         $PWD/fannkuch.st 6
}}}


Best regards
Stefan



>
>
> -- 
> Damien Cassou
> http://damiencassou.seasidehosting.st
>
> "Lambdas are relegated to relative obscurity until Java makes them
> popular by not having them." James Iry
>
> _______________________________________________
> Pharo-project mailing list
> [email protected]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

-- 
Stefan Marr
Software Languages Lab
Former Programming Technology Lab
Vrije Universiteit Brussel
Pleinlaan 2 / B-1050 Brussels / Belgium
http://prog.vub.ac.be/~smarr
Phone: +32 2 629 3956
Fax:   +32 2 629 3525


_______________________________________________
Pharo-project mailing list
[email protected]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

Reply via email to