HTML5 Zone is brought to you in partnership with:

Chris Smith writes coffeescriptlove.com, a fan blog dedicated to that devastatingly elegant "little language that compiles into JavaScript." He loves programming, and software development in general, with a career arc that traces the ascendance of Java, then that of Ruby on Rails, and is now aligning with the power and possibilities of today's browser technologies. He is currently writing an interactive ebook on Backbone.js and CoffeeScript (backbonecoffeescript.com). Chris is a DZone MVB and is not an employee of DZone and has posted 15 posts at DZone. You can read more from them at their website. View Full User Profile

The CoffeeScript Compiler (Needs Improvement)

05.01.2012
| 2560 views |
  • submit to reddit
The CoffeeScript compiler is written in what? CoffeeScript?

I just love this recent exchange on the #coffeescript IRC channel between CoffeeScript creator Jeremy Ashkenas and an unnamed visitor.

13:14 S: Hi, I have just a little question : In what language is written CoffeScript ? (I have see the GitHub but... I don't see a answer)
13:17 S: In src/ they have some .coffee script but CoffeeScript can be write in CoffeeScript :D
13:18 jashkenas: yes, yes it can.
13:18 jashkenas: It's written in CoffeeScript.
13:18 S: What ? I don't understand...
13:19 jashkenas: It was originally written in Ruby.
13:19 S: CoffeeScript can't be compileted by itselft ...
13:19 jashkenas: When that version of the compiler was complete enough.
13:19 jashkenas: It was ported over to CoffeeScript
13:19 S: Ok, I understand
13:20 jashkenas: Then that CoffeeScript source was passed through the Ruby compiler, producing JavaScript
13:20 jashkenas: Then that JavaScript recompiled the CoffeeScript
13:20 jashkenas: and now it recompiles itself.
13:20 S: Ok, nice :D
13:20 S: I little strange but why not :D
13:21 S: And by the way thx jashkenas for this :D I Love ! <3
13:21 jashkenas: cheers.

Meanwhile, Make a Better CoffeeScript Compiler on Kickstarter just reached its goal of $12,000, making it possible for heavyweight committer Michael Ficarra to devote four months of full-time work to the project.

If you haven't noticed, we appear to entering a new era of fan-supported open-source software (OSS) development projects. The first such project to catch my attention was Yehuda Katz's rails.app, which is currently funded at almost 2x its initial goal. I think this is a welcome and healthy turn of events for open source, and will result in an explosion of activity as more and more contributors find it possible to carve out serious time without needing to reach the threshold of full-time, salaried employment with a corporate sponsor.
Published at DZone with permission of Chris Smith, author and DZone MVB. (source)

(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)

Comments

Peter Galiba replied on Wed, 2012/05/02 - 10:23am

Why is it strange that the compiler is written in the same language it compiles? Most C compilers are written in C, and nobody complains.

John Esposito replied on Wed, 2012/05/02 - 12:33pm in response to: Peter Galiba

Nothing wrong with the mechanics, of course, but still a little funny because (my silly) stereotype affirms that CoffeeScript lovers love CoffeeScript so much that they never want to see anything but CoffeeScript. Even when actually writing a compiler. :) 

Juxtaposing CoffeeScript and C also tickles a sort of funny-bone, because in terms of relative distance-from-the-metal, CoffeeScript and C are opposed, of course, but in terms of relation to a lower-level predecessor language, you might humorously see CoffeeScript->JavaScript as (very roughly) C->assembly (if you're already thinking like dmr).

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.