[schemepy] Finished porting pyscheme to the Schemepy interface

[schemepy] Finished porting pyscheme to the Schemepy interface

Tim Ansell mithro at mithis.com
Mon May 26 19:48:57 EDT 2008


> > I'm thinking the most likely candidate would be tpclient-pywx (which
> > actually means libtpclient-py). I'm happy to give you a branch for you
> > to do the testing on.

Another option would be to checkout tpserver-py. The place that it uses
pyscheme is in the Design and Component base classes. The server
basically parses the scheme provided by a ruleset to calculate various
properties.

tpruledev could also be another option. It is a tool which is suppose to
make designing rulesets easier. It has a "graphical" interface for
writing TPCL version of scheme. It does need a whole bunch more love.

> So is it that libtpclient-py is the Python client that is using
> pyscheme? I'm not familiar with Thousand Parsec yet. I guess the TP
> client is using embedded Scheme to allow users to write their own
> script/extension, is that true? And is it necessary to learn how to
> use the client? Or is there some existing test suites that I can just
> run to ensure that I didn't break something?

TPCL (which is based on a subset of scheme) is solely used in "Design".

Design means anything from designing a ship, to designing a weapon or
even designing a factory. The protocol is flexible enough that it does
not dictate what you are actually designing.

Designs are made out of components. Some components can not be used
together. Some components grant a design certain properties (IE Speed,
or firepower).

TPCL is used by the server to communicate "restrictions" and how to
calculate properties to a client. This allows the client to give instant
feedback when a person is putting together a design.

For more information take a look at the following pages,

Some general thoughts on ship design in Stars!
        http://wiki.gible.net/index.php?title=%22Warship_Design%
        22_by_Scott_Phelps_1997-04-01_v2.6/7

TPCL specification
        http://www.thousandparsec.net/tp/dev/documents/ncl.php
        
TCPL expression editor (part of tpruledev)
        http://dystopicfro.blogspot.com/2007/08/tpcl-expression-editor-taking-shape.html

> I'm sure it would be a good idea to use Schemepy in a real world
> project. :)

How about doing an interactive scheme console kind of like ipython? That
would be something nifty to play with too.

Hope this helps.

Tim 'Mithro' Ansell



More information about the schemepy mailing list