Hacker News new | past | comments | ask | show | jobs | submit login
Io language (iolanguage.com)
73 points by swah on June 6, 2011 | hide | past | favorite | 35 comments



At the RubyConf in 2003, I asked Matz (the creator of Ruby) what languages he was impressed with these days.

He said only one: Io


At RubyConf 2009, the same question was asked he said 'Go'.


I guess that shows how much taste he has, then.


Well, he also mentioned that he'd recommend people look at Io, Haskell, and some others IIRC. But Derek's question was a separate instance.


Io is not very fast, even slower than Ruby.


I wonder why this is downvoted.

Io is beautiful, elegant and slow. The fact that it's slow doesn't mean it's not worth learning or even using in production. Commenter could have put it in other words, well he didn't, but downvoters: you will not change the fact that it's slow by giving -1.

Do we have an era of wishful-thinking driven comment voting?


Depending on what you want to do, Io can be really fast. It has SIMD support built in so for some structures it can be faster than unoptimized C.


That's what I didn't know, relying on my previous encounters and specific tests. Thank you for pointing this!


And here is a blog post which shows that a 200 times increase in speed is possible when using SIMD: http://www.iolanguage.com/blog/blog.cgi?do=item&id=92


>you will not change the fact that it's slow by giving -1.

...but you can change the fact that it's slow by contributing code to the interpreter! Actor-based concurrency and prototype objects can both be made fast, as has been proven by Erlang and Lua respectively. Exceptions are an unfeature but they can be easily avoided.

The slowness of Io should be seen as a programming challenge, not a problem. ^,~


(note: I didn't down vote it.) Io the current implementation is slow but as Ruby, Javascript, and python have shown one slow implementation doesn't make a language slow. From what I understand Io developed by one person in his spare time so enough interest from the community could fix any performance problems.


I cannot get over how beautiful that site design is.


Yes I also find it very aesthetically pleasing. And it's also very functional as well. For eg, see the search on the Reference page: http://www.iolanguage.com/scm/io/docs/reference/index.html

Steve Dekorte, the creator of Io, also uses same site design on his on website/blog: http://dekorte.com/


Not to mention the tutorial, which is a work of art: succint, clear, informative and easy to follow (for a programmer anyway).

http://www.iolanguage.com/scm/io/docs/IoTutorial.html


It's just off-balance, with all focus on "io". Talk about a beautiful name as well.


Wait, seriously? We're getting to the point of submitting decade-old programming languages (that i'd bet 99% of programmers on here are aware of) as news, without even some kind of news related to them!? Cmon, at least write up a short blog post or a tweet or something.


http://rosettacode.org/wiki/Io

Everything is better with code samples! One of the FizzBuzz implementations is particularly cool:

    for (n, 1, 100,
        fb := list (
            if (n % 3 == 0, "Fizz"),
            if (n % 5 == 0, "Buzz")) select (isTrue)

        if (fb isEmpty, n, fb join) println
    )


Blush! I contributed that bit of Io FizzBuzz to Rosettacode :)

I originally posted that here on HN: http://news.ycombinator.com/item?id=1539295


Not easily found but the Io website also comes with some great code samples: http://www.iolanguage.com/about/samplecode/


Seems to me that there are tonnes of new languages being developed all over the place, I wish they'd have a short list of intended uses/features... but not just all the features, rather the ones that are the selling point, why should I investigate this language further.


Io is just shy of being 10 years old (http://en.wikipedia.org/wiki/Io_(programming_language)) so isn't that new though perhaps it's getting a bit more mention recently probably because of the book Seven Languages in Seven Weeks (http://pragprog.com/titles/btlang/seven-languages-in-seven-w...).

There have been a few discussions about Io on HN before. Here is one post/thread from last year: http://news.ycombinator.com/item?id=1538835


while I second your feeling, Io is at least 8 years old, so not so new :)


yeah I wasn't aware that Io was as old as it is, which makes my rash judgment all the more rash, but I still feel that way about many of the (relatively) new languages mentioned on HN every now and then


http://news.ycombinator.com/item?id=750830

I don't get the "link to some long-existing home page with no comment" thing, but that's what voting/flagging is for.


What a satisfying language to read. I hooe it gains more traction.


and there is Ioke (http://ioke.org/) programming language. its not currently developing i think.he implement io (and some plus points) on jvm. I really like io's design, prototype based++, clean syntax, dynamic, macros...


it's down


IIRC, Steve, the designer of the langauge, hosts the site on his home connection.


Definitely not interested in another dynamically typed language, no matter how elegant.


Io is worth learning just to see what a clean prototype-based language feels like. It'll probably improve your understanding of Javascript.


I wish JavaScript's prototypal features were more like io's, or even Lua's. io was the first language I had seen where I really grocked prototypal inheritance.


I miss NewtonScript for its version of prototype inheritance, but was never fond of the syntax.


I was hacking Io at the C level years ago, and I understand prototype inheritance just fine. I'm far more interested in Scala and Haskell, thanks.


That's a rather ignorant statement to make.


That's a very presumptuous response. I'm very familiar with lisp, scheme, perl, python, php, ruby and javascript. After moving to scala last year I realized that I'm a lot more productive in a good statically typed language than I am in any of those.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: