✉️ Not subscribed yet? Subscribe to the Newsletter
Future of Coding Weekly 2023/04 Week 2
2023-04-10 23:29
✍️ A Caret for Your Thoughts 🛸 Electric Clojure 👜 Computer History by Balenciaga 🤖 AI of Coding
Two Minute Week
🎥 Code in documentation via Peter Saxton
I've started using my languge to write the documentation page for itself. The cool bit is the fact I can reference parts of the AST and render them in page, so the example are not made up but just parts of the standard library. The actual docs live at language.web.petersaxton.uk
Our Work
🤖 GPT-powered bot that can automate complex online tasks using both the web browser and API calls. via Nilesh Trivedi
🧵 conversation & 🧵 conversation
I built this command-line bot that perform complex online tasks using both browser and APIs of cloud-services: github.com/aicombinator/bot
It's built with GPT-3.5-Turbo, Puppeteer and ActivePieces.
👨🏽💻 Interactive WebAssembly binary inspector via Mariano Guerra
New wasmfromthegroundup.com interactive WebAssembly binary inspector:
-
Hex view at the top
-
Byte meaning on hover
-
Byte format options: hex, dec, oct, bin
-
Select byte to focus "Slice" at the bottom with binary format syntax tree
-
Outline tree view in second tab
🐦 Mariano Guerra: New @WasmGroundUp interactive #WebAssembly binary inspector:
- Hex view at the top
- Byte meaning on hover
- Byte format options: hex, dec, oct, bin
- Select byte to focus "Slice" at the bottom with binary format syntax tree
- Outline tree view in second tab
🐸 TodePond/DreamBerd v0.9.9.9.9.9.9.9.9 via Lu Wilson
Hi all, I am unhappy to announce the un-launch of DreamBerd back into beta .
Also introducing some new features like immutable data, significant whitespace, and lifetimes!
Read the full release notes here: github.com/TodePond/DreamBerd/releases/tag/v0.9.9.9.9.9.9.9.9
Devlog Together
New update for subset.so! You can now group blocks of spreadsheets in the Canvas to organize, group, and drag multiple blocks around. The SF in person meeting was helpful for validating and implementing this one so thanks everyone 🙂
💻 git.sr.ht/~akkartik/driver.love via Kartik Agaram
Update on git.sr.ht/~akkartik/driver.love, my live-editing environment. It's still extremely easy (1% for me, 10% for others?) to crash the driver, so I've been trying to track down thoses corner cases. Realization: my memory of such crashes and instinct for situations causing crashes is extremely unreliable. Possibly the app's error behavior is changing under me during seemingly unrelated changes. I've been spinning my wheels on this for a couple of weeks. Hopefully it'll clarify over time. I might need a more elaborate set of tests that involve configuring a client app just so.
Thinking Together
💬 Adriaan Leijnse
I've been thinking about how the state of a running program could be modeled as the definition of a program changing over time. This seems closely related to "image" based programming systems, right? Does anyone have thoughts or reading related to this?
(I got there thinking about the branchable/forkable database trend which tries to tie program version to state version.)
Content
🎥 A Caret for Your Thoughts: Adapting Caret (Ꮖ) Navigation to Visual Editors via Lu Wilson
"A Caret for Your Thoughts: Adapting Caret (T) Navigation to Visual Editors" by Elliot Evans
I chatted with Elliot a while back about this so it's great to see it in action!
Really cool to see explorations in how to "bridge" different styles of programming together!
🎥 State of Unreal | GDC 2023 | Epic Games - ESRB: RP to M via Tak Tran
Unreal Engine are looking to release a new language, Verse, that is halfway between their visual programming language, Blueprint, and C++. Text-first, concurrency first and typed. They are framing it as a metaverse native language, that they hope to open source and standardise (port to other game environments like Unity, roblox etc too). I’m interested to see what a concurrency first language will look like from such a large player in the games industry. Seems like it’d be popular in the indie dev space (I’m starting to look into learning UE atm, and hoping it succeeds as a better alternative to C++ 😛)
📝 Why Doesn't Software Show Up in Productivity? via David Alan Hjelle
The last couple podcasts connecting with programmer productivity reminded me of this article trying to trace software's impact — or not — on overall productivity. It's main claim is that software, so far, has not had the expected impact on overall productivity, and that the challenge is that it is hard and expensive to model the real world within the constraints of programming. (Maybe you read it differently!) It seems to me that this is one big challenge with end-user programming, too: many people don't want to think beforehand about all the exceptions to a rule that happen in real life, since real life allows you to address those exceptions on-the-fly.
🛸 Electric Clojure via Tom Hutchinson
Electric Clojure (previously called “Photon”) is pretty exciting, it “fully abstracts over client/server state sync at the programming language layer” which I found a bit hard to get my head around but this new example site does a great job of explaining the idea. One of the interesting things I’ve seen made with it is this Clojure spreadsheet app.
🐦 Tweet from @azlenelza via João Araújo
It's a meme, but it's really good: twitter.com/azlenelza/status/1644789222082244613?s=20
🐦 Azlen: Computer history by Balenciaga
🤖
🎥 ConjureUI Demo via William Taysom
Bespoke UIs mixed in with Chat.
📝 Controlled Natural Language via Konrad Hinsen
There are two technologies that I'd expect to be useful in the context of LLMs:
- Controlled natural langues (see sites.google.com/site/controllednaturallanguage for a list), which are subsets of natural languages that can be assigned formal semantics.
- Concatenative programming languages (concatenative.org/wiki/view/Concatenative%20language), which are formal language whose syntax shares the linear structure of natural languages that is the basis of LLMs.
Has anyone seen such connections pointed out or explored yet?
🤖 Build agents which are controlled by LLMs via Ivan Lugo
So is it the case that langchain
and agents
are specifically built prompt templates that are backed with some fun interprocess coms, passing the results to various piped tools like a python / JS script to get the next ‘prompt piece’, and then looping until something ‘correct’ comes up? I feel github.com/mpaepper/llm_agents simplified the abstractions a bit to help me understand what was going on.
💬 Nilesh Trivedi
Thinking about multi-agent / multi-tool systems where humans and bots collaborate: