469,902 Members | 1,805 Online
Bytes | Developer Community
New Post

Home Posts Topics Members FAQ

Post your question to a community of 469,902 developers. It's quick & easy.

PROTHON, a classless Python

Ben Collins and I have developed a new interpreted object-oriented language
very closely based on Python, that is Prototype-based, like Self
(http://research.sun.com/research/self/language.html) instead of class-based
like Python.

I have named the language Prothon, short for PROtotype pyTHON. You can
check it out at http://prothon.org.

The prototype scheme makes object oriented computing very simple and
complicated things like meta-classes melt away. Once you get used to
prototypes, classes seem very ancient and old-fashioned. You can inherit
data as well as methods and you can switch prototypes (think "types" or
"classes") on the fly.

Prothon is pre-alpha, but runs well enough to give it a spin. Basic types,
the File object, importing, packages, and the Re module are ready to try.
It runs on Linux/Unix and Windows.

Obviously Prothon is not Python compatible, so I have taken the liberty of
implementing many changes that have been imagined for the almost mythical
Python 3.0. Right now I've made decisions unilaterally, but I'm not
planning on freezing language decisions until 7/04, so get on the Prothon
mailing lists and make your opinions known.

Since the Prothon interpreter has been written from the ground up, we've had
the opportunity to make it industrial-strength. We feel this is very
important for high-end hosting applications, and that this is a current
weakness of Python and it's GIL. Prothon has no GIL. Here are some
interpreter features:

- Uses native OS threads, even multiple interpreters can run at once on the
same objects.

- Locking is done at the object level with shared read locks and exclusive
write locks.

- No recursion limits, Prothon is stackless.

- Garbage collection is mark-and-sweep in seperate thread.

- C coding is simple. Macros simulate coding at Prothon level. (No
reference counting!)

- Ints are 64-bits, internal architecture is all 64-bit.

- Built on Apache Portable Runtime (APR) for stability, ease in porting, and
eventual integration with Apache.
Jul 18 '05 #1
0 1140

This discussion thread is closed

Replies have been disabled for this discussion.

Similar topics

reply views Thread by Mark Hahn | last post: by
145 posts views Thread by David MacQuigg | last post: by
29 posts views Thread by Mark Hahn | last post: by
28 posts views Thread by David MacQuigg | last post: by
7 posts views Thread by Michele Simionato | last post: by
22 posts views Thread by Paul Prescod | last post: by
20 posts views Thread by Mark Hahn | last post: by
reply views Thread by average | last post: by
reply views Thread by Salome Sato | last post: by
By using this site, you agree to our Privacy Policy and Terms of Use.