https://futureofcoding.org/ logo
#thinking-together
Title
# thinking-together
g

Guyren Howe

11/29/2023, 3:02 AM
But have y’all seen this? https://scrapscript.org/ This is my kind of thinking.
t

Taylor Troesh

11/29/2023, 3:05 AM
Author here! Let me know if you have any questions 🙂 Just hit another major milestone this week and I'm expecting to open up the repo in Jan
a

alltom

11/29/2023, 4:01 AM
I haven’t seen it, but I like it. I can’t think of a project to try with it offhand, though. How will I know when I have an idea that would make a good scrapscript project?
m

Miles Sabin

11/29/2023, 9:55 AM
Reminds me of Unison ... could you compare and contrast?
t

Taylor Troesh

11/29/2023, 12:29 PM
How will I know when I have an idea that would make a good scrapscript project?
Going to be a while before people are building projects with it haha. For the foreseeable future, it's likely going to sit somewhere between zsh and wolfram language. And then hopefully something like flash/geocities 🙂 I'll try to put out frequent demos once it's usable
Reminds me of Unison ... could you compare and contrast?
Yes! Both projects are functional languages that use content addressability. Main difference is goals: • unison focuses on building software with novel team collaboration and distributed systems • scrapscript focuses on being a good global package manager and messaging format... that also might be a good general-purpose programming language one day haha
m

Miles Sabin

11/29/2023, 12:32 PM
Could you imagine writing something similar-ish to scrapscript as a Unison library?
t

Taylor Troesh

11/29/2023, 12:44 PM
After talking to paul chiusano about it a few years ago, it didn't seem like there was really enough overlap Haven't really kept up with the project though, so maybe things have changed
o

oPOKtdJ4UbTdPaZig6jg

11/29/2023, 12:49 PM
Oh, my language used to have "text" instead of "string" aswell. But after a long time, I felt I didn't want to use my "strangeness" budget on old and proven name. So.. why text?
t

Taylor Troesh

11/29/2023, 1:09 PM
More than anything, I think I'm most interested in how non-programmers might interact with this language one day. And much like SQL, when you're thinking about non-programmers, you start to choose some non-standard naming conventions 🙂
I just wrote a really long essay on why I think many of the on-ramps into engineering are broken. I'd love to rekindle some of the hypercard/flash/myspace/geocities magic of yore
d

David Alan Hjelle

11/29/2023, 4:25 PM
I think I'd need to be more of a historian to really understand what exactly the "magic of yore" encompassed — even though I miss it a lot myself! — but one complicating factor is how much more complicated systems have gotten, for good reasons. A few examples: • desktop apps and web pages once could be written assuming a fixed window size in many cases, much simpler than making a UI that scales from a phone to a 6K display • ASCII is much simpler than Unicode • anything without a network is much simpler than something with one — security is so much easier if you don't have the world at your door It's fascinating to me that Decker chose to ignore so many modern bits — color, Unicode, scaling UI — and ended up with something that I think captures some of that magic. …and, yet, I haven't built anything with it, either.
Linking one of my points to your essay — one of the reasons that software projects keep needing maintenance and aren't finished is because of the network and security requirements.
t

Taylor Troesh

11/29/2023, 7:33 PM
wow, this is the first time i've seen decker, and i've been desparately searching for something like it for a long time!! thank you thank you
k

Konrad Hinsen

11/29/2023, 7:48 PM
Scrapscript looks interesting to me, if only for the overlap with an idea I have been toying with myself: a language defined in terms of IPFS data blocks, i.e. linked CBOR. @Taylor Troesh You mention IPFS but it looks like you don't actually use it, right? I see hashes that are not IPFS CIDs. Any reason for rolling your own? Building on IPFS would give you data exchange with the wide world, which I think it worth having. How does scrapscript interact with the rest of the computing universe? How can I write code that works on my address book or my e-mail, for example? It looks like all inputs have to be in scrapscript syntax.
g

Guyren Howe

11/29/2023, 7:50 PM
Decker?
d

David Alan Hjelle

11/29/2023, 7:58 PM
t

Taylor Troesh

11/29/2023, 8:00 PM
Any reason for rolling your own? Building on IPFS would give you data exchange with the wide world, which I think it worth having.
Scrapscript is storage-agnostic, so theoretically somebody could host a scrapyard on top of ipfs, filecoin, whatever. But I don't want to bite off too much at once, so I think we should start with a simple centralized kv store I've also tried to make it namespace agnostic, so theoretically, you should be able to use ipns for scrapnames too! There are a few more tricky bits there, but the concept definitely works.
How does scrapscript interact with the rest of the computing universe? How can I write code that works on my address book or my e-mail, for example? It looks like all inputs have to be in scrapscript syntax.
Scrapscript is just like any other programming language, so not very e-mail friendly haha. Open to ideas though
k

Konrad Hinsen

11/30/2023, 7:07 AM
Scrapscript is just like any other programming language, so not very e-mail friendly haha. Open to ideas though
If Scrapscript does networking, you can implement the IMAP protocol. If Scrapscript can read local files, you can delegate IMAP to an external tool such as isync. In both cases you need a MIME parser. Just like with any other programming languages. So in the end, my question comes down to whether Scrapscript has access to local files and to network protocols.
t

Taylor Troesh

11/30/2023, 2:40 PM
oh sorry i misunderstood what you were asking. yes, you will be able to access local files and network through the cli
4 Views