Hi Tomas, On 03/24/2012 09:11 PM, Tomáš Virgl wrote: > My name is Tomáš Virgl and I am student. I would like to participate > on HelenOS through GSoC. Between project ideas I found very > interesting one - porting python to HelenOS. I have very good > experience with Python (also of course with C), so I was very > interested. I have already downloaded a compiled HelenOS. I think > there will not be any problems with porting CPython (maybe I wound > suggest PyPy),
Thanks for your interest in HelenOS and especially the project of getting Python to run on it. > but implementing Bazaar will take more time because > Bazaar is also written in Pyrex. If the only important thing is to > have working download, there will not be any problem. However working > whole bazaar is much worse problem because code in Bazaar has to be > rewritten (or maybe some bridge to ctypes (I have not studied code of > Bazaar so much)). Being able to run Bazaar from HelenOS is a longer-term goal. Certainly not the primary goal for this project, even though it can be made its optional extension. I was under the impression that Bazaar can use Pyrex to speed things up, but if Pyrex is not installed, it can run without it. Checking this in the Bazaar installation instructions, they refer to Pyrex as a suggested dependency. > I have several questions: > 1) Why you are using Bazaar (not Git)? In 2009 there was some discussion what DVCS to use and for some reasons we picked Bazaar. I think we were hesitating between Bazaar and Mercurial, git somehow came out from our comparisons as third. > 2) Why you do not have script that modifies boot/Makefile.common and > uspace/Makefile (written e.g. in python)? > (I spent an hour trying to figure out why on earth it does not compile > my files.) I am not sure I follow. If you are suggesting to have something like a configure script, we try to autodetect what tools are installed on your system and give you at least a hint when we detect that some known dependency is missing. We also detect types' widths as used by your compiler. Of course, you need to be using the supported toolchain as built by our toolchain.sh script. Can you be more specific about what went wrong during your build? > 3) Do you need bug fixed until 6 April or demonstration of working > basic python task (without libraries etc.) is enough? Preferably we want the students to work on _a_ task to give us some idea about their abilities. The task needn't be overly complicated. If it is related to the proposed project, so much the better. > 4) Do you want exactly CPython 2.7.2 or PyPy implementation is enough? We need something which can run on all our supported architectures (isn't PyPy rather x86-centric?). I'd therefore suggest to port the CPython as the traditional Python implementation. > 5) Do you want whole implementation or just interpreter of files is > good enough (I do not know how to implement >>>)? Naturally, we would like to have as complete implementation as possible. Maybe you can see the Sysel interpreter (part of HelenOS sources) to see how/if-at-all it deals with the interactive mode and get some inspiration / encouragement for the one in Python. Having talked about as complete implementation as possible, it is clear that there will have to be some boundary and that it may happen that it will not be possible to achieve full functionality as compared to running Python on your Linux box. > First and second are just philosophical questions. HelenOS is very > interesting project and could benefit from working Python. I would > like to ask prospective mentor if there is something I should know > about c-libraries in HelenOS that could have some problems with > standard python code. I have read manual of porting cpython and I am > really looking forward to it. But I still think that porting PyPy is > much easier because of Py-to-anything compiler. HelenOS libc is not compatible with POSIX. For example, it uses a different string API and there is no mmap(), fork() and no signals. For porting POSIX applications, there is a limited libposix, but perhaps Python needn't be treated like a POSIX application since it allegedly runs even on Amiga and other exotic platforms. > P.S.: Mluvím česky:-) So do some us on this ML. The monthly pub project meetings are usually in Czech though. Jakub _______________________________________________ HelenOS-devel mailing list [email protected] http://lists.modry.cz/cgi-bin/listinfo/helenos-devel
