Top all-time · #678
cowlark.com
Personal blog · cowlark.com · on HN as david-givenprogramminghardware
cowlark.com is a personal blog at cowlark.com about programming and hardware. Since 2009, 94 different Hacker News readers have linked it 209 times, most often “On Go (2009)”. It is still writing: the last post was on 2025-03-08, and you can follow it by feed.
Sometimes recommended · 9 of 40 sampled comments recommend it?
Why HN links it
HN readers link cowlark.com for the 2009 'Go vs Brand X' critique of Go and for David Given's projects such as FluxEngine, WordGrinder and LBW.
Summarised by Claude from a sample of 40 HN comments that link here. Each comment is marked recommending, critical or neutral (citing without judging); how this works.
Most-linked posts?
- On Go (2009)21 people · 36 mentions · first linked 2013-01-10
- A Random Walk Through Ada (2014)7 people · 7 mentions · first linked 2015-05-20
- Wordgrinder: A text mode, keyboard driven word processor6 people · 6 mentions · first linked 2018-11-19
- WordGrinder5 people · 7 mentions · first linked 2015-10-05
- /fluxengine/4 people · 7 mentions · first linked 2019-03-17
- Rapidly rendering fractals on stupidly unsuitable machines4 people · 7 mentions · first linked 2019-06-29
- Cowgol4 people · 4 mentions · first linked 2018-11-05
- Go and Brand X: A language comparison4 people · 4 mentions · first linked 2009-11-15
- FluxEngine4 people · 4 mentions · first linked 2020-04-24
- Luje 0.1 – a pure Lua JVM3 people · 3 mentions · first linked 2013-10-06
What Hacker News says?
So, uh. I did this! Crudely. In 2010. http://cowlark.com/lbw/ It's a Linux syscall translator for Windows. It works well enough to run a Debian userland, although it's got so many holes and rough edges that I would never, ever, ever suggest using it for anything other than a stunt. It uses Interix to do most of the heavy lifting, so all LBW does is to translate from Linux syscalls to Interix syscalls; so we get a Un…
Comment linking /lbw/
on “Ubuntu on Windows”Submitted Live coding a vi for CP/M from scratch as a story · 320 points
HN discussionBut if someone has a hint about useful prior art, please let me know. http://fuzix.org/ - lots of 8-bit targets, z80 included http://cowlark.com/cpmish/index.html - has a vi-like editor, assembler, and is cp/m compatible so it can run lots of old cp/m software like various compilers
Comment linking /cpmish/index.html
on “Collapse OS”Submitted Luje 0.1 – a pure Lua JVM as a story · 160 points
HN discussionMeanwhile companies like Google invest their money in languages that were already known to be possible in 1968. http://cowlark.com/2009-11-15-go/
Comment linking /2009-11-15-go/
on “Introducing MIR”Submitted Writing a lunar lander game for an actual lunar lander as a story · 151 points
HN discussiontl;dr: WINE can be considered to be more like an API translator. The opposite is also possible (Linux binaries on Windows), the most recent attempt being WSL from Microsoft itself, but there were a few other attempts before that: http://cowlark.com/lbw/index.html is one example I just found. ...and as an aside, the comments about the alcoholic beverage really suggest that they should've kept it named WINE (all upper…
Comment linking /lbw/index.html
on “How Wine works 101”Submitted A Random Walk Through Ada (2014) as a story · 123 points
HN discussionThere are several super long (8+ hr) live coding videos of building an assembler and compiler for CP/M here: http://cowlark.com/2019-07-15-cowgol-prototype/index.html I haven't had the stamina to go through one but have watched some sizable chunks and it's pretty cool, even with me not really knowing much about low-level stuff like that. There's also a session where he live codes a vi-like text editor here: http://c…
Comment linking /2019-06-28-cpm-vi/index.html
on “Build Your Own Text Editor”Submitted CP/Mish is an open source sort-of-CP/M distribution for Z80 as a story · 93 points
HN discussionLookup tables are great to produce impressive graphics effects under strict compute limits. I use them in many FPGA projects. On FPGA there is a balance between limited memory (often BRAM) and limited compute, but they can be used to great effect: Tunnel effect (exactly as user bemmu described below): - see it live: https://htmlpreview.github.io/?https://github.com/sylefeb/gf... - lookup table: https://github.com/sy…
Comment linking /2018-05-26-bogomandel/index.html
on “How video games use lookup tables”Submitted 6502 arithmetic and why it is terrible as a story · 91 points
HN discussionWould this be a good time to mention that a few years ago I wrote an experimental Java AOT compiler which worked by converting bytecode into C++? http://cowlark.com/cowjac I used Apache Harmony as the standard library, and binaries were about 2MB, which back in 2012 I considered unacceptably large; benchmarks were adequate only. I never got round to implementing a garbage collector but the hooks were in place for a…
Comment linking /luje
on “Scala Native v0.1”Submitted Z80 arithmetic: also surprisingly terrible (2018) as a story · 89 points
HN discussionhere is a nice selection by bryan lunduke: https://www.networkworld.com/article/3091139/linux/who-needs... he lists: email: alpine webbrowser: w3m editor: nano wordprocessing: wordgrinder http://cowlark.com/wordgrinder/index.html audioplayer: cmus https://en.wikipedia.org/wiki/Cmus instant messaging: finch and hangups https://developer.pidgin.im/wiki/Using%20Finch https://github.com/tdryer/hangups twitter: rainbowst…
Comment linking /wordgrinder/index.html
on “Ask HN: Best Command-Line Applications?”Submitted R.T. Russell's Z80 BBC Basic Is Now Open Source as a story · 88 points
HN discussionNetwork filesystems are not perfect but they sure try very hard in a far more challenging environment than two subsystems on the same machine to give a "unified" access to the filesystem. It blows my mind that Windows engineers are building (and keeping up-to-date) an entire Linux compatible subsystem. That's a huge investment, and a pile of hairy legacy code if the project should ever die. Considering that multipl…
Comment linking /lbw/
on “Windows for Linux Nerds”Submitted CP/Mish: open-source sort-of-CP/M distribution as a story · 86 points
HN discussionI don't think you understood my analogy. Go supposed to be Toki Pona. I'm saying that once you are used to a language that's more powerful you feel constrained. I know many languages and some bring interesting things to the table, go doesn't really deliver (at least based on the hype). The concurrency supposed to be the killer feature, but it is limited to specific cases. BTW: The Go is not subset of Java if anythin…
Comment linking /2009-11-15-go/
on “Program your next server in Go”Submitted TypeTalk: Proof-of-concept of Smalltalk-like live coding system in the browser as a story · 83 points
HN discussionThere was also another project I worked with a while back called LBW ( http://cowlark.com/lbw/ ) which allowed some unmodified Linux binaries to run on windows using Internix and some really neat syscall handler trickery.
Comment linking /lbw/
on “Microsoft and Canonical partner to bring Ubuntu to Windows 10”Submitted Go and Brand X: A language comparison as a story · 79 points
HN discussionI've tried it: http://cowlark.com/flooded-moon/ The maths are interesting. I tried figuring out how thick the atmosphere would need to be, but I kept coming up with ludicrous answers --- one model I tried, in order to get breathable pressure on the surface, the atmosphere had to extend out at least two lunar radii. That would have made the moon just a simple white fuzzy ball in the sky, and you'd never see the sun f…
Comment linking /flooded-moon/
on “Let's Colonize Titan”Submitted How to write a game on a ZX81 [video] as a story · 70 points
HN discussion> I'm calling you not particularly self-aware. Based on no real data except your prejudices. > Unless that language is so domain specific that there's no room for design or so derivative that you can apply another language's style 100%, you almost definitely still have more to learn after 2 weeks. There's a vast chasm between "understands the language's semantics" and "has no more to learn." I've been programming fo…
Comment linking /2009-11-15-go/
on “The reverse job applicant”Submitted Writing 800kB Mac disks with FluxEngine as a story · 67 points
HN discussionI've used LLVM a few times to generate code, and it's pretty easy to use (and moderately stable between revisions). e.g. http://cowlark.com/calculon is a function evaluation language I wrote as a sort of cheap shader language for a ray tracer; the whole thing is 4000 lines of C++ header. I have also attempted to port LLVM to new CPU architectures. This is a totally different deal --- it's poorly documented, very har…
Comment linking /calculon
on “LLVM for Grad Students”Submitted A Random Walk Through Ada (2014) as a story · 65 points
HN discussionYou might enjoy this link ;) http://cowlark.com/2009-11-15-go/
Comment linking /2009-11-15-go/
on “The Unreasonable Effectiveness of C”Submitted Live coding an assembler for CP/M as a story · 65 points
HN discussion