5 ms·
⊢×0≠∧˝˘∧⌜∧˝ # Marshall & Dzaima (tacit!) (≠⥊∧´)˘{×(⌾⍉∧)0≠} # Dzaima & Rampoina {×(∧˝˘∧≢⥊∧˝)0≠} # Dzaima Call me old fashioned and stuck in C
by nromiun 1y ago
⊢×0≠∧˝˘∧⌜∧˝ # Marshall & Dzaima (tacit!)
(≠⥊∧´)˘{×(⌾⍉∧)0≠} # Dzaima & Rampoina
{×(∧˝˘∧≢⥊∧˝)0≠} # Dzaima
Call me old fashioned and stuck in C style syntax but I can't imagine anyone describing this as beautiful art.
- hyperbrainer 1y agoI see it as beautiful the same way Galadriel would be beautiful as the Dark Queen. Utterly captivating and powerful, and yet something that should never be.
- KineticLensman 1y ago"All shall love me and despair"
- badlibrarian 1y agoWhen the junior programmers start saying "Turing complete" or the academics build a DSL in Julia that uses RegEx to parse Logic Symbols and stuffs the result in variables that use ancient characters that don't appear on your keyboard, it's a sure sign of imminent progress. Bonus if the PhD with nine years of schooling and five months of PHP experience at Facebook starts using emoji in commit messages.
- hinkley 1y ago“irony! Oh, no, no, we don't get that here. See, uh, people ski topless here while smoking dope, so irony's not really a, a high priority. We haven't had any irony here since about, uh, '83, when I was the only practitioner of it. And I stopped because I was tired of being stared at.”
- ashleyn 1y agoIt's giving APL: https://en.wikipedia.org/wiki/APL_(programming_language) https://en.wikipedia.org/wiki/APL_(programming_language)
- icen 1y agoIt is BQN, a descendant language
- pavlov 1y agoWhy is it BQN instead of BQM? Clearly the idea was to increment every letter from APL, but then they had to go one further on the third letter.
- mlochbaum 1y agoIt's just. So gross. Say it. Sudden interruption of slime coming up your throat. Like walking out the door into a spiderweb. Alphabetically I was mistaken but in every way that matters I was right.
- pavlov 1y agoHmm. I guess it if was BQM, it would be pronounced “bequem” which means comfortable in German. And a comfortable APL is clearly an oxymoron.
- mlochbaum 1y agoOrdinarily I'd make fun of the Germans for giving such an ugly name to a nice concept, but I've always found "comfortable" to be rather unpleasant too (the root "comfort" is fine).
- hinkley 1y agoI’m hoping they pronounce it “beacon” but the off by one error jokes also just write themselves.
- rscho 1y agoNo, it's 'bacon' :-)
- 1y ago
- mlochbaum 1y agoWell, do you know how it works? Don't judge a book by its cover and all. Although none of these are entirely aiming for elegance. The first is code golf and the other two have some performance hacks that I doubt are even good any more, but replacing ∧≢⥊ with ∧⌜ in the last gets you something decent (personally I'm more in the "utilitarian code is never art" camp, but I'd have no reason to direct that at any specific language). The double-struck characters have disappeared from the second and third lines creating a fun puzzle. Original post https://www.ashermancinelli.com/csblog/2022-5-2-BQN-reflections.html https://www.ashermancinelli.com/csblog/2022-5-2-BQN-reflecti... has the answers.
- skydhash 1y agoArray Programming is an acquired taste, but once you do, solutions can be extremely simple, both to write and to explain. Think about using matrix to describe geometric transformations instead of using standard functions.
- badlibrarian 1y agoYou mean abstracted stuff like this instead of two lines of code that actually uses x and y? [ cos(θ) -sin(θ) 0 0 ] [ sin(θ) cos(θ) 0 0 ] [ 0 0 1 0 ] [ 0 0 0 1 ]
- ssivark 1y agoYes, absolutely. Once you've expressed data as appropriate tensors (not all languages make this super convenient, unfortunately), it makes the implementation very readable, and easy to ensure that it's bug-free. It lets you see what is going on. Much better than futzing around with tensor components!
- rscho 1y agoThis type of syntax allows rapid iteration when looking at different implementations and experimenting with array problems. It should be thought of more as math notation than general programming.