[pypy-dev] scheme interpreter

Carl Friedrich Bolz cfbolz at gmx.de
Fri Apr 20 14:10:59 CEST 2007


Hi Jakub!

Welcome on board! I will try to co-mentor you a bit during the summer.

2007/4/20, Jakub Gustak <jgustak at gmail.com>:
> > > Right now I am doing more research on the subject and getting familiar
> > > with PyPy code base.
> > >
> > > The main issue right now is: How to start with PyPy?
> > >
> > http://codespeak.net/pypy/dist/pypy/doc/getting-started.html
> > is a nice place to start.
>
> I have already went through that, and many more documentation. Now I
> am looking for some guidance how to start writing the interpreter
> itself, which will fit into the PyPy, and won't repeat effort you have
> already made.

To get started with development, you should get a codespeak account.
Send a mail to Michael Hudson ( micahel at gmail.com ) with your name,
the user name you want and your public ssh key. You should agree on
using the MIT license for your code, which is what the rest of PyPy
uses. Also you should try to follow the coding guide:

http://codespeak.net/pypy/dist/pypy/doc/coding-guide.html

The Scheme interpreter should probably be put into the
pypy/lang/scheme directory. In general you should write test before
you start coding using the py.test testing framework:

http://codespeak.net/py/dist/test.html

You should check in fairly often so that we can see what you're
working on and how you are doing and help you if you run into
problems.

> I am studying javascript interpreter and some parts of pyrolog.
> I can see that a lot of work is done by the pypy.rlib.parsing.ebnfparse.
> I will focus on that right now. Any links, documentation or literature
> to help me understand this part?

There are some docs about the parser generator here:

http://codespeak.net/pypy/dist/pypy/doc/rlib.html

If you have any questions about it you can ask me (on IRC or here), I
wrote most of it. It is most certainly not finished, if you run into
problems we can think about how to fix it. I guess by default Scheme
is not that hard to parse (no clue what happens if macros and other
evil things enter the picture).

Cheers,

Carl Friedrich



More information about the Pypy-dev mailing list