Live data from Hacker News

The Verse Programming Language [pdf]

simon.peytonjones.org

271–280 of 387 posts

Re: The Verse Programming Language [pdf]

#271
post #109

I honestly fail to see what properties of the language has anything to do with the metaverse, or millions of devs, etc... At first I though the "choice" construct would be a way to distribute code execution among multiple computers (using the fact that in a grandiose metaverse, everything would be a connected computer with lots of compute time to spare ?) but there is not much detail. Also it's not obvious from the s…

I guess it's because metaverse funds it? So it has to tie to metaverse in some angle.

I don't know enough about Fortnite, but at some point if the metaverse wants to escape the "it's just a video game" trope, it's going to have to be... More than a video game, I guess ?

Can epic do that ?

Facebook a least "invented" a form a "passing time" (I'm being generous not to call it wasting time) that doubled as an advertising and marketing platform. And even that only took aff with the advent of smartphones, which enabled "using Facebook / twitter on the go" (and, more accurately, "on the loo").

When there's a VR helmet attached in every toilet, though... I'll sell hemoroid creams :)

Re: The Verse Programming Language [pdf]

#272
I, for one, find it very cool that two out of the five people named as authors are from my old university Chalmers University of Technology, in Gothenburg, Sweden. Chalmers have been very strong on functional programming for quite a while, being (or have been) home to many influential people. Apart from those named in this paper, I can name John Hughes (Haskell/QuickCheck), Thierry Coquand (Coq) and Ulf Norell (Agda) just from the top of my head.

Re: The Verse Programming Language [pdf]

#274
post #233

Very intriguing! Is there an explanation anywhere of how this is different from Prolog? It seems like almost the same thing. That is not a criticism BTW, I love Prolog. From what I can tell the main difference is it has functions with return values. It also looks like it has different semantics for the choice points, letting you nest alternatives in arguments and other expressions. I do like how choice points are see…

I was thinking the same! I love Prolog, but maybe Verse will turn out to be an actually better, cleaned-up Prolog? Implementing Verse in Prolog would be so much fun and very natural.

Re: The Verse Programming Language [pdf]

#276
post #258
post #218

These slides need a lot of work. I'll read the paper later, but the slides really lack context and motivation. * I'm a little disheartened to see "Objectively: no. All languages are Turing-complete" in the context of the question of needing another language. It's a throw away comment and largely irrelevant when considering the actual use of programming languages. If one has to state this platitude, it is more accurat…

I am not sure that fst and snd decreases readability. There was studies that showed that at least for alphabetic languages humans recognized words by the first and last characters initially ignoring the middle. So these abbreviations nicely play on that.

I read “snd” as “send”. I also read “fst“ as “fast”. Word length also matters.

Re: The Verse Programming Language [pdf]

#277
post #218

These slides need a lot of work. I'll read the paper later, but the slides really lack context and motivation. * I'm a little disheartened to see "Objectively: no. All languages are Turing-complete" in the context of the question of needing another language. It's a throw away comment and largely irrelevant when considering the actual use of programming languages. If one has to state this platitude, it is more accurat…

If you rename `fst` to `first`, then `snd` becomes `second`, which is much much (much!) longer.

How about they use 1st and 2nd as a compromise?

Re: The Verse Programming Language [pdf]

#278

As a programming language - I mean it seems cool but it doesn't seem like much of an innovation when things like Granule, Idris, Unison, Erlang, and more already exist. I want to take a moment to look at the Metaverse angle. If there is going to be a unique programming language for the metaverse, I think it's not going to be textual but instead is going to primarily be a 3D language. This poses a big challenge for a…

To me, this doesn't seem like it has much to do with Unison at all beyond being a new FPL, could you elaborate a bit?

Re: The Verse Programming Language [pdf]

#279
I looked at the slides and the start of the paper. I'm mainly confused about two points:

- What's the advantage of introducing a new lambda calculus extension? What will we understand about Verse in virtue of the existence of VC that we don't understand about e.g. minikanren?

- How does the rewriting based execution compare with the search procedures of existing logic programming systems, and how does that impact how one would use Verse? For example, it sounds like they both want Verse to be purely declarative and performant enough to support the metaverse. But:

  - The way the slides expand out the choice of two variables makes it look like it's working in DFS order. The paper makes a big point of rewriting expanding out values "spatially" rather than in time. And I guess it's relatively clear how the rewriting system would produce DFS-like behavior ... but that's a problem isn't it?

  - E.g. minikanren as one of its key design points chose its interleaved search so that search could give comprehensive results on problems where DFS would (naively) never return, because it would go down some infinite rabbit hole. And minikanren, wanting to be more declarative, doesn't rely on "extra-relational" operators like "cut" which are important for prolog. This was supposed to have the impact that users don't need to worry about imperatively controlling the search, but this is only half-true in that users must pick the order in which variables are introduced extremely carefully.
  
  So if one says "x, y, z are all nats in (0, 1, ...) and x * x + y * y == z * z", it seems that, as with DFS, the rewrite system would include a path which tries to expand out and then check all of the (0, 0, z) possibilities to the left of any of all of the (0, 1, z) possibilities, etc. So even if under lenient evaluation there's _some_ tree that finds (3, 4, 5), and this may be reached in chronologically finite time, there's an infinite pile of work to be evaluated _to its left_. So can one never take the "first" element from this sequence, since it seems this means "left-most"? Or does this whole thing need to implicitly be restricted to searches over finite domains?

  It seems like either one must loosen assurances of ordering within sequences, or one must include "extra-logical" means to control the rewrite process.

Re: The Verse Programming Language [pdf]

#280
post #220

Earlier quoted context omitted.

> Perhaps Verse will one day be as influential for PL design as Haskell has been. Has Haskell really been that influential though? It seems to me that MLs, Lisps, Schemes, and even Erlang have been more influential.

It's definitely the most influential of the statically typed functional languages. All other statically typed functional languages or libraries inherit a lot from Haskell implementations, type system and type class concepts.

What modern language in use today was influenced by Haskell other than maybe Idris?

(To be clear, I am mot necessarily down on Haskell or what part it has played. It’s just that many languages seem to be stealing ideas from the languages I’ve listed more than Haskell, which was the criteria I had in mind.)

Post reply on HN