Live data from Hacker News

Scrapscript: A functional, content-addressable programming language

github.com

1–10 of 43 posts

Re: Scrapscript: A functional, content-addressable programming language

#2
Main site/community:

https://scrapscript.org

https://scrapscript.discourse.group

https://news.scrapscript.org

Max's brilliant dev insights:

https://bernsteinbear.com/blog/scrapscript

https://bernsteinbear.com/blog/scrapscript-baseline

https://bernsteinbear.com/blog/scrapscript-tricks

I posted a brief update here this morning:

https://scrapscript.discourse.group/t/2024-07-23-design-deve...

Stay tuned! Lots of cool stuff coming :) Some sneak previews:

https://taylor.town/sle-2024-cfp

https://taylor.town/unsound-2024-cfp

Re: Scrapscript: A functional, content-addressable programming language

#3
> Scrapscript solves the software sharability problem.

> it’s JSON with types and functions and hashed references

> it’s tiny Haskell with extreme syntactic consistency

Content-addressability is one of the main features of Unison [1]. How do the languages compare? Why did you feel the need to create a new language (especially since both have a strong Haskell flavor).

I'm guessing lots of people will have these questions so it could be good to mention Unison somewhere in your materials. The language seems to have big goals, so it doesn't seem that you are working on it "just for fun" :-).

Are there other "content-addressable" languages out there other than these two?

--

1: https://www.unison-lang.org/

Re: Scrapscript: A functional, content-addressable programming language

#5

> Scrapscript solves the software sharability problem. > it’s JSON with types and functions and hashed references > it’s tiny Haskell with extreme syntactic consistency Content-addressability is one of the main features of Unison [1]. How do the languages compare? Why did you feel the need to create a new language (especially since both have a strong Haskell flavor). I'm guessing lots of people will have these questi…

Great questions and observations!

--

> Why did you feel the need to create a new language?

Well when I started on this language in 2017-2019(?), I definitely wasn't aware of Unison.

I remember talking to Richard Feldman about scrapscript when he first started working on Roc (fun fact: I was the first person Feldman added to the private repo!).

I spent a long time on the initial Scrapscript implementations, trying to compete in some similar applications as Roc, and Feldman just absolutely crushed it. I felt (and still feel) that Roc is doing a great job at the low-level "platform" experience I yearn for.

[1] https://www.roc-lang.org/

Eventually I met some Unison folks at Strange Loop (2019?), and we had very different inspirations and goals. That seems to still be the case.

There are some hard-to-articulate things I want out of the web, and Unison's architecture doesn't seem suited for it.

Anyway, Scrapscript only got a bunch of attention a year or two when I started working on it in public a bit more. I think defeating alcoholism also made me much more productive haha

--

> How do the languages compare?

From what I understand, Unison has very little in common with Scrapscript.

"Content-addressibilty" is really more of a mechanism than a "feature". Kinda like how AI is not really a "feature". You can't just sprinkle SHA on something and go raise venture capital haha

I think one major difference is that Unison opted for a more traditional git-based paradigm and then built some stellar dev tools on top of that. So far, Scrapscript is a bit more ambitious in its plans.

So go try out Unison! And come back and play with Scrapscript too, when it's more mature :)

Re: Scrapscript: A functional, content-addressable programming language

#6

> Scrapscript solves the software sharability problem. > it’s JSON with types and functions and hashed references > it’s tiny Haskell with extreme syntactic consistency Content-addressability is one of the main features of Unison [1]. How do the languages compare? Why did you feel the need to create a new language (especially since both have a strong Haskell flavor). I'm guessing lots of people will have these questi…

Great questions and observations! -- > Why did you feel the need to create a new language? Well when I started on this language in 2017-2019(?), I definitely wasn't aware of Unison. I remember talking to Richard Feldman about scrapscript when he first started working on Roc (fun fact: I was the first person Feldman added to the private repo!). I spent a long time on the initial Scrapscript implementations, trying to…

Congrats on all the impressive progress!

Re: Scrapscript: A functional, content-addressable programming language

#9
So, (and this is five minutes playing here no deep dive), content-addressable is taken Seriously here.

Each expression is a hash of (its ancestors - not too sure) but the implication is sort of the git dag is built into the language. Looks like that has deepmimplications for releases, deployments, inspecting code chnages

There is an implication that my-labcorp is using scrapscript. Which is interesting as it seems to be a health based platform - tracking and dealing with test results, X-ray images etc etc

So I love committing to one of the most basic CS concepts (cryptographic hashes)

And I love the implications for code management. What I am not sure is why that helps with things like labcorp platform - I also love those implications (encrypt and store and just shuffle that data) because cannot any language use the concepts ?

Re: Scrapscript: A functional, content-addressable programming language

#10
I am interested in this as a replacement for bash scripts

The killer feature would be pulling in other scripts as libraries (they may be published anywhere) but I can lock down the hash of these dependencies inside of my script file.

Is this possible?

Post reply on HN