[Self-interest] Self implementation in Python

Stephen De Gabrielle spdegabrielle at gmail.com
Tue May 17 18:17:06 UTC 2022


This is great.

I’m wondering if it is possible (or sensible) to use pypy/rpython JIT
generator?

Bw
Stephen

https://morepypy.blogspot.com/2011/04/tutorial-writing-interpreter-with-pypy.html

https://rpython.readthedocs.io/en/latest/


On Tue, 17 May 2022 at 18:31, sin-ack <sin-ack at protonmail.com> wrote:

> Hey everyone,
>
> This looks pretty nice. Playing around with it a little, it was
> really cool seeing the original Self VM files load. I tried to
> get a mirror via `object asMirror', but it seems like `_Mirror'
> isn't implemented just yet. :)
>
> Your AST parsing looks pretty well done. It actually looks like
> my first attempt at a Self interpreter, only with less memory
> management stuff :) I'm curious to know whether you would want
> to switch to a bytecode interpreter in the future or keep it as
> a pure AST interpreter for ease of understanding.
>
> As far as I can tell memory management/GC is a non-goal to keep
> the interpreter fully portable. Is this correct?
>
> I checked out the GUI and it's already pretty nice as it is.
> Buttons could benefit from being less... large :), but it's
> already really usable (and more of a GUI than I came up with).
>
> Also, do you intend to maintain full compatibility with the
> original Self and its Transporter system, or are you willing
> to improve upon it later down the line?
>
> Hoping you decide to continue this project and looking forward
> to further developments!
>
> ------- Original Message -------
> On Tuesday, May 17th, 2022 at 6:40 AM, Luke McNeil <lukemcneil61 at gmail.com>
> wrote:
>
>
> > Hey everyone!
> >
> >
> >
> > We’re a team of student engineers from Rose-Hulman Institute of
> Technology that’s been working on a Python implementation of Self for the
> past academic year. We began developing this system since the Self virtual
> machine is currently unable to be easily run on most modern operating
> systems (without setting up a virtual machine to emulate older 32-bit
> operating systems).
> >
> >
> >
> > Our system is designed to parse and interpret Self inputs in a similar
> manner to the Self environment and virtual machine. The system comes with
> its own GUI framework to demonstrate its features that is extensible by
> users, and the framework itself serves as a proof-of-concept for
> implementing Morphic-related features in the future. The interpreter’s
> implementation is bootstrapped, meaning that higher-level features like
> lists and strings are directly imported from their respective Self modules,
> which we file out from the original Self system.
> >
> >
> >
> > We hope that this project will serve not only as a useful educational
> tool for introducing engineers to alternative programming paradigms, but
> also as a convenient environment for Self development. If you’re interested
> in exploring our system further, we’ve prepared a video demo for your
> convenience (here). You can also visit our repository on GitHub below. We
> welcome your thoughts and feedback!
> >
> > https://github.com/pinneyja/self-interpreter
> >
> >
> >
> > Thanks,
> >
> > Rose-Hulman Self Interpreter Team
> >
> > (Nathaniel Blanco, Achintya Gupta, Luke McNeil, Jacob Pinney)
> _______________________________________________
> Self-interest mailing list
> Self-interest at lists.selflanguage.org
> http://lists.selflanguage.org/mailman/listinfo/self-interest
>
-- 
----
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.selflanguage.org/pipermail/self-interest/attachments/20220517/4b3a63e3/attachment.html>


More information about the Self-interest mailing list