Re: Implementing my own Python interpreter

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • Robert Kern

    Re: Implementing my own Python interpreter

    Ognjen Bezanov wrote:
    Hello All,
    >
    I am a third year computer science student and I'm the process of
    selection for my final year project.
    >
    One option that was thought up was the idea of implement my own version
    of the python interpreter (I'm referring to CPython here). Either as a
    process running on another OS or as a process running directly on the CPU.
    >
    Now, I can't seem to find a decent source of information on the python
    interpreter. I have made the assumption that Python works very much like
    Java, you have code that is compiled into bytecode, which is then
    executed in a virtual machine. IS this correct?
    Mostly. It is worth noting, though, that the Python bytecode is at a higher
    level than Java bytecode. You can run other languages on top of the JVM using
    Java bytecode (Python, for one), but Python bytecode is geared very much towards
    running Python code with Python's object model.
    Is there a good source
    to give me an overview of Python internals? (I can look at the code, but
    I would find it easier to understand if I can see the "big picture" as
    well)
    Several years ago, there was someone who wrote up such a document for a
    university project. Unfortunately, my Google-fu has failed me, and I cannot find
    it again.
    Also, any pro's out there willing to chime on the feasibility of
    implementing python to run directly on the hardware (without an
    underlying OS)? I don't expect 100% compatibility, but would the basics
    (branching, looping, arithmatic) be feasible?
    Sure. There have been a few ports to microcontroller s. For example, the
    GM862-QUAD-PY cellular module has an embedded Python 1.5.2 (plus a few 2.x
    features):



    PyMite is an open source implementation for 8-bit microcontroller s:



    TinyPy is similar, although I don't believe it ever aimed for (or has achieved)
    running OS-less:



    --
    Robert Kern

    "I have come to believe that the whole world is an enigma, a harmless enigma
    that is made terrible by our own mad attempt to interpret it as though it had
    an underlying truth."
    -- Umberto Eco

Working...