[HN Gopher] Zest: a programming language for malleable and legib...
___________________________________________________________________
Zest: a programming language for malleable and legible systems
Author : one-more-minute
Score : 47 points
Date : 2025-03-16 13:50 UTC (3 days ago)
(HTM) web link (github.com)
(TXT) w3m dump (github.com)
| ModernMech wrote:
| Other programming languages this author has worked on:
|
| Droplet: "Datalog in time and space" -
| https://github.com/jamii/droplet
|
| Eve: "Datalog meets Smalltalk" - https://witheve.com
|
| Imp: "An Eve for people who build Eves" -
| https://github.com/jamii/imp
|
| These are some pretty "out there" languages with a high
| strangeness budget, so I'd expect the same of Zest.
|
| I like the idea of exploring the interaction models that Eve
| provided but instead with a "well-trodden ground of a mostly-
| familiar imperative language", but I'm curious how that will work
| since the interactions in Eve were made possible due to the
| datalog-like language design. So my initial question is how
| "mostly-familiar" Zest really is; what imperative concessions
| does the language make to gain which interactions?
|
| With Eve, a lot was gained just by keeping a database of compiler
| artefacts that would normally be thrown away. This allowed for a
| degree of "provenance" tracking, where you can ask the compiler
| how a runtime value came to be.
|
| I think there's an interesting middle ground where maybe we can
| get a bunch of the things in Eve that were nice, but maybe tone
| down the weirdness budget to lower the learning curve. Maybe
| that's Zest? Will be interesting to follow this project.
| corysama wrote:
| Oh crap. This is from the Eve folks? That was one of those
| projects where everyone got excited about how new and powerful
| it was. Then continued programming in PHP out of inertia.
| ModernMech wrote:
| It's from one of the Eve folks, Jamie Brandon.
| Ohkay wrote:
| The docs have test cases embedded in the markdown. This is a
| pretty cool use of markdown. I have started doing something
| similar with markdown in my project. I wonder if other
| programming languages have done this too.
| oulipo wrote:
| Well, it's what's called "literate programming"
| returningfory2 wrote:
| Rust has this, and it just makes so much sense. Especially when
| you write a library in which the basic demo is also the basic
| unit test you want to make. Instead of writing a specific unit
| test that's hidden in source code, you just embed it in the
| docs and then you (a) don't have code duplication and (b) have
| verification your documentation's code samples are actually
| correct.
| LoganDark wrote:
| > and (b) have verification your documentation's code samples
| are actually correct.
|
| I find a lot of libraries don't go through the effort to
| actually use doctests, and just stick `no_run` everywhere,
| which defeats a lot of the purpose.
| noelwelsh wrote:
| I could not tell if this is a hobby project, or the product of a
| research lab. Does anyone know? Very cool stuff. It would benefit
| from some institutional support.
| returningfory2 wrote:
| The person behind Zest runs an interesting blog/work journal, I
| recommend subscribing [1]. I could be wrong, but my
| understanding is that they don't have a full-time job. Instead
| they do some amount of consulting, and then spend most of their
| time and intellectual energy working on their projects. Which
| is pretty cool I think.
|
| [1] https://www.scattered-thoughts.net
| TimorousBestie wrote:
| Oh, that looks very interesting! Thanks for linking it.
| flashgordon wrote:
| Ah now that is an envious life! Not have to worry or be
| distracted by a full-time job that too by choice! Hope he
| gets to crank a lot more out!
___________________________________________________________________
(page generated 2025-03-19 23:02 UTC)