Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Fancy: first bootstrapped language targeting Rubinius VM other than Ruby (rubini.us)
58 points by tianyicui on Feb 24, 2011 | hide | past | favorite | 17 comments


Rubini.us is looking like it's starting to gain a really solid community behind it. I'm looking forward to switching to it in the near future (probably if/when Heroku starts supporting it)

This article is making me wish could make CoffeeScript run within the Rubinius VM, and have access to the same objects and libraries of my Rails app.

Wish I had time to build that. Maybe someone smarter than me with some free cycles could take this project on :-)


Nice. It looks like the syntax is inspired by Javascript and Ruby.

A previous blog post on the Rubinius blog mentioned that they'll be talking about a Language Toolkit sometime soon.


Or Smalltalk maybe?


Btw, here's a list of current features I forgot to link to in the post: https://github.com/bakkdoor/fancy/blob/master/doc/features.m...


I have this little scheme that I am writing (just for the sake of it), It would be great if you can write some blog about how to generate Rubinius bytecode.

So far I have been compiling to C, but I just created a horrible mess.


Yeah, I'll probably write up some of the stuff I've been doing with Fancy soon.


I am seeing more people trying Rubinus VM to build languages / port languages: see https://github.com/vito/quanto for example.


I think the more accurate term is self-hosting:

http://en.wikipedia.org/wiki/Self-hosting


Bootstrapping is accurate and used in many compiler related texts. http://en.wikipedia.org/wiki/Bootstrapping_(compilers)


Is it petty of me that the unmatched single quotes drive me insane?


Perhaps not --- but avoid exposure to Lisp.

(Unmatched single quotes are the easiest way to embed literal S-expression data inside Lisp S-expressions representing code.)


And ocaml, where you need them for polymorphism.


and scala, where they also represent symbols


You mean symbol literals? Ruby uses :foo but that would mix up with the keyword message syntax. So I took Lisp's syntax: 'foo =) Also, since you'll want to have syntax for message names as well, they need to be able to have colons in them, e.g. 'foo:bar:. Basically anything non-whitespace starting with a "'" is taken as a symbol literal.


It's always bugged me that many programming languages instead of using matching opening and closing quotes surround strings in pairs of closing quotes! )I guess most fonts that programmer's use render these as a sort of neutral vertical quote, so that strings don't look so silly.)


Ascii (and keyboards) only have a single key for ' and ". They are used as both apostrophes, and quotation marks. Typing in code using proper opening and closing quotation marks would be tedious. Editors could choose to apply some smarts and display strings wrapped in quotes using "curly quotes", but that complicates copy-and-paste and so on.

Given the entry situation, the only sane thing to do is use a font that makes both ' and " vertical bars.


think of them as apostrophes




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

Search: