Hi All,
great news! Where can I read a specification of the Oz VM facilities?
_,,,^..^,,,_ (phone)
> On Jan 19, 2016, at 6:29 AM, Christophe Demarey <[email protected]>
> wrote:
>
> Hi all,
>
> In case you do not know, we work on bootstrapping Pharo, i.e. create a Pharo
> image from sources, not based on a previous image (well, we use a pharo image
> to produce it but no code / state from it).
>
> This process will allow to define a minimal Pharo kernel (currently 52
> packages but we could have it far smaller) and to modularize the whole image
> (currently packages have too much dependencies on packages already loaded
> into the image).
> The bootstrap process also allows to write down the recipe to initialize a
> new image from scratch (some code is missing in the image or is wrong). In
> addition, I think we will clean a lot of historical objects that are not used
> anymore.
>
> With the amazing work done by Guillermo Polito during his Phd (around Espell,
> Oz): https://guillep.github.io/files/publications/Poli15Thesis.pdf, we
> succeeded to get a first prototype of a bootstraped Pharo 5 image (from
> 5.392).
> This prototype is able to run an eval command line handler and to log output
> / errors. Not all classes are yet initialized and you cannot yet save /
> restart this image but it is a big step forward.
> It is a 4 mb image (could be half the size without unicode data). You can
> download it at:
> http://chercheurs.lille.inria.fr/~demarey/pmwiki/pub/pharo-bootstrap/pharo-bootstrap.zip.
>
> Next steps are to have a bootstrapped image fully working, then to load
> packages on top of it (like network, sunit) to produce a minimal image.
> Then, we need to implement an Oz VM on top of Spur.
> After that, we need to work on a reliable way to build the bootstrap (not too
> sensitive to changes in the image).
>
> Christophe.
>
> -------
> demarey@193-51-236-143:~/dev/rmod/bootstrap/bootstrap-2016-01-19$ ../pharo
> bootstrap.image --no-default-preferences eval "1 + 1"
> 2
> demarey@193-51-236-143:~/dev/rmod/bootstrap/bootstrap-2016-01-19$ ../pharo
> bootstrap.image --no-default-preferences eval "'a' , 'b'"
> 'ab'
> demarey@193-51-236-143:~/dev/rmod/bootstrap/bootstrap-2016-01-19$ ../pharo
> bootstrap.image --no-default-preferences eval "1 / 0"
> ZeroDivide
> SmallInteger>>/
> UndefinedObject>>DoIt
> OpalCompiler>>evaluate
> OpalCompiler(AbstractCompiler)>>evaluate:
> SmalltalkImage>>evaluate:
>
> EvaluateCommandLineHandler>>no (source is Undeclared)
> no source in EvaluateCommandLineHandler>>evaluate: in Block: no source
> BlockClosure>>on:do:
> EvaluateCommandLineHandler>>evaluate:
> EvaluateCommandLineHandler>>evaluateArguments
> EvaluateCommandLineHandler>>activate
> EvaluateCommandLineHandler class(CommandLineHandler class)>>activateWith:
>
> BasicCommandLineHandler>>no (source is Undeclared)
> no source in
> PharoCommandLineHandler(BasicCommandLineHandler)>>activateSubCommand: in
> Block: no source
> BlockClosure>>on:do:
> PharoCommandLineHandler(BasicCommandLineHandler)>>activateSubCommand:
> PharoCommandLineHandler(BasicCommandLineHandler)>>handleSubcommand
> PharoCommandLineHandler(BasicCommandLineHandler)>>handleArgument:
>
> BasicCommandLineHandler>>no (source is Undeclared)
> no source in PharoCommandLineHandler(BasicCommandLineHandler)>>activate in
> Block: no source
> BlockClosure>>on:do:
> PharoCommandLineHandler(BasicCommandLineHandler)>>activate
> PharoCommandLineHandler>>activate
> PharoCommandLineHandler class(CommandLineHandler class)>>activateWith:
>
> PharoCommandLineHandler class>>no (source is Undeclared)
> no source in PharoCommandLineHandler class>>activateWith: in Block: no source
> NonInteractiveUIManager(UIManager)>>defer:
> PharoCommandLineHandler class>>activateWith:
> no source in BasicCommandLineHandler>>activateSubCommand: in Block: no source
> BlockClosure>>on:do:
> BasicCommandLineHandler>>activateSubCommand:
> BasicCommandLineHandler>>handleSubcommand
> BasicCommandLineHandler>>handleArgument:
> no source in BasicCommandLineHandler>>activate in Block: no source
>
> SmallInteger>>no (source is Undeclared)
>
> UndefinedObject>>no (source is Undeclared)
>
> AbstractCompiler>>no (source is Undeclared)
>
> SmalltalkImage>>no (source is Undeclared)
>
> BlockClosure>>no (source is Undeclared)
>
> EvaluateCommandLineHandler>>no (source is Undeclared)
>
> EvaluateCommandLineHandler>>no (source is Undeclared)
>
> CommandLineHandler class>>no (source is Undeclared)
>
> BasicCommandLineHandler>>no (source is Undeclared)
>
> BasicCommandLineHandler>>no (source is Undeclared)
>
> PharoCommandLineHandler>>no (source is Undeclared)
>
> UIManager>>no (source is Undeclared)
>
> UndefinedObject>>no (source is Undeclared)
>
> CommandLineUIManager>>no (source is Undeclared)
>
> SmalltalkImage>>no (source is Undeclared)
>
> DelayMicrosecondScheduler>>no (source is Undeclared)
>
> BlockClosure>>no (source is Undeclared)
>
> SmalltalkImage>>no (source is Undeclared)
>
> WeakArray class>>no (source is Undeclared)
>
>
> ps: source cannot be displayed because there is no formatter available in the
> bootstrap
>