Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

The chief difficulty is more social than technical: the description of a language is a Schelling Point (https://en.wikipedia.org/wiki/Focal_point_(game_theory)). Satisfying computers on the other end of the transformation doesn't necessarily help you satisfy people on both ends of the transformation.

Are you in web development? If so, I rate it as "Extraordinarily likely" you will use transpilers in the future or have done so already. Common ones which people would generally agree with me "Yep, that's a transpiler" include Sass, CoffeeScript, and Babel (an ES6 to the-Javascript-modern-browsers-actually-run transpiler -- which is, by the way, quite nice).

More broadly, and sidestepping a definitional debate, our day to day life is "Take a program state described in Language X then shoot it down the pipe in three other languages and pray the virtual machine knows what it is doing."

Random note: you can totally write a compiler. Writing a really compelling one is a social and technological challenge, but writing a limited one for pedagogical or personal/business use is roughly "an undergrad lab assignment" in terms of difficulty level. I think many engineers get scared by words like "compiler" and "emulator" and "virtual machine" and "programming language" and "operating system" and forget that these are the kind of things that talented-but-very-much-mortal solo developers can ship in weeks for fun.



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

Search: