Hacker Newsnew | past | comments | ask | show | jobs | submit | michaelficarra's commentslogin

Everything Jeremy said. And my compiler isn't far away from being polished enough for me to consider it ready to be labelled 2.0. Check out the 2.0 roadmap: https://github.com/michaelficarra/CoffeeScriptRedux/wiki/Roa...

95% of the language features were supported during my funding period. Since then, it's nearly reached 100% feature parity, and the tooling/interfaces have been much improved. The code is a lot cleaner, a lot smaller, more modular, more extensible, and uses standard IRs.

If you want to try it out, see the online editor here: http://michaelficarra.github.com/CoffeeScriptRedux/ (shameless plug: it was built using my new browser bundler with full minified-JS to CoffeeScipt source map support: https://github.com/michaelficarra/commonjs-everywhere)

For anyone curious about the compiler implementation process, see this recent slide deck from my MLOC.js talk: https://speakerdeck.com/michaelficarra/an-analysis-of-the-re...


I will say I very much like Redux and have used it for dumping AST nodes. I recently became interested in a project where I wanted to hack on and extend the grammar. I found this difficult in Redux, Coco (and friends), and couldn't use CoffeeScript because of lack of source map support previously.

I think a huge benefit for Redux will be making the grammar very clean and extensible. I know it's on your roadmap to CS-ify it.

Edit: Oh, and if you're curious, I wanted to play around w/ translating the CS AST to TypeScript AST, but I'd obviously need to add more typing/declaration syntax to the grammar.


I would not recommend you use it in production just yet, but from my reading of that wiki page, there are only 3 or 4 fairly uncommon features that are unsupported. Most of them could still use more tests, though, and that's why they are missing that last checkmark.


I hadn't seen that blog post. Thanks for that.


That would just be a default in my fork. Since the output will be massively configurable, you can use any style you can imagine, including a single line with all the braces and semicolons and whitespace you want. See http://oai.cwi.nl/oai/asset/10876/10876D.pdf for a resource on defining grammars for AST to CST transformations.


Fear not. The re-implementation will be completely backwards compatible. It just a smoother compilation pipeline, and adds some output configurability. But regardless, Jeremy and I have decided it would be best to change the name.


I will suggest a few alternatives: Winescript, Caffèscript, Browniscript, Shortscript and Rubyscript.


The names I suggested were "CoffeeScript: Reloaded", "CoffeeScript Episode II: Attack of the Clones", "The CoffeeScript Supremacy", and "Live Free or CoffeeScript Hard". Technically, right now it's "CoffeeScript II: The Wrath of Khan". Jeremy suggested CoffeeScript Redux. That's probably the best choice, though a little boring.


> "Live Free or CoffeeScript Hard".

That would be the fourth version of CoffeeScript. The 2nd version would be "CoffeeScript 2: Script Harder" which is much more awesome.


Maybe a name that distinguishes this compiler for CoffeeScript from CoffeeScript-the-language would be better? There may be other CoffeeScript compilers int the future, should they really all have the same name and be numbered? "CoffeeScript 2" (or any whimsical name that contains "CoffeeScript") would be confusing, it implies that it's the second version of the original CoffeeScript compiler, which it isn't.


Might I suggest "CoffeeScript II: Electric Boogaloo"?


I'd personally suggest 'CoffeeScript vs Predator' too.

Since naming after desserts and alliterative animals has already been done, I wholeheartedly support action film naming conventions.


+1 for Caffèscript


I just want to make sure people know that those changes are bound for a fork once I reach full compliance with the current compiler. The project's one and only goal is to implement the language exactly as Jeremy's compiler does, but be prettier underneath (more extensible, versatile, configurable, robust, etc).


My guess is the latter.


Thank you, you are exactly right. Working on CoffeeScript is my passion. I don't need any financial incentive to do it, I just need food, a place to live, and some cash to hold off my student loan creditors.


Kudos to you for having the stones to do this. I don't know much about CoffeeScript, but what you're doing is cool.

I think you might be selling yourself a bit low. The market value of someone at your level of skill is at least $8,000 per month, and I don't think you should be going down by 62.5% (as opposed to 20-30) just because it's a fun, open-source project. If it's genuinely commercially useful, you should be shooting for market salary.

I would set the same price but make the promise 2 months, if it were me.


Kickstarter allows me to add rewards after the project has started. What kind of rewards would you like to see?


I think GuiA gave a good response. Psychologically, I think the $1 level is a bad anchor but then you're also missing a lot between the $10-$100 range where I'd suspect most donations would come (by quantity, not $ total).

Also, you're offering a mention in the README as a bonus - which is a good idea. But IMHO you should consider also having a separate DONORS file (or similar) which will list the names of anyone who donated and still be part of the project. Even such a small gesture will help people bond to the project and feel like they're a part of it, beyond the Kickstarter. I bet there are people who would even donate $5 just to get into such a file on what might be a popular project :-) (sad but true!)

My real thinking behind this is because I might be including this in JavaScript Weekly next week. And if I do, I think it would be awesome if people felt motivated enough to throw you some money.


+ You want to have rewards in lower donation brackets. Right now there's nothing between $25 and $200 — if I were to donate, I'd likely donate more than 25, but less than 200. You probably want rewards at the 50, 75, 150 levels.

+ Most projects offer tangible rewards (posters, booklets, figurines, keychains, tees-shirts etc.) that are just cool to have for any self-respecting geek. Unfortunately you're a software enterprise so it's not that evident for you, but I'm sure you can be creative in that space.


Perhaps you could find a sponsor to offer some free give away items like t-shirts etc to donors, in return they get mentioned in the kickstarter, the email list and throughout the project. I imagine any startup would happily back this, if you managed to get one that used coffeescript that'd be even better.


Along these lines, for Kickstarters where both individuals and companies are probably going to donate in you're going to want different rewards. Companies want recognition... their name in lights. Individuals want participation and swag. Set rewards up accordingly.


That's a good idea. Michael, you should look into doing a run of CoffeeScript coffee mugs. These ones were much-loved and are no longer available: http://www.etsy.com/listing/93595042/coffeescript-mug


Maybe you can register a domain or add a directory to an existing domain of yours where you create a project page.

You can blog about your progress, you can offer adspace on your page which might sell better than a name/company in the readme.


Hah, you could always go the Indy game route and name library functions after the big donators :).


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

Search: