[Push] Re: Questions...

Lee Spector lspector at hampshire.edu
Mon Sep 5 23:00:07 EDT 2005


Adzni,

There are two versions of the Push3 interpreter, one in Lisp and one  
in C++. You probably just want to use one or the other. The C++  
version is also built into the breve simulation environment, which  
can be obtained from http://www.spiderland.com/breve . If you use  
breve then you don't have to download any of the Lisp or C++ code for  
the interpreter -- it's all include in the breve application. On your  
specific questions:

> a) In your swarmEvolve-2.0.tz for example , I still didn't find the  
> source code form of Push2 interpreter implemented in commone Lisp/ C 
> ++.how do I make the correlation with the main program for  
> simulation in which is written in "steve" language?Could you have  
> any recommand?

SwarmEvolve-2.0.tz must be run within breve. It uses breve's  
simulation physics, etc., and there's no version of this for the Lisp  
version of Push or for the non-breve C++ version. SwarmEvolve-2.0.tz   
is steve (breve) code that makes calls to the Push interpreter that  
is built into breve. It is actually included in the breve package as  
one of the demo programs. Follow the instructions in the breve  
documentation for running demos to try it out.

>
> b) How do we know , which an instructions  (in configuration file)  
> will be called / "turn on" to which implementations (in source code).

If you look at the PushRegression.tz or PushTest.tz. source code  
files you'll see how to load a configuration file, and if you look at  
the demo configuration files you'll see how to turn on specific  
instructions.

>
> c) Could you please expline, what it meant by " Push code is almost  
> never written by hand".

Push was developed for use in systems that produce code  
automatically, primarily through evolution. It was not designed to be  
a language that people would use when they sit down to write programs  
themselves. It could be used for that purpose, but it was designed  
with evolution in mind, not the psychology of human programmers.

>
> d) I created a simple program and load the configuration file (e.g  
> test.config) into the main program by ( e.g pushInterpreter read- 
> config from-file "test.config") but the problem is " the config  
> file " still can not be called

You might try working with the PushTest.tz demo file in breve first.  
If you can't get this to work then perhaps you could send me your  
code and I could take a look.

I hope this helps.

  -Lee



On Sep 5, 2005, at 9:20 PM, adzni adzni wrote:

> Dear Mr.Lee
>
> I'm quite new to the subject of Push2/Push3 and also fairly new to  
> looking at evolution of programs.I'm interesting to learn more that  
> could help me to implement this Push language in my project. I have  
> looked at the Lisp in your Push3.Lisp site and I would like to  
> inquire more detail on the items as follow;
>
> a) In your swarmEvolve-2.0.tz for example , I still didn't find the  
> source code form of Push2 interpreter implemented in commone Lisp/ C 
> ++.how do I make the correlation with the main program for  
> simulation in which is written in "steve" language?Could you have  
> any recommand?
>
> b) How do we know , which an instructions  (in configuration file)  
> will be called / "turn on" to which implementations (in source code).
>
> c) Could you please expline, what it meant by " Push code is almost  
> never written by hand".
>
> d) I created a simple program and load the configuration file (e.g  
> test.config) into the main program by ( e.g pushInterpreter read- 
> config from-file "test.config") but the problem is " the config  
> file " still can not be called.
>
> thanks
> -- Adzni
> __________________________________________________
> Do You Yahoo!?
> Tired of spam? Yahoo! Mail has the best spam protection around
> http://mail.yahoo.com

--
Lee Spector, Professor of Computer Science
School of Cognitive Science, Hampshire College
893 West Street, Amherst, MA 01002-3359
lspector at hampshire.edu, http://hampshire.edu/lspector/
Phone: 413-559-5352, Fax: 413-559-5438





More information about the Push mailing list