Vine: A programming language based on Interaction Nets
1–10 of 51 posts
Re: Vine: A programming language based on Interaction Nets
#2Re: Vine: A programming language based on Interaction Nets
#3https://vine.dev/docs/features/inverse
I was long curious about interaction nets. Can someone confirm if Vine will automagically derive an algorithm for doing this with a single pass or it will do one pass in "forward mode", but once the minimum is resolved, follow it up with a second implicit "book keeping and variable re-resolution pass" that will be equivalent to an actual full second pass you'd get in an imperative language?
It is all very much reminiscent of programming in tensorflow 0.x.
Re: Vine: A programming language based on Interaction Nets
#4I first heard about interaction nets from HVM [1]. It sounds very interesting but I can't say I get it. [1] https://higherorderco.com/
Re: Vine: A programming language based on Interaction Nets
#5Re: Vine: A programming language based on Interaction Nets
#6"This function calculates the minimum of a list of numbers, and subtracts every number in the list by that minimum. This function currently iterates over the list twice; once to calculate the minimum, and once to do the subtraction. At a first glance, it looks like there is no way to merge these two loops, because you need to calculate the minimum of all the numbers before you can subtract from any of them. As it tur…
Yes, this is correct. Though it's worth noting that this is not some transformation being done by the compiler, but an emergent property of the interaction net.
Re: Vine: A programming language based on Interaction Nets
#7Author here, happy to answer any questions.
EDIT: btw, I knew I recognized your handle and it was from this amazing code golf answer:
https://codegolf.stackexchange.com/questions/108170/totally-...
Re: Vine: A programming language based on Interaction Nets
#8Author here, happy to answer any questions.
Re: Vine: A programming language based on Interaction Nets
#9Author here, happy to answer any questions.
Re: Vine: A programming language based on Interaction Nets
#10Author here, happy to answer any questions.
Constructive criticism, but I checked out the docs hoping for an up-front explanation of interaction nets and how they can improve a PL, what kinds of problems they are uniquely good for, etc. Finding none, I read the interaction nets wiki page, but still wasn't sure why "a PL based on Interaction Nets" is something I'd want. Of course, if the answer is "why not" in an esolang sense that's great, but I sensed there w…
Interaction nets are an alternate model of computation (along the lines of the lambda calculus or Turing machines). It has several interesting properties, one of the most notable being that it is fundamentally parallel. https://en.wikipedia.org/wiki/Interaction_nets https://t6.fyi/guides/inets
I think there are many potential applications for interaction nets in parallel & distributed computing, among other fields; and such applications will need a language – hence Vine.
(re your edit – that's fun lol; Totally Cubular is one of my favorite projects)