Chris Maughan 2022-12-05 15:49:18 The guy at the top of this year's advent of code leader board (by some margin) is using a language he made himself (noulith), which is implemented in Rust (linked on the below page, which shows some of his solutions). It even has a syntax highlighted CLI. Next level for sure. But interesting that he can 'optimize' his chances in so many varied puzzles by having his own language. Of course, maybe he'd be just as fast in Python; but I wonder what there is to learn from his language design, if anything.
github.com/betaveros/advent-of-code-2022
Marco Zocca 2022-12-08 18:24:51 and a very interesting language too! all those operator section and broadcasting
Kartik Agaram 2022-12-05 17:35:11 Interesting long-tail tool-for-thought
leahneukirchen.org/blog/archive/2022/03/note-taking-in-emacs-with-howm.html
This bit is particularly tantalizing:
There are two kinds of links supported by howm, namely goto and come-from (in a nod to INTERCAL). goto links are forward references and written like this:
>>> howm
Pressing return on this line when howm-mode
is enabled will show a list of all occurences of the word howm
in your notes directory.
In contrast, a come-from link is written like this:
<<< howm
And this will cause the word howm
in any howm-mode buffer to be underlined and trigger a search where the buffer with <<< howm
will appear first.
Paul Tarvydas 2022-12-05 19:46:11 FYI: I am trying out Kinopio for notes. Kinopio has GOTO and COMEFROM (but doesn’t use those names). Before that I used Obsidian and before that I used emacs. My original interest in Kinopio was to use it as a programming language, but I haven’t gone there yet and am stuck using draw.io as a programming language.
Jarno Montonen 2022-12-06 08:57:08 I just found about intentional software and their language workbench work yesterday. Very secretive indeed, but I found some interesting material. Here's a list in case someone finds these useful:
Jimmy Miller 🕰️ 2022-11-01 18:43:15 Ink and switches latest prototype.
Potluck is a research prototype that demonstrates a workflow for gradually turning text documents into interactive software.
inkandswitch.com/potluck
Florian Schulz 2022-12-08 14:43:48 Florian Schulz 2022-12-08 14:45:01 What I like:
- Icons for all the various nodes
- visual highlighting of fitting nodes/ports when drawing a connection
- visual look and feel
- simple UI that feels fast
Ryo Hirayama 2022-12-09 16:38:21 Peter Saxton 2022-12-10 21:54:23 I'd like to understand more why you think they are key to making programming more accessible? What do you call them, or how do you describe them, when talking to people not comfortable with "algebraic ...".
There are still several design decisions left to make when implementing effects. should handlers be deep or shallow? should multiple resumption be allowed? what syntax should they have. How have you tackled these questions in a way that makes programming as a whole more accessible?
Ryo Hirayama 2022-12-11 03:25:56 I call it effects, and I describes it “An effect has an input and output. You can get a output from somewhere.”
Its design focuses on simplicity and easiness. For example the handler is deep handler because the code is simpler and semantics is intuitive for me. I should design the GUI carefully. Multi-shot continuation has minimal semantics in my language because perform and continue are symmetric. For syntax, I choose minimalistic one because most users don’t use the syntax because my language is a visual programming language.
Peter Saxton 2022-12-11 12:44:06 visual cool, do you have some screenshots or videos? sounds like we have some similar ideas. 🙂
Ryo Hirayama 2022-12-11 12:47:44 The language polishment is mostly done and the editor is just getting started, and I don’t have any screenshot.
I would like to know about your ideas.
William Taysom 2022-12-12 05:44:17 To echo Peter Saxton, is it the composability of algebraic effects and handlers the big bonus here? That you can combine them in flexible ways?
Ryo Hirayama 2022-12-12 07:41:22 Yes, In Desk-lang, all side effects other than pure computation are tracked in the type system. And effects can be handled within the language or outside the language.
Peter Saxton 2022-12-12 08:42:27 Not all will be interesting to you, but the very first ones are on my structural editor and more mid year do I discuss effect types
Ruben Garcia 2022-12-12 14:15:44 Funny, the first thing that came to my mind was the Dan Abramov's article and indeed you cited it 🙂
Konrad Hinsen 2022-12-09 19:07:46 One more software system designed to be minimalist: minimacy.net
There are many ways to be minimalist because there are so many criteria that can be minimized. This one aims for minimal total code complexity within the constraints of being useable for a specific category of code, which is roughly a single server or desktop process. Minimacy is a programming language (strongly resembling the ML family) plus a virtual machine that runs the compiled code. The VM can run on bare metal, or as a process in a host OS. Development happens outside the system. The whole system wants to remain undertstandable in all detail by a single person. So far that's guaranteed by having a single author.
I attended a seminar by it author yesterday, where he discussed many of the tradeoffs made. Sounded quite reasonable.
Jack Rusher 2022-12-10 16:07:55 Nick Smith 2022-12-11 00:06:48 Yeah, I'm disappointed that sometime in the '90s (or maybe even '80s) we settled on what a "desktop operating system" should look like and we've done nothing new since then. We also solidified on what a "mobile operating system" should look like and that is beginning to stagnate now.
Maybe we'll get some new ideas with AR operating systems, but I have a suspicion the designers will mostly just try and port desktop and/or mobile interfaces to AR. We'll have virtual desktops, windows, and app icons floating in front of our faces.
Michael Dales 2022-12-11 09:34:25 I spend a bunch of time reading old programming manuals from the late 80s and early 90s to try and remember the branches that never made it because the corporations that controlled the main OSs weren’t interested in them. This I guess is post “desktop operating system” but there’s still a lot of variety in how Amiga, macOS, RISC OS, etc. approached that. It’s both a wonderful reminder of how far we’ve come (what was Apple thinking with it’s memory strategy for apps?!) and how much we’ve lost (I love how RISC OS lets you control the resources an app can use for instance).