For the best experience on desktop, install the Chrome extension to track your reading on news.ycombinator.com
Hacker Newsnew | past | comments | ask | show | jobs | submit | history | tlarkworthy's commentsregister

I just like the game Risk. It boots!

Please follow the guidelines[0] going forward.

0. https://riscv.org/about/brand-guidelines/


OK fixed! As you clearly know this space well, what do think would make this project better? I was thinking I wanted to see a heatmap of memory access (pages?), and more detailed explaination of the opcodes, but getting the thing working took quite a while so I got a bit tired and stopped at the booting milestone, but I like the project a lot and now it is in a notebook I can basically probe any part of the system with dataviz tools to make it more tangible. Do you have anything you think would be helpful or cool for learners that you have not seen before in an emulator?

This is going to be very person by person.

e.g. I'd love to see cycles spent in each mode (machine/supervisor/user). Also how much idle (wfi).


I added a viz for that! Its cool! You can see the transition to user mode https://bsky.app/profile/larkworthy.bsky.social/post/3mjcpky...

I love it.

In the graph, does it show the highest level of execution within the sample interval, or the current one at sample time?


It counts every instruction and blends the colours for the three active modes. Then the height represents idleness. So it's a pretty high resolution measure!

Evergreens only. Yes it's a whole OS in there, 7mb.


There are still web devs unable to make the difference between a web site and a web app and how important the web site is in regards of the web app.


This is an app, the file works from a file:// domain without a local Webserver. It's a different thing than other things you have seen.


We do something similar at work, called metadev. It sits above all repos and git submodules othe repos in, and works with multiple changes with multiple sessions with worktrees, and stores long term knowledge in /learnings. Our trick has been to put domain specific prompts in the submodules, and developer process in metadev. Because of the way Claude hierarchically includes context, the top repo is not polluted with too much domain specifics.


Two husbands without kids, working in tech, have a huge amount of cash, time capacity and ideation opportunity. I felt these added up to a huge advantage for getting quality shit done and taking risks. Fair play.


It makes you download it but then a button appears saying join in browser. I have tons of zoom binary copies


I have a pretty good one here https://observablehq.com/@tomlarkworthy/robocoop-2 and I have a port of opencode in-progress


I use regex to force an XML schema and then use a normal XML parser to decode.

XML is better for code, and for code parts in particular I enforce a cdata[[ part so there LLM is pretty free to do anything without escaping.

OpenAI API lets you do regex structured output and it's much better than JSON for code.


Could you share some samples / pointers on how you do this?


Yeah, this upsert_cell tool does it

https://observablehq.com/@tomlarkworthy/forking-agent#upsert...

format: { type: "grammar", syntax: "regex", definition: cellsRegex },

Where cellRegex is

cellsRegex = { const CELL_OPEN = String.raw`<cell>\s`;

  const INPUTS_BLOCK = String.raw`<inputs>.*<\/inputs>\s*`;

  const CODE_BLOCK = String.raw`<code><!\[CDATA\[[\s\S]*\]\]>\s*<\/code>\s*`;

  const CELL_CLOSE = String.raw`<\/cell>`;

  return "^(" + CELL_OPEN + INPUTS_BLOCK + CODE_BLOCK + CELL_CLOSE + ")*$";
}

And the extraction logic is here https://observablehq.com/@tomlarkworthy/robocoop-2#process

function process(content) { const doc = domParser.parseFromString( "<response>" + content + "</response>", "text/xml" ); const cells = [...doc.querySelectorAll("cell")]; return cells.map((cell) => { const inputsContent = cell.querySelector("inputs")?.textContent || ""; return { inputs: inputsContent.length > 0 ? inputsContent.split(",").map((s) => s.trim()) : [], code: (cell.querySelector("code")?.textContent || "").trim() }; }); }

BTW that agent is under development and not actually that good at programming. Its parent https://observablehq.com/@tomlarkworthy/robocoop-2 is actually very good at notebook programming


Parquet/iceberg


We fixed this at work by instructing it to maximize coverage with minimal tests, which is closer to our coding style.


also after you have a to-and-fro to course correct it on a task, run this self-reflection prompt

https://gist.github.com/a-c-m/f4cead5ca125d2eaad073dfd71efbc...

That will moves stuff that required manually clarifying back into the claude.md (or a useful subset you pick). It does a much better job of authoring claude.md than I do.


Consider applying for YC's Summer 2026 batch! Applications are open till May 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search:

HN For You