Settings

Theme

Racket

racket-lang.org

180 points by bdj 16 years ago · 52 comments

Reader

KirinDave 16 years ago

We really need to give kudos to these guys. They have been persistent for years in developing a high quality Scheme, and then taking it to the next level. PLT Scheme is practical in its library design, flexible in its reader, meticulous in its documentation and fast as an execution engine.

Making a language fast and well-documented is a thankless task. It's nothing short of a herculean accomplishment for these guys to come out of left field with such a fantastic offering.

  • carterschonwald 16 years ago

    so so so true. Whats doubly impressive is that many of the core active members are full time academics who are able to frame their research so that they can both spend their time improving their PLT/Racket, and framing their work as also being genuinely top notch research!

    • aufreak3 16 years ago

      Totally agree with both. They've taken great initiative and the criticisms that come with it. On top of all this, they create Moby which compiles to Javascript. If this were a concert, I'd give them a standing ovation.

angrycoder 16 years ago

Now that is great rebranding.

All it needs now is 'try Racket in your browser' and a video of some dude making a blog in 15 minutes using Racket. Then it will be the new hotness.

  • jmatt 16 years ago

    Yeah that is great rebranding.

    All it needs now is 'try Racket in your browser' and a video of some dude making a blog in 15 minutes using Racket. Then it will be the new hotness.

    You're using it now. Arc was built on top of PLT and news.arc ships with it. So,you are using the killer app / example that you are looking for right now.

    :)

    EDIT: Clarification

  • ximeng 16 years ago

    Not quite a video, and I think it will take a bit longer than 15 minutes, but here's their tutorial on making a blog.

    http://docs.racket-lang.org/continue/index.html

  • fleitz 16 years ago

    Almost, you need a twitter client these days, blogs are passe.

    What good is a language if you can't make yet another twitter client in 15 minutes.

_pius 16 years ago

I love seeing framework or language homepages with good copy and design like this one. The best ones make you want to stop what you're doing in your favorite language and go code something with the new hotness right now.

  • skybrian 16 years ago

    Unfortunately, it doesn't explain to the newcomer why this language is worth learning. I was expecting some kind of feature comparison or "Why another language?" article.

    (That's a first impression. Then I read the comments here, and discovered it's based on PLT Scheme, which at least tell s me a little about what to expect.)

hvs 16 years ago

It'll be interesting to see where they go with this; there seems to be a conscious effort to downplay the words "Scheme" and "Lisp" on the landing pages. I'm more of a Common Lisper myself (at least for my personal development), but I've been impressed with the PLT Scheme environment and languages. And anything that increases the use of the lisp family of languages is, imo, a good thing.

Others will obviously disagree with that sentiment. :)

Confusion 16 years ago

For reference:

Yesterday: http://news.ycombinator.com/item?id=1408292

Some months ago: http://news.ycombinator.com/item?id=1221374

bandris 16 years ago

"Racket's interactive mode encourages experimentation, and quick scripts easily compose into larger systems. Small scripts and large systems both benefit from native-code JIT compilation. When a system gets too big to keep in your head, you can add static types."

Impressive.

jey 16 years ago

Weird that it doesn't mention that it's the language formerly known as PLT Scheme.

  • Ixiaus 16 years ago

    Not really a "language" but an implementation of the Scheme programming language.

    • jey 16 years ago

      IIRC, the whole point of renaming it Racket is to show that PLT Scheme is "more than just scheme".

      • Ixiaus 16 years ago

        I realize that, but it would be false to call it a "language"; it's more appropriate to call it an "environment".

      • teamonkey 16 years ago

        Or rather, to show that it's not just R6RS Scheme.

    • makmanalp 16 years ago

      My impression is that it goes way far and beyond the scheme standard with all its additional features.

gorm 16 years ago

As if we are not already busy learning clojure?

  • spooneybarger 16 years ago

    You're learning clojure and don't know scheme?

    • leif 16 years ago

      I actually did this.

      Frigging worthless university programming courses didn't bother teaching scheme.

      Learning scheme's libraries on my own along with the lisp paradigm proved too daunting before (or maybe I just never found the right toy project to stick with, not really sure). Having java libraries there to back me up (I was doing stuff with hadoop too, so that made sense) gave me the little leg up I needed to get over the hump.

  • morphir 16 years ago

    write factorial in scheme, then in clojure. And you might see an very interesting difference. Hint: the jvm does not have tail call optimization.

    • fierarul 16 years ago

      As if somebody would pick Scheme over Clojure for tail call optimization alone.

      Clojure has a lot of handy stuff and the fact that's built on top of the JVM (with its limitations, indeed) is a major plus.

lelele 16 years ago

What I don't like about Racket (former PLT Scheme) is that it's a closed environment. You can't use common Scheme libraries (for instance: SLIB), debugging facilities are hidden into Racket's editor therefore you can't access them from Emacs or other tools, etc.

ghb 16 years ago

Any comments on how instructive HTDP is with Racket for introducing a non-programmer to coding?

bad_user 16 years ago

Is there anything like Practical Common Lisp for PLT Scheme?

jheriko 16 years ago

Its cool, but I wonder just how many high-level web oriented languages we really need...

  • muuh-gnu 16 years ago

    Homo sapiens is pretty cool too, but I wonder how many walking talking apes we really need... Random mutation + diversity + natural selection isnt yielding working, practical results only for biological organisms.

    You sound like we should simply take the first best anything we run into and than stick with it unconditionally for the sole purpose of not having to spend time looking over the wall.

    Do you at least remember the day back then when you lost your adventuresomeness?

    • ryanwaggoner 16 years ago

      Do you at least remember the day back then when you lost your adventuresomeness?

      You could have easily made the point without being snarky and insulting.

    • jheriko 16 years ago

      Human evolution is more like looking at revisions of a single programming language. The basic elements remained consistent, but changed subtly over millions of years in an iterative fashion... if you pick life as a whole though I agree with your analogy, but this is very much a small cautious, iterative improvement and it offers me nothing I can't already get.

      I enjoy the rational argument you give here, but I think you went too far by attacking my personality and misconstruing my words. The opposite of many is few, not one, and that was the impetus for my comment - right now "we" all seem to be focused on developing a tiny little area of programming instead of the whole and the effects are obvious if you have to work with it - towering technology stacks of crumbly code that are unstable through bad design and a lack of low-level mentality at the high-level - so bad they give Apple a pretty solid excuse to ban Flash on iPhone.

      As for my "adventuresomeness" I'm comfortable with all the major paradigms and languages and work at every level, from encoded instruction bytes up to things like SQL/XSLT with C/Haskell/Fortran/Java/Ruby/Python/whatever inbetween and a wide variety of platforms (phones/games consoles/PDAs/calculators/PCs). I learned three languages in the last month - only two of which were through necessity at work and I am happy to make radical comments which express my opinions and not turn away from them when they clash with flavour of the month/year/decade... and thats just programming. I dunno what you call adventuresome but from your comment, I'd imagine its probably a lot less adventurous than me... but then I might be misconstruing words and attacking your personality then. :P

  • j_baker 16 years ago

    I don't think I would call scheme "web-oriented".

  • hvs 16 years ago

    I don't think I would refer to a language that has its roots in the first high-level programming languages ever devised as "web-oriented." You may want to look up the words "Lisp" and "Scheme" in Wikipedia.

  • mhd 16 years ago

    Is "web-oriented" the new, more polite "not as fast as Fortran"?

cgbystrom 16 years ago

Languages aside, I don't think the world needs another VM. Can't people just target an existing one? Please?

  • chc 16 years ago

    Your comment seems to imply that there is already a rich ecosystem of VMs in use, but there aren't really. Basically, there's the Java VM, which is bad for functional languages, and there's Mono, which is not really ideal for Scheme either, nor very popular except that it allows compatibility with .NET.

    At any rate, I'm pretty sure PLT Scheme predates both Java and the CLI, so you'd be better off slagging Microsoft for their duplication.

  • samth 16 years ago

    First, the Racket VM has been under development since 1995, so it's not "another VM".

    Second, the Racket VM supports lots of things that other VMs don't: the Racket module system [1], kill-safe synchronization [2], custodians and eventspaces [3], first-class continuations, and many other things besides.

    [1] Composable and Compilable Modules, Flatt 2002

    [2] Kill-Safe Synchronization Abstractions, Flatt + Findler 2004

    [3] Programming Languages as Operating Systems, Flatt et al, 1999

  • KirinDave 16 years ago

    If the FFI is good, why do you care?

    The PLT VM is very very good, and their FFI is very flexible. If you want a lispy dialect on the Java VM, you have one. But otherwise, why does it matter?

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection