Live data from Hacker News

Skip: A programming language to skip the things you have already computed

skiplang.com

41–50 of 119 posts

Re: Skip: A programming language to skip the things you have already computed

#41

> Thanks to Skip's tracking of side effects the garbage collector only has to scan memory reachable from the root of a computation But any typical copying GC only has to scan memory reachable from the root(s) of a mutator. I suspect there are more interesting optimisations, but I am unable to discern them from this statement.

Well, imagine your type-system was able to tell you exactly what roots are mutable in what scope. Now you can run a garbage collection on a single scope. That's not how it works, but in pseudo code:

collect { // Some code return ...; }

Well, if you don't have a type-system that tells you what is mutable, you have to either scan all the mutable roots, or maintain a write-barrier to know what could have captured data in the scope.

The problem with write-barriers, which is the go-to solution for generational GCs. Is that it is a conservative approach. Meaning, it will promote garbage in the cases where the pointer that lived outside of the scope is dead.

Let's take an example, again, in pseudo code:

myObject = { field1: []};

collect { myObject.field1 = [A, B, C]; myObject = null; }

If you use a write-barrier, what is going to happen is that [A, B, C] is going to be promoted, because the barrier is going to track the object myObject, and it doesn't realize that it's dead.

However, instead, imagine you have a type-system that tells you that in that scope, the only thing that can be mutated is myObject!

Well, now you can run that in a loop, without accumulating garbage!

Makes sense?

Re: Skip: A programming language to skip the things you have already computed

#44
post #10

Looks interesting but here's what I don't understand. So many programming languages do not show example code on the homepage. That's like if Mazda didn't show cars on their homepage. Sure, you won't really know what it's like to drive it without getting your hands dirty but at least let me see the trim.

In that regard, they are taking the language‘s name way too serious.

Re: Skip: A programming language to skip the things you have already computed

#45
post #10

Looks interesting but here's what I don't understand. So many programming languages do not show example code on the homepage. That's like if Mazda didn't show cars on their homepage. Sure, you won't really know what it's like to drive it without getting your hands dirty but at least let me see the trim.

In the spirit of testing: Mazda doesn't show cars on their home page. Here is mazda.com: Forbidden You don't have permission to access / on this server. You have to add www. to mazda.com before you can see any damn cars. And it's just one car I see; some fat SUV that looks like it's about to give birth to a pair of sporty twins.

Must be an NFT that you don't own

Re: Skip: A programming language to skip the things you have already computed

#48
post #30
post #18

A whole homepage about a programming language, and nowhere on the page does it show the programming language. :-/

Why is seeing the syntax of a programming language so interesting? I think that syntax is one of the least interesting aspects of a programming language.

Syntax interesting I is a aspects think so the language. Is language the of why seeing programming of of programming a syntax one interesting? Least that

Re: Skip: A programming language to skip the things you have already computed

#50
post #30
post #18

A whole homepage about a programming language, and nowhere on the page does it show the programming language. :-/

Why is seeing the syntax of a programming language so interesting? I think that syntax is one of the least interesting aspects of a programming language.

it's the user interface of a language. you could as well say that screenshots are the least interesting thing about a gui app and what it can do is more important, but people want to see the screenshots anyway!
Post reply on HN