12 ms·
It’s nice to see even pg goes through phases of “I have no idea what to do next.” By the way, bel is underrated, and I say that not as a pg fan. The ideas in i
by sillysaurusx 6y ago
It’s nice to see even pg goes through phases of “I have no idea what to do next.”
By the way, bel is underrated, and I say that not as a pg fan. The ideas in it are novel, because of its simplicity. The scheduler in particular is elegant.
I suppose I should have taken some notes on what surprised me the most. But, basically, the idea of using a stack as the source of truth for all computation was both ... strange, and obvious afterwards.
The main annoyance is that I can’t flippin’ find a working version of it anywhere. I’ve asked him on Twitter to no avail. The code clearly works; it’s correct in every detail, as far as I’ve found. I implemented most of it, but there was a distinct feeling of “there must be a version he never put out.”
But of course, that’s how you’d feel if you’d been yelled at every time you release things, so I understand why he might not want to show something that isn’t perfect.
- myWindoonn 6y agoBel has nothing not in Scheme, Kernel, Clojure, or SBCL. You might be participating in hero worship.
- sillysaurusx 6y agoEyeroll. Try a more substantive comment and we’ll talk. Clojure in particular has nothing like what bel has. No program does. I don’t claim it’s novel, I claim it’s a simple solution to a hard problem. Possibly the simplest.
- myWindoonn 6y agoYou first. Bel claims to do what Kernel does (metacircularity with everything first-class) but isn't open-source, doesn't have a solid whitepaper detailing its theory and practice, and is clearly just a rich dude spending his unlimited time on fun things.
- sillysaurusx 6y agoAha. You’re jealous of his money and freedom. That makes more sense. You can achieve what you want out of life too. If you want freedom and fun things, then pursue it! Throwing bitter swipes at someone’s years of work is... well... are you sure you want to spend your life this way? To your point: a solid whitepaper is a fine thing, but it matters more what you can do with a work than how it’s described. The substance comes first. Bel isn’t about first-classism. It’s about creating the simplest implementation of a multithreaded metacircular lisp. It’s fully open source, though it doesn’t run.
- skybrian 6y agoYou just summed it up in a way that sounds more interesting than anything else I read. (I started reading the specification and got bored before getting to anything about multithreading.) Maybe writing a solid abstract would have helped?
- taxcoder 6y agoUnlimited time? Do tell! How do I unlock this super power? Even when I have taken several months off there was always more to learn than time allowed. One's time does not scale at the same rate as his money.
- yawn 6y agoHoly low effort comment, batman! The first sentence offers no proof of how any of these individual languages address what you're trying to communicate. I'm not saying you're incorrect...it's just, like, offer something. The second sentence is unnecessarily snarky and adds 0 value.
- geofft 6y agoThe burden of proof is generally on the positive, not the negative. If someone thinks there's something in Bel that's not in those languages, they can say what specifically they think that novel thing is. Otherwise there's no basis on which to have a discussion beyond "Bel is really cool!"
- dang 6y agoThe GP comment was a shallow dismissal, which breaks the HN guidelines: "Please don't post shallow dismissals, especially of other people's work. A good critical comment teaches us something." https://news.ycombinator.com/newsguidelines.html https://news.ycombinator.com/newsguidelines.html The novel thing about Bel is that it attempts to express a full programming language in the same axiomatic way that McCarthy's Lisp expressed computation. I thought pg explained that pretty clearly.
- patrec 6y agoWould you mind expanding a bit more one one of the ideas you find novel and interesting, for example the stack as the source of truth for all computation? I had a look at the examples section on the bel post and read a few pages into the bel document, but all I saw is basically scheme with a slightly funky syntax and primitives (like where). So I guess pg must really be burying the lede (which, from what I gather from the above has at least partly to do with a elegant way to model concurrency, which ur-lisp lacked?).