Skip to content
HHackerTube.videoSurprise me

Geo Carncross: How to program computers (kos)

Geo Carncross: How to program computers (kos) on HackerTube: recommended by 2 Hacker News commenters across 2 separate months, 2015–2020.

Justin Cormack

talk · advanced · evergreen

Open on YouTube

A 2014 talk by Geo Carncross (geocar) demonstrating kOS, a minimalist operating system and programming environment built around the k language, with early screenshots.

Why Hacker News recommends it

HN commenters recommend it as a rare live look at kOS in action, and one that is fascinating and mind-bending.

people recommended it
2
separate months
2
strong recommendations
0
discussed on HN
2015–2020
“For those who want to see it in action, there's actually a talk about kOS on YouTube”
— undecidabot, Jun 2019, in “Impending kOS (2014)”

What HN commenters said

7 Hacker News comments link this video. Each one links back to its thread.

undecidabotJun 2019Recommends

For those who want to see it in action, there's actually a talk about kOS on YouTube: ▶ this video . The talk is by the fourth member, Geo, who also frequents HN (geocar).

in “Impending kOS (2014)” · View on HN

beagle3Jul 2017Recommends

Not very easy to come by, but if you haven't seen it yet, here's a presentation by geocar from 2014: ▶ this video

in “Red Programming Language 0.6.3” · View on HN

kickMar 2020Cites it

I'm very much a believer in concise notation (more than most people I've worked with), but the advantages of having a name that can be unambiguously spoken are large enough to outweigh a small constant factor. I don't believe this holds up to scrutiny. APL as a language was made to be spoken, and it seems to have succeeded in that. Alan Perlis briefly touched on that in a great paper,[1] and just about everyone who's worked with the language and its derivatives agrees that your statement isn't true. The idea that APL and its derivatives can't be "read and talked about" is frankly ignoring reality by any stretch of the imagination. For example, here's [2] [3] [4] some videos disproving your statement, the first two being APL, the last being k itself. For extra bonus points, see Aaron Hsu's talks [5]; pick any of them, they're all pretty good, and most have a segment in them explaining how that viewpoint is wrong. [1] [link] [2] [link] [3] [link] [4] ▶ this video [5] [link]

in “Stages of denial in encountering K” · View on HN

kickMar 2020Cites it

And specifically in that example, using an external database when defending the speed of the language kdb isn't written in an external language. Has he? Couldn't find anything (I'd like to see it, honestly, seems a fun experiment). Not entirely him, of course. There are a few remaining files on kparc.com: kparc.com/z/ kparc.com/$/ so on. Not free software, and they seem reluctant to show it off. 'geocar has done a live demo of a primitive version, though: ▶ this video (2014) The archive is more interesting: [link]

in “Stages of denial in encountering K” · View on HN

exikyutOct 2018Cites it

Lots and lots of transition animations, and potentially very poor UI/UX model. Demos are not (largely) interactive, so the demoscene is not known for collective skill designing GUIs. The most similar/related type of things I can think of that are interactive are crack/keygen programs that include chiptunes and maybe a cute graphic effect somewhere. For some time I've actually wanted to go track down such programs to analyze/compare/study the progression of design. Kind of difficult to do so though, for obvious reasons (unfortunately). But my impression from the one or two programs I do very vaguely remember using, half for entertainment purposes was that the UI design was sort of at the "48%-50%" mark - good enough, but flitting just below the halfway mark instead of just above it. Not remarkable; maybe a few rough edges. Thanks for your comment. It prompted some mental gears to spin and for me to realize the above. -- I do think I understand the spirit of what you're getting at, though, and there are a few things that my brain has decided is relevant, although I can't describe the working-out process that led me to list these. ¯\_(ツ)_/¯ - SymbOS ( [link] ): preemptive multitasking, windowed GUI, storage on devices up to 128GB, runs on home computers using the Z80 (starting at 4MHz) with up to (_ up to _) 1MB of RAM. (I found this rambling but very interesting demo of what it can do with one of the more capable machines it supports: [link] ) - kOS ( ▶ this video ): limited-access

in “Looking Glass, a revolutionary window manager revealed in 2006” · View on HN

exikyutFeb 2018Cites it

What counts as contribution? ▶ this video seriously, seriously did my head in. I was certainly fascinated by this, but I fear that I'd contribute one character, accidentally put it in the wrong place, break the build for two days because nobody can figure out what broke, and then feel really bad for weeks afterwards. (Okay, okay, diffing... but still. I'd break my own build, at least.) I _am_ genuinely interested, and I'd LOVE to play with this, but I'm really, really conservative, and would far prefer to be a fly on the wall for a bit for a while first.

in “Tiny Core Linux” · View on HN

Show 1 more comment
srpeckApr 2015Cites it

Same on kOS. In case you had not seen them, early kOS screenshots: [link] Featured live in geocar's presentation: ▶ this video Also: - "Arthur wrote an SQL in 20 lines of K, and a dynamic window manager in around 60 of C...kOS's kernel is under 60 lines of C as well (including annotations; paging, filesystem, syscalls, etc)." ( [link] ) - "k includes language, files, procs, ipc, webserver, dbms, ..z includes graphics...edit.k is 1KB code + k/ztk(9KB)." ( [link] ) - "kOS doesn't use the Linux kernel code. It supports a few of the same syscalls: clone, execve(!), epoll_create, epoll_ctl, epoll_wait, dup2, stat, rename, unlink, getcwd, chdir, fstat, getdents, open, close, read, write, ftruncate, mmap2, munmap, ioctl, gettimeofday, socket, bind, connect, listen, acccept, socketpair, setsockopt...execve just runs another k interpreter (regardless of what you tell it to do) though, so it can just be used to run more k programs." ( [link] )

in “Sbase – Suckless unix tools” · View on HN

Topics & tags

Operating systems & kernelsProgramming language designkosk languageoperating systemsarray programminggeocar