7 ms·
The Ur Programming Language Family
- yyhhsj0521 11y agoHow should I pronounce it?
- kragen 11y agoJust to disclaim, Ur-Scheme, which I wrote in February 2008, is not related to Ur or Ur/Web, which are from later that year. Ur is far more interesting than Ur-Scheme, and Adam Chlipala is a programming demigod.
- Dylan16807 11y agoSo there's at least three unrelated functional languages whose names start with Ur? (being slightly loose with definitions)
- yarvin9 11y agoAlso not related: Urbit. "Ur-" is the Germanic prefix for "original or primitive," which obviously appeals to functional programmers. And of course, Abraham was originally from there: https://en.wiktionary.org/wiki/ur- https://en.wiktionary.org/wiki/ur- https://en.wikipedia.org/wiki/Ur https://en.wikipedia.org/wiki/Ur
- Dylan16807 11y agoUrbit is the third one I meant.
- kragen 11y agoCurtis, have you been banned from Hacker News 8 times? While I find your politics odious, I would find that kind of mistreatment of you odious as well. (I don't remember if we met, though we overlapped at Spiral Muse.)
- thinkpad20 11y agoThe Ur language excites me with its type-level programming, row polymorphism, combination of both ML modules and Haskell type classes, and high performance. However, I have very little interest in web programming. It's quite odd (and more than a little frustrating) that there isn't any way to do write just regular old command-line apps (hello world etc) with Ur. There isn't even a print function; you'd have to FFI it from C and then wrap it inside of a web server route to get it to do anything...
- kyllo 11y agoI agree, although I also have interest in web programming, I am not too excited about learning a new language I can only use for web programming. But the language itself looks very attractive. If this were made into a general-purpose language it could have the potential to be an even better alternative to OCaml and Haskell.
- klibertp 11y ago> you'd have to FFI it from C and then wrap it inside of a web server route to get it to do anything... FFI? Does Ur/Web have something to this effect? I think you'd need to directly hack on the compiler to do this. And I think that, with a language like this one, you should consider using it only if you're ready to do just that: heavily hack on its implementation. Otherwise the frustration would quickly add up and using the language would quickly become a major pain. EDIT: I read the docs and some articles on Ur/Web in 2013 I think, so it's of course possible that it is now much more polished and easier to use.
- thinkpad20 11y agoThere is indeed an FFI -- I played around a little bit with it a while ago. > you should consider using it only if you're ready to do just that: heavily hack on its implementation. That's unfortunately another problem: the current Ur/Web compiler, or at least when I last looked at it about 6 months ago, is tens of thousands of lines of SML, with almost zero comments or documentation. It's truly one of the densest and most impenetrable code bases I've looked at. I have no idea how Adam Chlipala is able to grok it -- I guess he's just that smart. Unfortunately, it makes outside contribution (especially from a person with limited experience with compilers, such as myself) nigh impossible. That, plus it's not hosted on something like Github or Bitbucket, which would make it much easier to contribute to.
- cies 11y agoA good talk on Ur/Web is found in the YT channel of ICFP 2015 that just came online, enjoy: https://www.youtube.com/watch?v=McYhbIubeTc&list=PLnqUlCo055hWNtUo1Haoq347VhCqIjs7u&index=3 https://www.youtube.com/watch?v=McYhbIubeTc&list=PLnqUlCo055...
- eutectic 11y agoI wonder how fast this compiles; other compilers which use extensive global analysis for optimization (like Stalin Scheme and MLton) are impractically slow.