HNHacker News
TopNewBestAskShowJobs

dharmatech

726 karma · joined August 16, 2007

submissionscomments
dharmatech··on What Zig felt like, coming from Rust
You mention there that you like Ruby and that you wanted Ruby with types (and that you looked at Crystal).

I've been messing around with a language that I summarize as:

ALOE = Scheme + Smalltalk + Types

https://github.com/dharmatech/2026-09-02-aloe-racket

One of the examples is a very basic computer algebra simplifier:

https://github.com/dharmatech/2026-09-02-aloe-racket/blob/ma...

That simplifier is based on a computer algebra library in Scheme:

https://github.com/dharmatech/mpl

dharmatech··on Emacs Bedrock 2.0
Hey Ashton,

I see you're with PLT. :-)

Since Racket is built on Chez, you might like this. It's an Emacs-like editor built in Chez Scheme:

https://github.com/paveluv/e

dharmatech··on Schemy Lisp En DOS
Super cool to see a new Scheme on DOS.

I've been messing around with a language that I summarize as:

ALOE = Scheme + Smalltalk + Types

Boids implementation:

https://github.com/dharmatech/2026-09-02-aloe-racket/blob/ma...

https://github.com/dharmatech/2026-09-02-aloe-racket

dharmatech··on Stop Making TUIs
Looks like the sagemath UI he mentions is here:

https://github.com/tqbf/casette

dharmatech··on Jolt: Clojure compiler implemented with Chez Scheme
See also lg which is a clojure implemented in go:

https://github.com/nooga/let-go

Fun fact. It also runs on plan9:

https://github.com/nooga/legmacs/issues/1

dharmatech··on Malleable computing, Emacs, and you
This sounds so cool! Do you have this shared somewhere?
dharmatech··on Sleep regularity is a stronger predictor of mortality risk than sleep duration (2023)
Hey Aurornis,

I definitely haven't looked into the underlying models of histamine to see how things work.

My observation is that, when I avoid histamine related foods, I sleep longer and fall asleep faster. The naive model is what led me to try that. But I totally acknowledge that there's likely way more at play under the hood. And I would like to know more about why this works! Or, at least why it works for me.

Thank you for pointing out the complexity of the underlying mechanism.

dharmatech··on Sleep regularity is a stronger predictor of mortality risk than sleep duration (2023)
Yes, magnesium has helped.

For me, avoiding high histamine foods as well as histamine liberators had helped tremendously.

The theory:

Anti-histamines like Benadryl make you sleepy by blocking histamine.

Well, instead of blocking the histamine, get rid of it in the first place by avoiding histamine foods (for example aged or preserved meats).

dharmatech··on Ask HN: What Are You Working On? (July 2026)
Cool!

Any demos available of the web based browser?

dharmatech··on Ask HN: What Are You Working On? (July 2026)
( 。 ♡ ‿ ♡ 。 )
dharmatech··on Alternate clock designs and time systems
Love it ( • ‿ • )
dharmatech··on Show HN: Wyrm – Solve algebra by touch, built on an open-source soundness engine
The interface is beautiful!

Just curious... Did you implement each app natively? I.e. Swift and Kotlin? Or were you able to use a cross platform framework like Flutter?

dharmatech··on Show HN: Wyrm – Solve algebra by touch, built on an open-source soundness engine
Very cool!

Here's a demo of a library for interactively eliminating variables from sets of equations:

https://youtu.be/7ysUdxTfKhU?is=lE5o9Besk1XNnggP

Source:

https://github.com/dharmatech/combine-equations.py

The interactive gui part starts at 4:08. Before that is the setup and context of the example.

If you ever move in the direction of supporting sets of equations and isolating variables, consider using colors to indicate known values and unknown values as is done in this library.

I test this library on exercises you'd find in college physics (motion, constant acceleration, projectile motion, Newton's laws, etc.) since these involve sets of equations and eliminating variables so that you have expressions in terms of known values.

The above demo uses a jupyterlite notebook, so everything runs client side in the browser. No server side kernel necessary.

To use your interactive fluid style in this library to eliminate variables, I could see the user first isolating that variable. Then dragging that variable they want to eliminate over an instance of that variable in another equation. So that's effectively the user saying "replace this variable with this expression".

dharmatech··on PeerTube is a free, decentralized and federated video platform
> As a professional YouTuber, the main issue I instantly see with this is the lack of monetization.

That's a feature, not a bug.

dharmatech··on A native graphical shell for SSH
Alan Kay once strongly critiqued web browsers. He argued for a much simpler architecture.

Your experiment somehow reminds me of the better approach that he was hinting at. I.e. I think he would appreciate your experiment as well as the neuroscience in your background.

https://x.com/i/status/1957798084181901333

dharmatech··on A native graphical shell for SSH
Your project is really cool.

And, when a project announcement upsets this many people, it's a sign you're on the right path, or at least an interesting one.

; - )

dharmatech··on I built a GPU back end for Emacs
Andros is also the guy behind the really cool Org Social:

https://org-social.org/

dharmatech··on OCaml Onboarding: Introduction to the Dune build system
I've been messing around with ocaml on plan9:

https://github.com/dharmatech/ocaml

dharmatech··on Rubish: A Unix shell written in pure Ruby
Cool project!

Just for fun, looking at code count as a rough measure of complexity.

rubish: 26,842

rc (plan9 shell): 5,888

To be fair, rubish does a lot more than rc. rc is pretty minimal.

rc source:

https://github.com/9front/9front/tree/front/sys/src/cmd/rc

Measures below:

    $ wc -l `find . -name '*.rb'`
      1124 ./rubish/execution_context.rb
        43 ./rubish/frontend.rb
      260 ./rubish/builtins/hash_directories.rb
      510 ./rubish/builtins/echo_printf.rb
      834 ./rubish/builtins/bind_readline.rb
      182 ./rubish/builtins/directory_stack.rb
      299 ./rubish/builtins/read.rb
      324 ./rubish/builtins/trap.rb
      129 ./rubish/builtins/arithmetic.rb
      862 ./rubish/completion.rb
      988 ./rubish/expansion.rb
      431 ./rubish/completions/git.rb
      114 ./rubish/completions/ssh.rb
      530 ./rubish/completions/bash_helpers.rb
      453 ./rubish/completions/help_parser.rb
      167 ./rubish/ast.rb
        46 ./rubish/frontend/tty.rb
      1179 ./rubish/runtime.rb
      127 ./rubish/lazy_loader.rb
        63 ./rubish/data_define.rb
      1163 ./rubish/runtime/command.rb
      153 ./rubish/runtime/job.rb
      7270 ./rubish/runtime/builtins.rb
      306 ./rubish/config.rb
      2442 ./rubish/repl.rb
      1316 ./rubish/codegen.rb
      1180 ./rubish/lexer.rb
      742 ./rubish/history.rb
      1169 ./rubish/parser.rb
        67 ./rubish/startup_profiler.rb
      848 ./rubish/prompt.rb
        47 ./rubish/data/readline_config.rb
      716 ./rubish/data/builtin_help.rb
      251 ./rubish/data/shell_options.rb
        53 ./rubish/data/completion_data.rb
        5 ./rubish/version.rb
      248 ./rubish/shell_state.rb
      140 ./rubish/arithmetic.rb
        61 ./rubish.rb
    26842 total

rc:

    $ wc -l *.c *.h *.y
      547 code.c
    1173 exec.c
      234 getflags.c
      259 glob.c
      240 havefork.c
      137 here.c
      301 io.c
      436 lex.c
      169 pcmd.c
      78 pfnc.c
      494 plan9.c
      539 simple.c
      74 subr.c
      37 trap.c
      190 tree.c
      420 unix.c
      109 var.c
      85 exec.h
      72 fns.h
        7 getflags.h
      28 io.h
      167 rc.h
      92 syn.y
    5888 total
dharmatech··on Show HN: Freenet, a peer-to-peer platform for decentralized apps
This is cool!

OK, time for inception... 9social on freenet-git

¯ \ _ ( ツ ) _ / ¯

dharmatech··on Show HN: Freenet, a peer-to-peer platform for decentralized apps
I definitely think we should be exploring decentralized approaches to services we use.

I also would like to see an emphasis on local-first approaches.

This experiment, in the spirit of UNIX, composes git and text files to form a social network:

https://github.com/dharmatech/9social

Video demo: https://youtu.be/q6qVnlCjcAI

dharmatech··on OpenBSD 7.9
Thanks for checking it out, pjmlp!
dharmatech··on OpenBSD 7.9
Hey pjmlp (waves),

I know you've been an advocate for OSes and languages that are outside of the mainstream.

I finally got around to living in plan9...

My experiment, a social network for plan9 written in rc and some awk.

https://github.com/dharmatech/9social

dharmatech··on The Emacsification of Software
> how do you manage discovery of other users

Here's my personal profile on 9social:

https://github.com/dharmatech/9social-user-dharmatech

Each profile has a `following` file which shows who they're following:

https://github.com/dharmatech/9social-user-dharmatech/blob/m...

So, once you know someone on the network (now you know me!) you can see who they follow. And who each of them follow... And so on.

dharmatech··on The Emacsification of Software
> how do you manage identity/authentication

Well, each user's profile is just a git repository (possibly on github). So I'd think about identity/authentication in the same way users think about it for their code projects.

If you have specific scenarios you're wondering about, feel free to ask.

dharmatech··on The Emacsification of Software
> Nice! This sounds just like what I'd been thinking the system should be like.

Cool! Thanks for checking it out!

dharmatech··on The Emacsification of Software
I agree that owning the data is ideal:

https://news.ycombinator.com/item?id=48129841

dharmatech··on The Emacsification of Software
I absolutely LOVE secure scuttlebutt (SSB).

Their local-first approach inspired that aspect of the 9social design.

However, a big difference is that SSB is a sophisticated protocol.

With 9social, the heavy lifting is done by git and a set of conventions.

dharmatech··on The Emacsification of Software
> You connect to your contacts via P2P, and download/upload updates to your social media network.

Yup, local-first is central to the design.

And, you only see who you explicitly follow.

dharmatech··on The Emacsification of Software
> I love this idea. Thank you for the examples!

Thanks for checking it out!

Page 1 of 6Next →