frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

Show HN: Bedrock – An 8-bit computing system for running programs anywhere

https://benbridle.com/projects/bedrock.html
94•benbridle•4d ago•19 comments

Show HN: CallFS – S3-style object store in one Go binary (MIT)

https://github.com/ebogdum/callfs
2•ebogdum•21m ago•0 comments

Show HN: The HTML Maze – Escape an eerie labyrinth built with HTML pages

https://htmlmaze.com/
38•kyrylo•7h ago•7 comments

Show HN: Refine – A Local Alternative to Grammarly

https://refine.sh
377•runjuu•22h ago•187 comments

Show HN: Ten years of running every day, visualized

https://nodaysoff.run
866•friggeri•4d ago•447 comments

Show HN: ArchGW – An intelligent edge and service proxy for agents

https://github.com/katanemo/archgw/
107•honorable_coder•2d ago•15 comments

Show HN: Phasers – emergent AI identity project using GPT-2 and memory shadows

https://github.com/oldwalls/phasers
3•oldwalls•3h ago•0 comments

Show HN: FFmpeg in plain English – LLM-assisted FFmpeg in the browser

https://vidmix.app/ffmpeg-in-plain-english/
158•bjano•4d ago•45 comments

Show HN: Self-hosted task management with 24-languages support

https://tududi.com
3•cvicpp123•5h ago•0 comments

Show HN: Forge – Connect multiple AI models through a single API

https://tensorblock.co/forge
4•tensorblock•5h ago•0 comments

Show HN: A Raycast-compatible launcher for Linux

https://github.com/ByteAtATime/raycast-linux
186•ByteAtATime•1d ago•59 comments

Show HN: StartupList EU – A public directory of European startups

https://www.startup-list.eu
2•umbertotancorre•7h ago•0 comments

Show HN: Learn LLMs LeetCode Style

https://github.com/Exorust/TorchLeet
172•Exorust•1d ago•21 comments

Show HN: ZeroFS: The S3FS that does not suck

https://github.com/Barre/zerofs
8•riccomini•5h ago•0 comments

Show HN: Assholes who care. Vetting gofundme campaigns in Uganda Africa

https://assholeswhocare.com
3•jimmyfixit•10h ago•1 comments

Show HN: Google Maps can't map a story – MapScroll does, from one prompt

https://www.mapscroll.ai/
5•shekharupadhaya•11h ago•4 comments

Show HN: I built an LLM chat app because we shouldn't need 10 AI subscriptions

https://prismharmony.com/chat
55•maniknt28•1d ago•63 comments

Show HN: Portia – A stateful Crew AI alternative, with auth and 1000 tools

https://github.com/portiaAI/portia-sdk-python
13•mounir-portia•11h ago•3 comments

Show HN: Native Zero-JDK

https://www.zero-jdk.dev
4•julien-may•12h ago•0 comments

Show HN: I made a JSFiddle-style playground to test and share prompts fast

https://langfa.st/
49•eugenegusarov•2d ago•17 comments

Show HN: Goliteql – A fast GraphQL executor and code generator in Go

https://github.com/n9te9/goliteql
5•n9te9•13h ago•0 comments

Show HN: PlutoFilter- A single-header, zero-allocation image filter library in C

https://github.com/sammycage/plutofilter
8•sammycage•1d ago•0 comments

Show HN: Vibe Kanban – Kanban board to manage your AI coding agents

https://github.com/BloopAI/vibe-kanban
190•louiskw•3d ago•129 comments

Show HN: Pangolin – Open source alternative to Cloudflare Tunnels

https://github.com/fosrl/pangolin
492•miloschwartz•4d ago•122 comments

Show HN: RULER – Easily apply RL to any agent

https://openpipe.ai/blog/ruler
79•kcorbitt•3d ago•11 comments

Show HN: OffChess – Offline chess puzzles app

https://offchess.com
367•avadhesh18•6d ago•169 comments

Show HN: I built this to talk Danish to my girlfriend – works with any language

https://menerdu.vercel.app/
30•lil_csom•1d ago•19 comments

Show HN: DesignArena – crowdsourced benchmark for AI-generated UI/UX

https://www.designarena.ai/
88•grace77•2d ago•26 comments

Show HN: I built a toy music controller for my 5yo with a coding agent

https://github.com/jeffmccune/sonoserve
37•JeffMcCune•6d ago•17 comments

Show HN: c0admin – A terminal-based AI assistant for Linux sysadmins

https://github.com/mbrell/c0admin
8•ufuayk•1d ago•2 comments
Open in hackernews

Show HN: Bedrock – An 8-bit computing system for running programs anywhere

https://benbridle.com/projects/bedrock.html
94•benbridle•4d ago
Hey everyone, this is my latest project.

Bedrock is a lightweight program runtime: programs assemble down to a few kilobytes of bytecode that can run on any computer, console, or handheld. The runtime is tiny, it can be implemented from scratch in a few hours, and the I/O devices for accessing the keyboard, screen, networking, etc. can be added on as needed.

I designed Bedrock to make it easier to maintain programs as a solo developer. It's deeply inspired by Uxn and PICO-8, but it makes significant departures from Uxn to provide more capabilities to programs and to be easier to implement.

Let me know if you try it out or have any questions.

Comments

treetalker•6h ago
I'm not steeped in computer science, so please pardon me if the following are dumb questions.

> Programs written for Bedrock can run on any computer system, so long as a Bedrock emulator has been implemented for that system.

Isn't that true of any program? As long as the language that the program is written in is implemented on the system, any (valid?) program in that language will run on that system?

Wowfunhappy•3h ago
Based on the OP, I think the idea is that it's very easy to port this emulator to a new system.
Walf•38m ago
Not quite. Programs normally need to be compiled per system type, and sometimes per system, due to differences in the OSes' versions, APIs and hardware. The idea behind this type of emulator is that you need compile it only once, and the emulator takes care of those differences for you. The Bedrock program would always ‘see’ the same OS and hardware.
untech•5h ago
Love it, I think it's very cool! I am not sold on its "everlasting" promise yet, but as an addition to the family of "fantasy" platforms seems very solid.
nxobject•5h ago
This is fantastic! As someone who's used PICO-8 in after-school STEM enrichment classes (and has evaluated uxn), one of the frustrations that my students have always had is easy I/O and persisting state -- for saving/loading game progress and settings, of course. The clipboard and registry devices seem like a good fit.

I hope you stick with this!

behrlich•5h ago
> I designed Bedrock to make it easier to maintain programs as a solo developer.

Can you say more? I really love this idea but can’t think of any practical use case with 65k of memory. What programs are you now more easily maintaining with Bedrock? To what end?

durakot•5h ago
Check out Uxn for some "practical" use cases: https://github.com/hundredrabbits/awesome-uxn
szczepu•5h ago
My immediate reaction was, "oh, like Uxn!" but then of course I read it was originally a fork of Uxn. I love these 'toy' OSes, the more the better.
lastdong•5h ago
The demos are surprisingly fun!
vincent-manis•5h ago
This is the latest in a very honourable tradition. My first encounter with it was with Martin Richards's BCPL system in 1972. The compiler generated a hypothetical ISA called OCODE, from which backends generated pretty good native code for Titan-2 and System/360, among others. One of those backends generated INTCODE, which was an extremely reduced ISA, for which an interpreter could be easily written (I wrote one in Fortran). Richards also provided the BCPL compiler and runtime library in INTCODE, so you could quickly have BCPL running interpretively. Then you could use this interpretive version to bootstrap a native-code backend implementation. Put this all together, and you now have a very easy compiler port.

Wirth's Pascal-P compiler of 1974(?) used the same idea, also in aid of a highly portable compiler. I have never been able to find out whether this was an independent invention, or whether Wirth was influenced by Richards's work.

Of course, the JVM and CLR are descendents of this, but they build a very complex structure on the basic idea. Writing an implementation of one of these virtual machines is not for the faint of heart.

So I think Bedrock can be very useful as a compiler target, if nothing else. However, I must agree with some of the other commenters that the 64KiB address space makes it very much of a niche tool. Come up with a 32-bit variant that's not much more complicated, and I think you have a winner.

ripe•4h ago
Regarding the 64kB limit: I notice that an implementation can provide the programmer an optional memory block of up to 64MB, IIUC:

https://benbridle.com/projects/bedrock/user-manual/memory-de...

mikestaas•2h ago
Wouldn't the 32-bit variant just be WebAssembly?
willguest•4h ago
I made a bedrock onion of death: https://paste.pictures/FgqbwUTCY8.png

Couldn't have done it without you

great_psy•4h ago
I have not delved to deep in the code, but is there any functional differences it has over Java other than the size ?

Presumably Java would also be pretty tiny if we wrote it in bytecode instead of higher lever Java.

teraflop•3h ago
The Java bytecode instruction set actually has a quite complicated specification: https://docs.oracle.com/javase/specs/jvms/se8/html/

Which means implementations also have to be correspondingly complicated. You have to handle quite a few different primitive data types each with their own opcodes, class hierarchies, method resolution (including overloading), a "constant pool" per class, garbage collection, exception handling, ...

I would expect a minimal JVM that can actually run real code generated by a Java compiler to require at least 10x as much code as a minimal Bedrock VM, and probably closer to 100x.

kosmavision•4h ago
For people curious about the differences between this and Uxn (as I was): https://benbridle.com/articles/bedrock-differences-from-uxn....
tines•4h ago
Why 8 bit?
WantonQuantum•2h ago
Love this! Takes me back to the literal 8-bit computers of the 80s when it was much easier to learn to program with, for example, BASIC built into the operating system.
ChuckMcM•2m ago
Fun stuff Ben! Nicely done. I'm building a simple terminal that talks over a SPI port or IIC port and this looks like it would be a fun demo to run on it.