Discussion:
[e-lang] Monte Language -- wow
Mark S. Miller
2016-01-24 02:56:21 UTC
Permalink
I just stumbled across the Monte language
http://monte.readthedocs.org/en/latest/index.html

Wow. Have we discussed it here before? I don't remember that we have, but
it is hard to believe that we have not.

Monte creators,
Are any of you on this list?
Please add yourself to
http://wiki.erights.org/wiki/Object-capability_languages .
How is the project going?
--
Cheers,
--MarkM
William ML Leslie
2016-01-24 07:41:24 UTC
Permalink
Post by Mark S. Miller
I just stumbled across the Monte language
http://monte.readthedocs.org/en/latest/index.html
Wow. Have we discussed it here before? I don't remember that we have, but it
is hard to believe that we have not.
Certainly not this MontE. That name has been kicked around as a
hypothetical E/Python blend for at least the better part of a decade,
but this /serious/ attempt at specifying and implementing it is brand
new (github suggests 2014).
Post by Mark S. Miller
Monte creators,
Are any of you on this list?
Corbyn Simpson has been floating around in #erights since mid last
year by my count, but isn't subscribed to any of these lists; he was
working in graphics drivers when I first met him about four years ago
iirc. Allen Short http://washort.twistedmatrix.com has surely been
here before, a long-time E fan and Twisted developer, who was working
on an E runtime in C [named Ecru] some time ago.

They have been the primary developers of Monte. They both have very
exacting standards. Definitely one to watch.

If you're on freenode sometime, there's always activity in #monte !
--
William Leslie

Notice:
Likely much of this email is, by the nature of copyright, covered
under copyright law. You absolutely MAY reproduce any part of it in
accordance with the copyright law of the nation you are reading this
in. Any attempt to DENY YOU THOSE RIGHTS would be illegal without
prior contractual agreement.
William ML Leslie
2016-01-24 07:48:53 UTC
Permalink
On 24 January 2016 at 18:41, William ML Leslie
Post by William ML Leslie
Post by Mark S. Miller
Monte creators,
Are any of you on this list?
Corbyn Simpson has been floating around in #erights since mid last
year by my count
Erm. 2014 rather.
--
William Leslie

Notice:
Likely much of this email is, by the nature of copyright, covered
under copyright law. You absolutely MAY reproduce any part of it in
accordance with the copyright law of the nation you are reading this
in. Any attempt to DENY YOU THOSE RIGHTS would be illegal without
prior contractual agreement.
William ML Leslie
2016-01-24 08:04:02 UTC
Permalink
On 24 January 2016 at 18:41, William ML Leslie
Post by William ML Leslie
Post by Mark S. Miller
I just stumbled across the Monte language
http://monte.readthedocs.org/en/latest/index.html
Wow. Have we discussed it here before? I don't remember that we have, but it
is hard to believe that we have not.
Certainly not this MontE. That name has been kicked around as a
hypothetical E/Python blend for at least the better part of a decade,
but this /serious/ attempt at specifying and implementing it is brand
new (github suggests 2014).
Erm, although it may have started from an early python (not-rpython)
attempt that dash made earlier:

http://bazaar.launchpad.net/~washort/monte/trunk/files/head:/monte
--
William Leslie

Notice:
Likely much of this email is, by the nature of copyright, covered
under copyright law. You absolutely MAY reproduce any part of it in
accordance with the copyright law of the nation you are reading this
in. Any attempt to DENY YOU THOSE RIGHTS would be illegal without
prior contractual agreement.
Allen Short
2016-01-24 17:07:20 UTC
Permalink
Post by Mark S. Miller
I just stumbled across the Monte language
http://monte.readthedocs.org/en/latest/index.html
Wow. Have we discussed it here before? I don't remember that we have, but it
is hard to believe that we have not.
Hi! Corbin and I have been keeping this quiet until we had something
close to parity with E-on-Java.
Monte is a close cousin of E, using Kernel-E with some minor
extensions. We aim to bring the benefits of the years of
research and design put into E to a modern implementation suitable for
production use. Our chief semantic differences are
the addition of named arguments and parameters to the kernel language,
and switching from internal iteration to external.
The expanded syntax uses Python/Haskell's indentation rules though
braces and semicolons are still available. We have a
runtime with a JIT compiler, written in RPython (the restricted python
subset PyPy's runtime is written in). The lexer
/parser/expander stack is self-hosted, and currently the runtime
internally compiles Kernel-Monte to a bytecode
representation.

We implement E-on-CL style guard-based auditing, and have a working
auditor for DeepFrozen and Transparent. Current
development focus is on a basic module system largely similar to
ES6's. We haven't pursued CapTP yet but implement vats,
async networking and IPC (via libuv), crypto primitives (via
libsodium), and proxy refs.

Performance has received relatively little attention since we're still
covering basic features, but it's currently fast
enough that running our precompile step (parsing code, expanding,
dumping a binary AST representation) isn't too tedious.

The name, of course, I stole from a post you made here in 2004.

The code should be fairly easy to understand for anyone comfortable
with E-on-Java's internals:

https://github.com/monte-language/typhon

We welcome contributions, bug reports, and puzzled questions. :)
Dean Tribble
2016-01-24 18:47:06 UTC
Permalink
Well it certainly looks like a great bunch of work. I look forward to
seeing how it goes and grows!
Post by Mark S. Miller
I just stumbled across the Monte language
http://monte.readthedocs.org/en/latest/index.html
Wow. Have we discussed it here before? I don't remember that we have, but it
is hard to believe that we have not.
Hi! Corbin and I have been keeping this quiet until we had something close to parity with E-on-Java.
Monte is a close cousin of E, using Kernel-E with some minor extensions. We aim to bring the benefits of the years of
research and design put into E to a modern implementation suitable for production use. Our chief semantic differences are
the addition of named arguments and parameters to the kernel language, and switching from internal iteration to external.
The expanded syntax uses Python/Haskell's indentation rules though braces and semicolons are still available. We have a
runtime with a JIT compiler, written in RPython (the restricted python subset PyPy's runtime is written in). The lexer
/parser/expander stack is self-hosted, and currently the runtime internally compiles Kernel-Monte to a bytecode
representation.
We implement E-on-CL style guard-based auditing, and have a working auditor for DeepFrozen and Transparent. Current
development focus is on a basic module system largely similar to ES6's. We haven't pursued CapTP yet but implement vats,
async networking and IPC (via libuv), crypto primitives (via libsodium), and proxy refs.
Performance has received relatively little attention since we're still covering basic features, but it's currently fast
enough that running our precompile step (parsing code, expanding, dumping a binary AST representation) isn't too tedious.
The name, of course, I stole from a post you made here in 2004.
https://github.com/monte-language/typhon
We welcome contributions, bug reports, and puzzled questions. :)
_______________________________________________
e-lang mailing list
http://www.eros-os.org/mailman/listinfo/e-lang
Loading...