Vrs: Personal Software Runtime inspired by Emacs, Plan 9, Erlang, Hypermedia

https://news.ycombinator.com/rss Hits: 5
Summary

In the multiverse, you can live up to your ultimate potential. We discovered a way to temporarily link your consciousness to another version of yourself, accessing all of their memories and skills. It's called verse jumping. — Alpha Waymond What is this? vrs is a personal software runtime - an opinionated take on my own "endgame" software platform. It considers every aspect of programming - language, execution, environment, editing, tooling, and more - designing across the end-to-end process of building software. Its inspirations are Emacs, Erlang, Unix, Plan 9, and Hypermedia systems. It hopes to combine powerful ideas from those projects into one cohesive whole for an empowering, joyful, holistic programming experience. The key principles are: joy, uniformity, simplicity, practicality, and interactivity. Status 🚧 Under heavy construction 🐉 Here be dragons vrs is a sandbox project, focused on play and experimentation in a pure-fun, pure-utility environment. While I live-on vrs everyday, the platform is very volatile in both concepts and implementation. This software has rough edges. Be warned! Structure lyric : Embedded Lisp Dialect and Virtual Machine : Embedded Lisp Dialect and Virtual Machine vrsd : A runtime implementation as a system daemon : A runtime implementation as a system daemon libvrs : The vrs library crate shared by runtime and client implementations : The library crate shared by runtime and client implementations vrsctl : A thin CLI client over libvrs : A thin CLI client over vrsjmp : A GUI launch bar client A Tour of VRS Introduction to Lyric The runtime runs software written in Lyric lang: # Use `def` to define new bindings # e.g. "hello lyric!" string to symbol `msg` (def msg "hello lyric!") # Update bindings with `set` (set msg "goodbye lyric!") # Basic Primitives - integers, lists, keywords, and more 42 # integers :my_keyword # keywords start with colon (:) true # booleans are `true` or `false` (list msg var_number var_keyword) # create new lis...

First seen: 2025-05-30 17:24

Last seen: 2025-05-30 21:25