Live data from Hacker News

War on Raze

gist.github.com

11–19 of 19 posts

Re: War on Raze

#11

https://en.wikipedia.org/wiki/K_(programming_language) As far as I can tell, it seems to be something halfway between TempleOS and MUMPS but its a programming language instead of an OS. I don't think you are missing some deep meaning. Its more that this is written in an esoteric language which seems to be more overloaded than Perl by someone who maybe isn't so great at clear communications. He's just looking at ways…

I think of K like a super-geeky version of Excel, for people who do quant stuff. People do very useful, cryptic stuff in convoluted, bespoke Excel sheets, updated and grown over decades with 37 variants of almost-but-not-quite the same VB function, etc. I imagine the K world is very similar, except K users can meet in London pubs and trade little snippets of K handwritten on scraps of paper between them like Pokemon cards.

Re: War on Raze

#12
post #2

You know that feeling where you feel like you have a good handle on things- maybe it's foundational mathematics, or the fundamentals of computer software. And you start reading something so incomprehensible that you start to wonder if there's just this universe hiding in plain sight directly under the universe you've always known. That is the precise feeling I get when I trying to understand this post. Don't get me w…

I know exactly how you feel. Looks like it was 10 (?!) years ago [0]

> Ah, APL/J/K. Time for my annual crisis of thinking everything I've ever learned about programming is wrong...

Still, though, I'm always happy when it comes up on HN for a little discussion. As I recall there were a couple people working on a new OS or something based on K, I think. I wonder whatever happened to that.

As for this particular post, I get how `x^x*/:x:2_!100` works now (it's cute!), but it seems pretty wasteful. It's generating 10,000 products to filter out of the list of 100 integers. But 99 x 99 isn't anywhere near a number in the original 2..100 list! You only need to go up to 2 x 49, 3 x 33, etc. I wonder if there's more of a "triangular" shape you could generate instead of the full table.

[0] https://x.com/losvedir/status/636034419359289344?s=20

Re: War on Raze

#13
post #2

You know that feeling where you feel like you have a good handle on things- maybe it's foundational mathematics, or the fundamentals of computer software. And you start reading something so incomprehensible that you start to wonder if there's just this universe hiding in plain sight directly under the universe you've always known. That is the precise feeling I get when I trying to understand this post. Don't get me w…

Also, how could any sane person ever go into the ngn/k source and find the mentioned implementation? https://codeberg.org/ngn/k/src/commit/ddcc17511ff05e1915f59b...

I don't even want to learn k, I want to learn how to handle such C.

Re: War on Raze

#14
post #2

You know that feeling where you feel like you have a good handle on things- maybe it's foundational mathematics, or the fundamentals of computer software. And you start reading something so incomprehensible that you start to wonder if there's just this universe hiding in plain sight directly under the universe you've always known. That is the precise feeling I get when I trying to understand this post. Don't get me w…

the first few paragraphs lay out the precise extent to which this matters. there's a snippet of code (`x^x*/:x:2_!100`) in a language (k7) using a feature ("rank-sensitive" set difference) not present in previous langs (before 2019); the prev langs' workaround (razing `,/` the table into a list) is bothersome (to chrispsn) so his article examines some alternatives.

chrispsn is sharing the map he drew of the rabbit hole he explored. it involves a lot of haggling with "depth", which is when you nest a list in another list: good for organizing your data, but bad for producing long vectors over which your programs could vectorize. so if you want this to matter more broadly, you can consider it a meditation on some of the mechanics of that, i.e. how to flatten some deep constructions in algorithms, and how to generalize shallow operations to apply at depth

Re: War on Raze

#15
post #2

You know that feeling where you feel like you have a good handle on things- maybe it's foundational mathematics, or the fundamentals of computer software. And you start reading something so incomprehensible that you start to wonder if there's just this universe hiding in plain sight directly under the universe you've always known. That is the precise feeling I get when I trying to understand this post. Don't get me w…

Also, how could any sane person ever go into the ngn/k source and find the mentioned implementation? https://codeberg.org/ngn/k/src/commit/ddcc17511ff05e1915f59b... I don't even want to learn k, I want to learn how to handle such C.

I like the quote about how different programming languages give you tools to think in different ways.

I get the impression languages like k are a good example of this. (That C code looks as dense/concise as k).

Re: War on Raze

#16
post #2

You know that feeling where you feel like you have a good handle on things- maybe it's foundational mathematics, or the fundamentals of computer software. And you start reading something so incomprehensible that you start to wonder if there's just this universe hiding in plain sight directly under the universe you've always known. That is the precise feeling I get when I trying to understand this post. Don't get me w…

Also, how could any sane person ever go into the ngn/k source and find the mentioned implementation? https://codeberg.org/ngn/k/src/commit/ddcc17511ff05e1915f59b... I don't even want to learn k, I want to learn how to handle such C.

For a smaller example, try the J Incunabulum[0] various explanations are available [1][2]

It's been discussed here before too.

[0] https://code.jsoftware.com/wiki/Essays/Incunabulum [1] https://blog.wilsonb.com/posts/2025-06-06-readable-code-is-u... [2] https://tony-zorman.com/posts/j-incunabulum.html

Re: War on Raze

#17

https://en.wikipedia.org/wiki/K_(programming_language) As far as I can tell, it seems to be something halfway between TempleOS and MUMPS but its a programming language instead of an OS. I don't think you are missing some deep meaning. Its more that this is written in an esoteric language which seems to be more overloaded than Perl by someone who maybe isn't so great at clear communications. He's just looking at ways…

Sad that the Wikipedia page links to some specific commercial service rather than the actual programming language runtime (which appears to be AGPL-licensed).

Re: War on Raze

#18

https://en.wikipedia.org/wiki/K_(programming_language) As far as I can tell, it seems to be something halfway between TempleOS and MUMPS but its a programming language instead of an OS. I don't think you are missing some deep meaning. Its more that this is written in an esoteric language which seems to be more overloaded than Perl by someone who maybe isn't so great at clear communications. He's just looking at ways…

Sad that the Wikipedia page links to some specific commercial service rather than the actual programming language runtime (which appears to be AGPL-licensed).

the original implementations of k were all proprietary

there are a few open source implementations as well by now

https://wiki.k-language.dev/wiki/Running_K

Re: War on Raze

#19

https://en.wikipedia.org/wiki/K_(programming_language) As far as I can tell, it seems to be something halfway between TempleOS and MUMPS but its a programming language instead of an OS. I don't think you are missing some deep meaning. Its more that this is written in an esoteric language which seems to be more overloaded than Perl by someone who maybe isn't so great at clear communications. He's just looking at ways…

Sad that the Wikipedia page links to some specific commercial service rather than the actual programming language runtime (which appears to be AGPL-licensed).

you can still try it out here https://kparc.io/kc/

other versions (not k7) include eg. https://ktye.github.io/k.html

Post reply on HN