News for hackers. Stuff that matters.

cmontella

> might be there's something useful there.

There is! As of now, if you sort by recently updated, my literate programming project is the first result :P (link in profile if anyone reads this later)

Re:I built the RealWorld app in Lean 4 on Saturday October 17, 2026 @01:07PM (#50132881)
I've measured Lean against the benchmark game here: https://mech-lang.org/benchmarks/#v=1&ellipses=lean4&view=la...
Re:Valen's Memory Safety: A New Kind of Borrow Checking on Sunday October 11, 2026 @07:18PM (#50049082)
I'll submit a post to HN soon, probably not on r/programminglanguages since I'm using more AI than they'd appreciate in my work these days.
Re:Valen's Memory Safety: A New Kind of Borrow Checking on Sunday October 11, 2026 @07:17PM (#50049071)
Yes!
Re:Valen's Memory Safety: A New Kind of Borrow Checking on Sunday October 11, 2026 @10:07AM (#50043458)
I don’t want to hijack Evan’s post by posting a link, but if you’re interested I’ve implemented many of the ideas in that presentation in the language I’m working on. You can check out the latest link in my post history for a rundown of how it works and a demo.
Re:Zig v0.17.0 on Saturday October 03, 2026 @08:30AM (#49943701)
> the more you stray from the trained path the higher the cost you pay.

Note the LLMs are trained on language semantics far beyond the mainstream ones, so language design can become quite exotic without straying too much from the training. You really do have to measure these things, I don’t see how you can make a confident assertion without data.

Re:Zig v0.17.0 on Saturday October 03, 2026 @08:04AM (#49943541)
Here are some benchmarks I’ve collected recently:

https://mech-lang.org/iros-r4r-2026/index.html#5805406811462...

I compare one algorithm across several programming languages and backends. There is no training data for Mech in the LLM yet it beats most other implementations in perf, which were optimized by LLM.

Maybe human performance engineers trained in these languages could write better implementations. But to answer the question of whether the LLM could write more performant code in languages it’s trained in versus languages it’s not, this comparison is at least illustartive.

Re:Evolving programming languages in the AI era on Sunday September 27, 2026 @09:05AM (#49866366)
Gyri is very cute I will add them to my compendium of programming language mascots. Do you have any more details or back story?
Re:Evolving programming languages in the AI era on Sunday September 27, 2026 @09:00AM (#49866311)
Platforms and programming systems, e.g. Beam.
Re:Evolving programming languages in the AI era on Sunday September 27, 2026 @08:00AM (#49865919)
Concept sounds neat is that the name or a working title? I see there’s 50/50 go/zig code, so you have a reference zig compiler and a go compiler? LLMS are neat that they can port compilers to new ecosystems, but I’m wondering what prompted that change, because even if it’s LLM assisted it’s not always an automatic task.

That’s an interesting idea about an aromas transition, I’ll have to think about that. I put state machines in the language for better static program analysis and tracing, I think the aromas idea could complement that. What do you see as the main utility?

Have you written about your work anywhere else?

Re:Evolving programming languages in the AI era on Sunday September 27, 2026 @12:54AM (#49863475)
> I've been thinking about for a decade because of my frustration with academic code and specifically reproducibility, with Python and Matlab in particular.

I'm with you there, I think I starred Oct when I came across it. I've been on that quest since 2014, we should collaborate! I'll be presenting this work at IROS tomorrow, I'd love to hear what you think: https://mech-lang.org/iros-r4r-2026/index.html

Done, see reply to sibling.
https://raw.githubusercontent.com/mech-lang/mech/codex/pypy-...

I added PyPy and Mojo.

PyPy performs valiantly compared to Cpython -- even better than LuaJIT. I'm sure someone skilled at writing it could do an even better job.

I measured 3 Mojo implementations. The first is a dynamic implementation, it performs like a typical dynamic language. Then when you use Mojo's SIMD intrinsics you can get compiled-tier performance in line with Futhark, Julia, Rust etc.

Then if you use their Max toolchain you can compile Mojo directly to Metal, with performance at the top of the stack (for the amount of money Qualcomm paid they'd better be there!).

The Rust / Mech version was rewritten to put it back on top, but the unchecked test is about equal. Basically if a toolchain can emit direct Metal code there's nothing preventing equal performance it seems, so the magic is in the compiler. Although there is some abstraction overhead depending on how you get there e.g. going wgpu->Metal has a penalty over going directly to Metal.

The big disclaimer again is that all of these measurements should be taken as lower bounds for one algorithm on one machine. I'm sure expert performance engineers could do better.

I think this is true and agree. But also, the bar was pretty low before Julia, and since Julia it's been raised by languages like Futhark and Halide.
I did some Julia benchmarking over the weekend against a bunch of languages if anyone is interested. The workload is an EKF on an Apple M1, I'm trying to do as many as possible in parallel:

https://raw.githubusercontent.com/mech-lang/mech/codex/taich...

Compared against Taichi, Halide, Futhark, Rust', Lua, LuaJIT, Numpy and pure scalar Python. Julia holds up great it can run basically as fast as you'd like! (These are not apples-to-apples comparisons, picture this as a basket of fruit)

'The Mech results should be understood to be a lower bound on how Rust would perform.

Re:Ask HN: What are you working on? (May 2026) on Monday May 11, 2026 @03:27PM (#48099543)
Last couple weeks I've been building a new website to showcase the document formatting capabilities of my programming language Mech. It's out now:

https://mech-lang.org/post/2026-05-11-version-0.3/

Mech has a builtin presentation layer called Mechdown (a Markdown dialect) which allows tight integration between the document and the underlying program. You can see the source here: https://gitlab.com/mech-lang/web/website/-/raw/df4784d44b4ea...

Would appreciate any bug reports or issues: https://github.com/mech-lang/mech/issues

Re:What game engines know about data that databases forgot on Thursday April 09, 2026 @03:13PM (#47708354)
I feel like this is a good place to bring up the "Have You Tried Rubbing a Database on It?" conf, which deals with this sort of topic. If you'd like to read about the intersection between Databases and X, where X is games, robots, user interfaces, developer tools, etc. there are some good talks there, and they're only 10 minutes each so very easy to consume. Also unlike TFA they are not AI generated.

https://www.hytradboi.com

If it could somehow only work if I maintain the kitchen sink and counter, then maybe I'd be motivated to keep the house clean. The gacha game trains you.
haha right! I think if I were to make Rocky though, there are a number of more geometric symbols. Maybe like

  ╭⬟╮
lol that's funny, I have been working seriously [1] on a feature like this after first writing about it jokingly [2] earlier this year.

The joke was the assistant is a cat who is constantly sabotaging you, and you have to take care of it like a gacha pet.

The seriousness though is that actually, disembodied intelligences are weird, so giving them a face and a body and emotions is a natural thing, and we already see that with various AI mascots and characters coming into existence.

[1]: serious: https://github.com/mech-lang/mech/releases/tag/v0.3.1-beta

[2]: joke: https://github.com/cmontella/purrtran

I think that's exactly what is meant, and it's a great example. The two places where literate programming have shined most are 1) documentation because it's a natural fit there and you can get away with having little programs rather than focusing on a book-length narrative as Knuth had originally purposed it for. But also 2) notebook programming environments especially Jupyter and Org mode. I think programs structured in these notebooks really are perfectly situated for LLM analysis and extension, which is where the opportunity lies today.
I agree with this. I've been a fan of literate programming for a long time, I just think it is a really nice mode of development, but since its inception it hasn't lived up to its promise because the tooling around the concept is lacking. Two of the biggest issues have been 1) having to learn a whole new toolchain outside of the compiler to generate the documents 2) the prose and code can "drift" meaning as the codebase evolves, what's described by the code isn't expressed by the prose and vice versa. Better languages and tooling design can solve the first problem, but I think AI potentially solves the second.

Here's the current version of my literate programming ideas, Mechdown: https://mech-lang.org/post/2025-11-12-mechdown/

It's a literate coding tool that is co-designed with the host language Mech, so the prose can co-exist in the program AST. The plan is to make the whole document queryable and available at runtime.

As a live coding environment, you would co-write the program with AI, and it would have access to your whole document tree, as well as live type information and values (even intermediate ones) for your whole program. This rich context should help it make better decisions about the code it writes, hopefully leading to better synthesized program.

You could send the AI a prompt, then it could generate the code using live type information; execute it live within the context of your program in a safe environment to make sure it type checks, runs, and produces the expected values; and then you can integrate it into your codebase with a reference to the AI conversation that generated it, which itself is a valid Mechdown document.

That's the current work anyway -- the basis of this is the literate programming environment, which is already done.

The docs show off some more examples of the code, which I anticipate will be mostly written by AIs in the future: https://docs.mech-lang.org/getting-started/introduction.html

Re:On the Design of Programming Languages (1974) [pdf] on Wednesday March 04, 2026 @07:27PM (#47255928)
Also I just became aware of this list: https://people.futureofcoding.org
Re:Apple Introduces MacBook Neo on Wednesday March 04, 2026 @06:34PM (#47255511)
I remember when Windows Vista had to contend against the same allegations when it was released. It did have a higher memory footprint, but a lot of the ridiculous usage numbers people had published were the SuperFetch just precaching commonly used programs to give better application startup times.
Re:On the Design of Programming Languages (1974) [pdf] on Wednesday March 04, 2026 @08:40AM (#47247269)
Contemporary PL designers who have inspired my programming language design journey the most are people like Chris Granger (Eve), Jamie Brandon (Eve/Imp/others), Bret Victor (Dynamicland), Chris Lattner (Swift / Mojo), Simon Peyton Jones (GHC/Verse), Rich Hickey (Clojure), and Jonathan Edwards (Subtext). My favorite researcher is Amy J. Ko for her unique perspective on the nature of languages. Check out her language "Wordplay" which is very interesting.
Re:Lua 5.5.0 Released on Wednesday December 24, 2025 @12:17PM (#46377343)
I'm building something like Lua for robots, you might want to check it out if you're looking to collaborate. I didn't know about Lua when I started it, but I did end up at an "everything is a table" metaphor because it seemed good for robotics. This does allow for cool things like hot reloading and such.

Although, we've since moved to having several distinct data structures which conceptually map to tables, but implementation and syntax-wise have differences (mostly for performance).

BTW Basis was a good idea, I remember reading about Nondeterministic replay is a big problem on platforms like ROS.

Thanks for the kind words and keeping the joke going, I laughed at many of these responses. I think they'll make it in to v2.0 which should be out by 4/1

It makes sense that the first thing I'd get to the front page of HN is what amounts to a bad joke :P

You might be interested in following my project, as I'm trying to support exactly that nexus of features for those applications!

https://github.com/mech-lang/mech https://www.hytradboi.com/2022/i-tried-rubbing-a-database-on...

Not all features are implemented yet but we are getting there!

Re:Why Study Programming Languages on Tuesday October 14, 2025 @02:28PM (#45583209)
> problem statement, [0] given as natural language, (modulo some inequalities and example program inputs/outputs)

I also see two graphics, and several formal mathematical expressions. You can't modulo away all the not-natural language and then claim natural language alone was sufficient. I presume these things were added by the authors to increase clarity of the problem statement, and I agree with them. They used formal languages to specify all the important parameters in an unambiguous way, which was the right call! Otherwise we would all be left wondering at the semantics.

Anyway, I don't think this really responds to my point, because competition prompts are designed to be self-contained problem statements that are as clear and unambiguous as possible for competition purposes. And in this case, they switched to speaking in a formal language when being precise and unambiguous was most important.

On the other hand, my statement was about the task of programming, which typically involves solving ill-defined problems with specifications and requirements that shift over time. I've been in programming competitions, I've also been a programmer, and I don't find one to be really related to the other.

Re:Why Study Programming Languages on Tuesday October 14, 2025 @10:35AM (#45580576)
I think it's the exact opposite -- LLMs have revealed the precise utility of programming languages. For decades the "English as programming language" has been the holy grail of language designers. From COBOL to SQL to AppleScript, it was the hope that one day we'll be able to program a computer just as easily as we can instruct a person.

Well LLMs finally offer that, and what they are proving is what programmers have known for decades -- natural language is a terrible way to specify a program to a computer. So what is happening in the LLM world is they are reinventing programming languages and software engineering. They're just calling it "prompt engineering" and "context engineering".

What this tell us is that natural languages are not only not sufficient for the task of programming, to make them sufficient you need to bring back all the properties you lost by ditching the programming language. Things like reliability, reproducibility, determinism, unambiguity are thrown away when you use an LLM, and context engineering / prompt engineering are ways of trying to get that back. They won't work well. What you really want is a programming language.

Older »