[HN Gopher] The Ur Programming Language Family
___________________________________________________________________
The Ur Programming Language Family
Author : Tomte
Score : 73 points
Date : 2024-01-27 15:12 UTC (7 hours ago)
(HTM) web link (impredicative.com)
(TXT) w3m dump (impredicative.com)
| ahmedfromtunis wrote:
| I was preparing myself to be surprised to discover this was a
| programming language using Akkadian, complete with cuneiform
| script.
|
| This, however, was not it!
|
| That said, people are already using this language for their
| projects -- even commercial ones:
| http://impredicative.com/ur/users.html
| troupo wrote:
| I've learned that if there's a language, there's someone using
| it commercially :)
| Tomte wrote:
| I stumbled across it, because bazqux.com (which I'm trialling
| now) uses it: Is BazQux Reader really written
| in Haskell and Ur/Web? Yes. I love to use the best
| tools available.
| drive-by-kment wrote:
| I am now also trialing bazqux. It is not bad. Is this the
| power of the best tools available?
| drive-by-kment wrote:
| In all seriousness, this is probably the best RSS reader I
| have used recently. It's, so much faster than what I was
| using that I had to redo all my estimates for how long it
| should take to do stuff with an RSS reader.
|
| I had to get a stopwatch and start clocking how long it
| takes me to do things using a computer recently, because I
| swear like half the software I was using was slow for no
| reason despite buying super fast ssd/ddr18 ram/cpu etc. I
| got rid of all my games I could not launch from the desktop
| and be playing the game within 30 seconds, and my entire
| outlook on gaming felt better. I really hate when software
| wastes your time.
| walkerbrown wrote:
| Yes, I was definitely expecting cuneiform and base 60 literals.
| eggy wrote:
| I immediately thought of Hoon, Nock for the Urbit world.
| z5h wrote:
| Same here. Which inevitably leads me to revisit the question
| "Does this make enough sense to me that I want to dig into it
| right now?". The answer is always no. But I'm going to go look
| again right now.
| sesm wrote:
| Looks like a statically typed PHP replacement with a lot of
| domain-specific type checks. I really wanted to see how they
| enforce this one: 'Include client-side code that makes incorrect
| assumptions about the "AJAX"-style services that the remote web
| server provides', but couldn't find any examples on GitHub.
| Yoric wrote:
| It's part of the ML family, so it looks more like Elm (or
| OCaml, or Haskell, etc.) than PHP.
|
| If my memory serves, the way they enforce this is by generating
| the client alongside the server.
| shortrounddev2 wrote:
| I think he means PHP in the sense that you're inlining code
| with markup like in PHP (i.e: a templating engine)
| manu3000 wrote:
| Also see Wadler's Links and OCaml/Ocsigen for inline xml
| fragments, and client + server code generation
| madsbuch wrote:
| I love this, and would love to work professionally in languages
| like this.
|
| I saw that last release was in 2020, and took myself in an
| acquired reaction on the "staleness" of this project.
|
| The thing is just, that projects like these become stable at a
| point and need no more upgrades - from there it is horisontal
| features that can happen in libraries.
|
| This is a stark contrast to the Typescript/React ecosystem I am
| spending my time mostly on these days. Every time something does
| not work as expected, it is probably beucase some package was
| updated underneath your feet.
| culi wrote:
| Elm claims the same thing as justification for its lack of
| updates
|
| https://iselmdead.info/
|
| But that usually doesn't go over very well
| G4BB3R wrote:
| Except Evan and his wife are developing elm for backend and
| elm.studio
| amatecha wrote:
| Yeah, sometimes it blows my mind just how much time I have to
| spend dealing with updates to dependent (or meta-dependent)
| packages because our project, or one we integrate with, used
| some popular framework or library. With modern web stuff, even
| supposedly-non-breaking changes sometimes introduce bugs or
| change behaviour in subtle ways that cause issues.
| blacksqr wrote:
| It's amusing that a language called "Ur" is built on antecedent
| languages.
| culi wrote:
| Ur the city was also built on antecedent cities and cultures.
| And what programming language _isn 't_ built on an antecedent
| language?
| samatman wrote:
| There's the city of Ur, but there is also the prefix ur-,
| meaning primitive or original.
|
| What programming language isn't built on an antecedent
| language? Why, the ur-language, of course! Arguably, this is
| FORTRAN.
| banana_feather wrote:
| Urweb is extremely cool. My own attempt to use it for personal
| projects was shut down by how isolated the server component is; I
| think I was trying to read a json file on the server from within
| urweb and there just was not a way to do it without using the C
| FFI. Even BazQux reader had some workaround that just read in a
| stream of bytes which seemed to side step the security model
| entirely.
| nextos wrote:
| Adam Chlipala is behind this and his formal methods books are
| outstanding.
|
| In particular, FRAP is really great:
| http://adam.chlipala.net/frap
| crq-yml wrote:
| Lately, esoteric realms of computing have started trending on HN
| every day - lazy evaluator languages and concatenative languages
| and array languages and research operating systems and standards
| that are no longer in use or died as a proposal.
|
| It's been quite a few years since this was a daily feature so I
| assume something happened. Maybe layoffs.
| _benj wrote:
| Whatever it is, a change of the usual "AI"/"GPT"/"LLM" barrage
| we've had for the last months is welcome!
|
| I miss coming to HN and seeing cool things that I wasn't aware
| of!
| steinuil wrote:
| I've used Ur/Web for an old project
| (https://github.com/steinuil/negoto). It's a very cool language
| with a lot of great ideas, and once you get going it really makes
| it easy to set up a server that interacts with a DB and dynamic
| frontend features.
|
| The compiler, and its error messages, are somewhat inscrutable if
| you don't fully understand some of the more advanced features of
| the language, and some stuff I felt I was honestly not smart
| enough to figure out after a while. There was a point for me
| where most of it clicked together, but it took a long while to
| get there.
|
| Ultimately what made me stop using it after that project was the
| features of the server itself. You _can_ compile it to a self-
| contained HTTP server, but some issues that I don 't remember
| right now made it unfit to use outside of development, so you're
| left with CGI and FastCGI. Like another comment mentioned,
| there's some stuff you can only do using the C/JS FFI, and
| Ur/Web's transactional nature sometimes makes it hard to tie
| these additions into the rest of the language. There's also some
| things (such as submitting a form with multiple files, IIRC) that
| are not supported by the compiler, and even after submitting a
| patch to fix some issues with the SQLite backend I didn't feel
| comfortable enough with the big pile of terse SML to patch those
| in.
| dang wrote:
| Related. Others?
|
| _The Ur Programming Language Family_ -
| https://news.ycombinator.com/item?id=10169244 - Sept 2015 (18
| comments)
|
| _Ur /Web, a Simple and Powerful Language for Secure Web
| Applications_ - https://news.ycombinator.com/item?id=8793272 -
| Dec 2014 (1 comment)
|
| _Ur /web: pure functional, statically typed web programming_ -
| https://news.ycombinator.com/item?id=7829100 - June 2014 (45
| comments)
|
| _Ur /Web in production_ -
| https://news.ycombinator.com/item?id=7072437 - Jan 2014 (1
| comment)
|
| _A Google Reader Replacement written in Haskell and Ur_ -
| https://news.ycombinator.com/item?id=5961570 - June 2013 (46
| comments)
|
| _The UR Programming Language_ -
| https://news.ycombinator.com/item?id=1757199 - Oct 2010 (1
| comment)
|
| _The Ur Programming Language Family_ -
| https://news.ycombinator.com/item?id=1412503 - June 2010 (11
| comments)
|
| _Ur /Web: The Ur Programming Language Family_ -
| https://news.ycombinator.com/item?id=810726 - Sept 2009 (1
| comment)
___________________________________________________________________
(page generated 2024-01-27 23:00 UTC)