[{"data":1,"prerenderedAt":392},["ShallowReactive",2],{"project-44526322":3},{"id":4,"name":5,"line":6,"line_source":7,"title":8,"url":9,"domain":10,"maker":11,"posted_at":12,"year":13,"points":14,"comments":15,"rank_in_year":16,"shown_in_year":17,"top":18,"tier":19,"category":20,"subcategory":21,"format":22,"keywords":23,"reception":28,"sentiment":29,"stance_mix":30,"scored_comments":34,"aspects":35,"strip":44,"post_text":45,"what":46,"said":61,"maker_in_thread":154,"shape":167,"grid":171,"attempts":353,"same_week":354,"maker_shows":32,"maker_hidden":384,"reader_version":385,"card":386},"44526322","Bedrock","An 8-bit computing system for running programs anywhere","title","Show HN: Bedrock – An 8-bit computing system for running programs anywhere","https:\u002F\u002Fbenbridle.com\u002Fprojects\u002Fbedrock.html","benbridle.com","benbridle",1752186018,2025,221,68,282,3837,8,"notable","dev_tools","virtual machine runtime","other",[24,25,26,27],"bytecode runtime","fantasy console","uxn alternative","portable virtual machine","curious",0.204,{"positive":18,"neutral":31,"mixed":32,"critical":33},18,3,5,34,{"idea":36,"design":39,"docs":40,"performance":42,"execution":43},{"positive":37,"critical":38},4,1,{"positive":38,"critical":32},{"positive":41,"critical":41},0,{"positive":41,"critical":38},{"positive":38,"critical":41},[32,32,41,41,41,32,32,38,32,41,41,32,32,41,33,32,41,41,41,32,41,32,38,41,33,32,41,32,33,32,33,33,33,32,38,41,33,32,38,38],"Hey everyone, this is my latest project.\n\nBedrock 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\u002FO devices for accessing the keyboard, screen, networking, etc. can be added on as needed.\n\nI 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.\n\n",{"problem":47,"audience":53,"pricing":53,"motivation":54,"time_to_build":53,"stack":58,"openness":59,"stage":59,"team_size":60},{"value":48,"source":49,"evidence":50},"Maintaining programs across many systems as a solo developer","maker",[51],{"id":52},"post",null,{"value":55,"source":49,"evidence":56},"Make programs easier to maintain as a solo developer, portable across systems",[57],{"id":52},[],"unknown","solo",{"praise":62,"objections":86,"requests":102,"questions":114,"alternatives":132},[63,79],{"value":64,"source":65,"evidence":66},"Fun demos and nostalgic fantasy-console appeal","commenter",[67,71,75],{"id":68,"by":69,"text":70},"44566222","lastdong","The demos are surprisingly fun!",{"id":72,"by":73,"text":74},"44566945","WantonQuantum","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.",{"id":76,"by":77,"text":78},"44566202","szczepu","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.",{"value":80,"source":65,"evidence":81},"Useful as a portable compiler target",[82],{"id":83,"by":84,"text":85},"44566292","vincent-manis","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…",[87,95],{"value":88,"source":65,"evidence":89},"64KiB address space is too small for many uses",[90,91],{"id":83,"by":84,"text":85},{"id":92,"by":93,"text":94},"44566072","behrlich","> 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…",{"value":96,"source":65,"evidence":97},"Undefined behaviour makes portability harder",[98],{"id":99,"by":100,"text":101},"44568273","kragen","I like things like this. One of the big differences from Uxn is the introduction of undefined behavior; by design, you can break it, unlike Stanislav's legos. So presumably…",[103,107],{"value":104,"source":65,"evidence":105},"A 32-bit variant",[106],{"id":83,"by":84,"text":85},{"value":108,"source":65,"evidence":109},"Source code for example programs",[110],{"id":111,"by":112,"text":113},"44569178","anta40","There are few examples here: https:\u002F\u002Fbenbridle.com\u002Fprojects\u002Fbedrock.html But where are the source codes?",[115,125],{"value":116,"source":65,"evidence":117},"Why 8-bit rather than 16-bit",[118,122],{"id":119,"by":120,"text":121},"44566614","tines","Why 8 bit?",{"id":123,"by":100,"text":124},"44568292","That puzzled me too, since it's a fork of Uxn, a 16-bit architecture.",{"value":126,"source":65,"evidence":127},"How the two-colour pixel screen works",[128],{"id":129,"by":130,"text":131},"44568935","tromp","> each pixel having both a foreground and a background colour how does that work?",[133,141,147],{"value":134,"source":65,"evidence":135},"Uxn",[136,140],{"id":137,"by":138,"text":139},"44566466","kosmavision","For people curious about the differences between this and Uxn (as I was): https:\u002F\u002Fbenbridle.com\u002Farticles\u002Fbedrock-differences-from-uxn.html",{"id":123,"by":100,"text":124},{"value":142,"source":65,"evidence":143},"PICO-8",[144],{"id":145,"by":11,"text":146},"44577003","There's PICO-8 in this category if you haven't already heard of it, it uses Lua as the language for writing programs. It was another huge inspiration of mine while working on…",{"value":148,"source":65,"evidence":149},"WebAssembly",[150],{"id":151,"by":152,"text":153},"44567108","mikestaas","Wouldn't the 32-bit variant just be WebAssembly?",{"comments":155,"answered":156,"key":157},15,6,[158,161,164],{"id":159,"text":160},"44576684","You've got it, yeah. It makes writing programs across different systems so much nicer, because you can just write your programs against a single tidy 'bedrock' abstraction of the…",{"id":162,"text":163},"44576647","You're right, it's technically true of any program, but it wouldn't necessarily be practical. Implementing CPython on a Gameboy Advance, for example, would be tedious and likely…",{"id":165,"text":166},"44576757","Each screen pixel has two colours because there are two screen layers, a foreground layer and a background layer. Anything you draw to the foreground layer will be draw over…",{"commenters":168,"max_depth":156,"maker_replies":155,"first_comment_mins":169,"lifespan_hours":170},38,5728,146,[172,174,178,180,183,186,189,192,195,198,201,204,206,210,213,215,217,218,222,223,224,227,230,234,236,240,243,245,248,250,252,254,256,259,262,264,268,269,272,274,276,279,284,287,289,292,295,297,301,305,309,311,313,315,318,321,325,329,333,335,337,340,342,344,345,347,349,351],[83,41,32,173,84,41],"project\u002Fmixed\u002Fidea",[175,41,32,176,177,41],"44566519","project\u002Fneutral\u002Fdesign","ripe",[151,41,32,179,152,41],"project\u002Fneutral\u002Fidea",[181,41,41,182,100,41],"44568279","commenter\u002Fneutral\u002Fdocs",[184,41,41,182,185,41],"44568657","lifthrasiir",[187,41,41,188,100,41],"44572996","commenter\u002Fneutral\u002Fnone",[190,41,41,191,100,41],"44568246","other\u002Fneutral\u002Fnone",[193,41,41,191,194,41],"44572840","jonjacky",[196,38,32,179,197,41],"44565729","treetalker",[199,38,32,179,200,41],"44566757","Wowfunhappy",[202,38,32,179,203,41],"44567597","Walf",[159,38,41,205,11,38],"maker\u002Fpositive\u002Fidea",[207,38,38,208,209,41],"44569044","project\u002Fcritical\u002Fidea","obscure-enigma",[211,38,41,191,212,41],"44569106","bottom999mottob",[214,38,32,179,212,41],"44569078",[216,38,41,188,100,41],"44576017",[162,38,41,179,11,38],[219,220,41,191,221,41],"44568386",2,"Animats",[137,32,32,176,138,41],[129,32,32,176,130,41],[225,32,32,176,226,41],"44569074","pjc50",[228,32,32,176,229,41],"44570170","Luc",[231,32,41,232,233,41],"44571321","commenter\u002Fneutral\u002Fdesign","Lerc",[165,32,41,235,11,38],"maker\u002Fneutral\u002Fdesign",[237,37,33,238,239,41],"44566420","project\u002Fpositive\u002Fnone","willguest",[241,37,41,242,11,38],"44576255","commenter\u002Fpositive\u002Fnone",[111,33,32,244,112,41],"project\u002Fneutral\u002Fdocs",[246,33,41,182,247,41],"44569196","_def",[249,33,41,182,112,41],"44569228",[251,33,41,182,247,41],"44569236",[253,33,41,182,112,41],"44569290",[255,33,41,182,247,41],"44569308",[257,33,41,258,11,38],"44576983","maker\u002Fneutral\u002Fdocs",[260,156,32,261,233,41],"44571643","project\u002Fmixed\u002Fdocs",[263,156,41,258,11,38],"44576430",[265,266,32,179,267,41],"44569891",7,"severak_cz",[145,266,41,191,11,38],[270,266,41,191,271,41],"44579994","aa-jv",[99,18,38,273,100,41],"project\u002Fcritical\u002Fdesign",[275,18,41,235,11,38],"44577076",[277,18,41,278,100,41],"44578024","commenter\u002Fcritical\u002Fdesign",[280,281,33,282,283,41],"44565958",9,"project\u002Fpositive\u002Fidea","nxobject",[285,281,41,286,11,38],"44577144","maker\u002Fneutral\u002Fidea",[92,288,32,179,93,41],10,[290,288,41,188,291,41],"44566328","durakot",[293,288,32,179,294,41],"44572041","apgwoz",[296,288,41,282,11,38],"44578460",[298,299,32,176,300,41],"44566459",11,"great_psy",[302,299,33,303,304,41],"44566719","project\u002Fpositive\u002Fdesign","teraflop",[306,307,32,173,308,41],"44565888",12,"untech",[310,307,41,286,11,38],"44578726",[72,312,33,282,73,41],13,[76,314,33,282,77,41],14,[316,155,33,238,317,41],"44567723","ChuckMcM",[319,155,41,320,11,38],"44578706","maker\u002Fpositive\u002Fnone",[322,323,33,282,324,41],"44573334",16,"lihaciudaniel",[326,327,32,179,328,41],"44573251",17,"ninetyninenine",[330,327,38,331,332,41],"44573358","project\u002Fcritical\u002Fperformance","freeone3000",[334,327,41,188,328,41],"44573808",[336,327,41,286,11,38],"44578854",[338,327,41,339,328,41],"44587302","other\u002Fneutral\u002Fidea",[68,31,33,341,69,41],"project\u002Fpositive\u002Fexecution",[119,343,32,176,120,41],19,[123,343,32,176,100,41],[346,343,41,176,11,38],"44578812",[348,343,38,273,100,41],"44586152",[350,343,41,176,11,38],"44587506",[352,343,38,273,100,41],"44588412",[],[355,360,365,370,375,379],{"id":356,"name":357,"points":358,"category":359},"44522683","nodaysoff.run",958,"creative",{"id":361,"name":362,"points":363,"category":364},"44572377","Shoggoth Mini",610,"hardware",{"id":366,"name":367,"points":368,"category":369},"44526015","Pangolin",500,"infrastructure",{"id":371,"name":372,"points":373,"category":374},"44556684","Refine",408,"productivity",{"id":376,"name":377,"points":378,"category":374},"44523409","BrowserOS",291,{"id":380,"name":381,"points":382,"category":383},"44524544","Cactus",231,"ai",false,"v2",{"id":387,"name":5,"line":6,"ai":384,"cat":20,"year":13,"points":14,"comments":15,"rec":28,"s":388,"top":18,"kw":389,"maker":11,"domain":10,"tier":19,"attempts":41,"strip":390,"url":9,"mix":391,"praise":64,"objection":88,"sub":21},44526322,0.2,[24,25,26,27],"3300033130033053000303105303535553105311",[18,31,32,33],1793991125389]