Live data from Hacker News

Arthur Whitney releases an open-source subset of K with MIT license

shakti.com

171–180 of 234 posts

Re: Arthur Whitney releases an open-source subset of K with MIT license

#171

Some big claims, but I wonder if there are some published repeatable benchmarks Also when someone claims 1000x better Performance I want to know why. For example MySQL or PostgreSQL -> Clickhouse I can clearly attribute to column store, compression, vectorization, parallel execution on multiple CPU cores and machines...

For what it's worth, there are some benchmarks of kdb+ (the database built on k) here - https://tech.marksblogg.com/billion-nyc-taxi-kdb.html (it's overall a fantastic series of blog posts).

Re: Arthur Whitney releases an open-source subset of K with MIT license

#172

Earlier quoted context omitted.

> if you can’t read the code you Shldnt be working on it I don't know this AW guy, but to me that's a huge red flag and a sign that a programmer hasn't worked on anything substantial. Ie non-trivial stuff that's maintained by a team over time. Being able to read the code is irrelevant, as the comments should tell you why the code is doing what it's doing. For example, yeah I trivially can see the code is doing a retr…

> a sign that a programmer hasn't worked on anything substantial Maybe you want to check who he is?

I think what he meant is he hasn't had to work with other people's code. Other people have to work with his code.

Re: Arthur Whitney releases an open-source subset of K with MIT license

#173
post #35

Is this line in a.c enough for MIT license? //k(c)2024 arthur whitney(l)MIT

nice to see an exuberantly verbose arthur

The weirdest part about that is that copyrights do not need to mention years, so it's verbose in unnecessary ways.

Re: Arthur Whitney releases an open-source subset of K with MIT license

#174

Earlier quoted context omitted.

Would you recommend K? Is something else better (if so what)?

I think the main reason to use any of these array languages (for work) is job security. Since it's so hard to find expert programmers if you can get your employer to sign off on an array language for all the mission-critical stuff then you can lock in your job for life! How can they possibly replace you if they can't find anyone else who understands the code? Otherwise, I don't see anything you can do in an array lan…

I'm sorry but you really sound like you judge APLs from an outsider pov. For sure, it's not job security that's keeping APLs afloat, because APLs are very easy to learn. A pro programmer would never use K or any APL. But pro mathematicians or scientists needing some array programming for their job will.

Re: Arthur Whitney releases an open-source subset of K with MIT license

#175
post #135

FYI: This only implements a subset of K (I'd estimate 1/3). Calling it a 'release' is an overstatement. The docs state that it is a work in progress. It's also quite buggy (it's easy to get a segmentation fault). The version I saw in January was about 1/3 the size of this version, and also buggy. I hope that the final version of this code is less buggy and more usable. If you want to learn the K language, don't use t…

> Any of the other open source K projects are better than this (more complete, less buggy, better documented). One thing that puzzles me, about array languages, is that despite several open source implementations already existing, like J, its surprisingly difficult to find them packaged in Linux repositories. For example, you can't just "apt install J", or "apt install gnu-apl" on Ubuntu. In J case, it seems the defa…

I could swear that I used to install j902 from apt on Ubuntu. Am I misremembering this?

Re: Arthur Whitney releases an open-source subset of K with MIT license

#176
post #174

Earlier quoted context omitted.

I think the main reason to use any of these array languages (for work) is job security. Since it's so hard to find expert programmers if you can get your employer to sign off on an array language for all the mission-critical stuff then you can lock in your job for life! How can they possibly replace you if they can't find anyone else who understands the code? Otherwise, I don't see anything you can do in an array lan…

I'm sorry but you really sound like you judge APLs from an outsider pov. For sure, it's not job security that's keeping APLs afloat, because APLs are very easy to learn. A pro programmer would never use K or any APL. But pro mathematicians or scientists needing some array programming for their job will.

I have been a programmer, scientist, etc, at various times in my life and I have programmed in J. I don't think there is any compelling reason to use J over Matlab, R, or Python and very many reasons not to. Vector languages are mind expanding, for sure, but they have done a very poor job keeping up with the user experience and network effects of newer languages.

A few years ago I wrote a pipeline in J and then re-implemented it R. The J code was exactingly crafted and the R code was naive, but the R code was still faster, easier to read and maintain and, frankly, easier to write. J gives a certain perverse frisson, but beyond that I don't really see the use case.

Re: Arthur Whitney releases an open-source subset of K with MIT license

#177
post #156

Earlier quoted context omitted.

Would you recommend K? Is something else better (if so what)?

Are you a quant, or doing very specialized numerical things that aren't in libs on 2D datasets? Then 10X yes. If not, no. Everything else will be better

I'm not a quant but having used "data science" languages, ocaml, J, R, etc, I strongly doubt that an array language offers any substantial advantages at this date. I could be wrong, of course, but it seems unlikely.

Re: Arthur Whitney releases an open-source subset of K with MIT license

#178
post #174

Earlier quoted context omitted.

I'm sorry but you really sound like you judge APLs from an outsider pov. For sure, it's not job security that's keeping APLs afloat, because APLs are very easy to learn. A pro programmer would never use K or any APL. But pro mathematicians or scientists needing some array programming for their job will.

I have been a programmer, scientist, etc, at various times in my life and I have programmed in J. I don't think there is any compelling reason to use J over Matlab, R, or Python and very many reasons not to. Vector languages are mind expanding, for sure, but they have done a very poor job keeping up with the user experience and network effects of newer languages. A few years ago I wrote a pipeline in J and then re-im…

I disagree. For the stuff I'm doing, I've been rewriting the same 1-screen program in different ways many times. J made that easy, R would make that much more tedious since I'd have >250 lines instead of 30. Of course if I'm doing something for which R has libs, I'll do it in R. Additionally, I'll very probably end up rewriting my final program in another language for speed and libs, because by then I'll know precisely what I want to write. IMO, the strength of array languages lies in easy experimentation.

Re: Arthur Whitney releases an open-source subset of K with MIT license

#179
post #121

Earlier quoted context omitted.

Thinking about problems and data manipulation in the way array languages enable is hard but, once you have pushed through the what feels like a barrier of mainstream programming language thinking that is stopping you from “grokking” it, it is a sudden moment of clarity and then you “get it”. Perhaps a half way house is sql. The difference between ORM-style CRUD and a power user using window functions to make the data…

Agreed. Pushing through until you can think in array languages is well worth it! In my experience one of the top 30 highest ROI mental circuits you can develop. That being said, I'm not convinced that the extremely minimal syntax is essential. I think it can be done another way ;)

I started with J but now prefer K and I'm writing an interpreter for a K-like language in my spare time for fun.

I'd say the minimal syntax isn't just a gimmick, because it really does help with mentally chunking phrases/idioms to a degree that's not possible when the same phrases are multiple lines long. Terseness also makes it physically faster to write the same thing, which encourages interactive experimentation much more than other languages.

These are small things, but taken together you get an experience that's more than the sum of its parts.

A lot of folks seem to tolerate K syntax because K jobs pay well. (Supposedly. I've never seen a super-high paying K job in real life.) But I actually like the K syntax because it helps organize my problem solving, and it gets out of the way during experimentation time. To me it's like NumPy/Pandas but better designed and without all the ceremonial boilerplate.

Re: Arthur Whitney releases an open-source subset of K with MIT license

#180
post #154
post #96

Earlier quoted context omitted.

I used to use K professionally inside a hedge fund a few years back. Aside from the terrible user experience (if your code isn’t correct you will often just get ‘error’ or ‘not implemented’ with no further detail), if the performance really was as stellar as claimed, then there wouldn’t need to be a no benchmark clause in the license. It can be fast, if your data is in the right formats, but not crazy fast. And easy…

I've been using kdb/q since 2010. Started at a big bank and have used it ever since. Kdb/q is like minimalist footwear. But you can run longer and faster with it on. There's a tipping point where you just "get it". It's a fantastic language and platform. The problem is very few people will pay 100k/month for shakti. I'm not saying people won't pay and it won't be a good business. But if you want widespread adoption y…

Can you elaborate on what mongo did right? My understanding is that AWS is stealing their business by creating a compatible api
Post reply on HN