This looks really cool and reminds me a lot of Io. Speaking of Io, this make me curious about the performance of Atomo. Io while an amazing experiment in expressivity has terrible performance. Does Atomo similarly prioritize expressivity to the detriment of reasonable performance?
Right now, my priority with Atomo is consistency in the design and simplicity in the implementation. It's acting as an incubator for a ton of interesting language features at the moment (both for myself and for Slate), so I haven't made optimization a priority yet as major parts of it are constantly changing. For example, the version on Hackage has a traditional exception system, while the latest darcs changes have r…
Atomo, the programmer's programmable programming language
11–20 of 37 posts
Re: Atomo, the programmer's programmable programming language
#12This looks really cool and reminds me a lot of Io. Speaking of Io, this make me curious about the performance of Atomo. Io while an amazing experiment in expressivity has terrible performance. Does Atomo similarly prioritize expressivity to the detriment of reasonable performance?
Re: Atomo, the programmer's programmable programming language
#13Earlier quoted context omitted.
Right now, my priority with Atomo is consistency in the design and simplicity in the implementation. It's acting as an incubator for a ton of interesting language features at the moment (both for myself and for Slate), so I haven't made optimization a priority yet as major parts of it are constantly changing. For example, the version on Hackage has a traditional exception system, while the latest darcs changes have r…
Sounds reasonable. So is it possible to mix Haskell in with Atomo to get to the metal so speak? Do you have any examples of this?
I've also written a few wrappers for Haskell libraries over at http://darcsden.com/alex - see http, json, and command.
Basically, you define your methods in Haskell, and call them from Atomo; these methods can be defined as an expression (=:::), a value (=::), or some arbitrary VM action to be executed to yield a value (=:). (Admittedly those operators have gotten a bit silly.)
The definitions use QuasiQuotes for the method pattern, and can use them for expressions as well, though that's not encouraged (operator precedence and macros make it a tricky thing to do at compile time). They look a bit noisy - [$p|x foo: y|] but that'll be fixed come GHC 7, where that pesky $ is removed.
Re: Atomo, the programmer's programmable programming language
#14This looks really cool and reminds me a lot of Io. Speaking of Io, this make me curious about the performance of Atomo. Io while an amazing experiment in expressivity has terrible performance. Does Atomo similarly prioritize expressivity to the detriment of reasonable performance?
It reminds me so much of Io, that I'm a bit disappointed that Io is not mentioned in the "its design is inspired by ..." text at the top of the first page.
Re: Atomo, the programmer's programmable programming language
#15Earlier quoted context omitted.
It reminds me so much of Io, that I'm a bit disappointed that Io is not mentioned in the "its design is inspired by ..." text at the top of the first page.
It does mention Slate, among others. After skimming the intro, I was similarly surprised it didn't mention Self, but it was probably more directly influenced by Slate. (Slate and Io were both strongly influenced by Self.)
Re: Atomo, the programmer's programmable programming language
#16Many bits of Atomo are written in Atomo, including Eco (the package manager), the REPL, and so on... http://darcsden.com/alex/atomo/browse/prelude/
Re: Atomo, the programmer's programmable programming language
#17Many bits of Atomo are written in Atomo, including Eco (the package manager), the REPL, and so on... http://darcsden.com/alex/atomo/browse/prelude/
Are there any languages out there that are, or virtually are, written entirely in themselves?
Re: Atomo, the programmer's programmable programming language
#18Many bits of Atomo are written in Atomo, including Eco (the package manager), the REPL, and so on... http://darcsden.com/alex/atomo/browse/prelude/
Are there any languages out there that are, or virtually are, written entirely in themselves?
Also, most Lisps (especially Scheme) have a relatively small core written in C for bootstrapping, and the rest of the language is written in itself.
Re: Atomo, the programmer's programmable programming language
#19Many bits of Atomo are written in Atomo, including Eco (the package manager), the REPL, and so on... http://darcsden.com/alex/atomo/browse/prelude/
Are there any languages out there that are, or virtually are, written entirely in themselves?
http://jashkenas.github.com/coffee-script/documentation/docs...
Re: Atomo, the programmer's programmable programming language
#20 $ sudo apt-get install haskell-platform libghc6-terminfo-dev
$ cabal update
$ cabal install atomo
$ ~/.cabal/bin/atomo
> 1 + 1
2