[OT] Compilable Python-like language?

Jacek Generowicz jacek.generowicz at cern.ch
Mon Mar 22 09:58:05 CET 2004


Ed Cogburn <edcogburn at hotpop.com> writes:

> I'm just curious if such a beast exists out there.

That rather depends on what you mean by "Python-like".

This could mean any of:

- Has significant whitespace

- Defined by an open source implementation

- Dynamic

- Multi-paradigm

- Byte-code compiled

- Highly portable

- Simple, highly intuitive syntax

- Ugly inconsistent syntax

... and lots more.


Secondly, it also depends on what you mean by compilable.

Any language is compilable. Perhaps you are asking whether a language
meeting you requirements (whatever they be) already has an existing
implementation with a compiler. (Python does. Oh, you didn't mean
byte-compliation? ... well Python does have a binary compiler; it's
called psyco. It has quite a number of limitations, but it does
exist.)

Assuming that you really _do_ mean "compiling to native binary", it's
still not clear exactly what you mean by that. Do you mean "produce
stand-alone binary executables"? If so, then you should note at least
two things:

a) Creating stand-alone executables is _not_ a necessary condition for
   compilation to native binary.

b) Most "stand-alone binary executables" aren't stand-alone.

> without the advanced dynamic and OO features would still be
> interesting to me (indeed, it would really have to lose most of the
> dynamic characteristics in order to make it a compilable language,
> which is why we don't have compile-to-binary Python, right?).

Nothing could be farther from the truth. Languages in the Lisp family
have all the dynamicity of Python and then some, and have had native
compilers for over 2 decades. (I recommend looking at Common Lisp, if
you want to know more. Scheme would be another modern alternative, in
that family.)

> Is there such a thing?

No way to answer your question without a clearer statement of what
your question actually means.



More information about the Python-list mailing list