« first day (4175 days earlier)      last day (43 days later) » 
00:00 - 19:0019:00 - 00:00

12:21 AM
@emanresuA is there supposed to be an equals sign there
Hey quick question for anyone here with experience with servers, you can put different lengths of servers in the same rack, right? E.g., if one's 36" and one's 33" (made those numbers up not sure how accurate they are).
@emanresuA where would it go then :P
v_1 ... v_l = I_i
thank u
Q: Golf Github's Pager Logic

JonahBackground When searches return many pages of results, Github avoids cluttering their UI by eliding page links. Instead, their UI let's you select: Pages at the beginning of the results. Pages near the current page. Pages at the end of the results. In this way, no more than 11 page links are e...

1 hour later…
2:13 AM
I wonder if there's a way to encode Piet more golfily
There most definitely is
It only uses a certain number of colors, and the way it's designed with the grouping of similar colors makes it very much not golfing oriented
Plus there's more unusual encodings for 2d languages, like mine, which are more compact
I guess many Piet programs benefit from omitting the description of black cells entirely
e.g. writing it as "walk description", like RabcDdef
@emanresuA yeah, use asciipiet with fractional encodings
2:54 AM
CMQ: Is there a way to overload the find function in Python?
Never mind, I'm anidito
3 hours later…
5:44 AM
@NoHaxJustRadvylf Yes. You can put a 30" depth server in a 36" rack, but not a 36" server in a 30" rack. (And the width has to be exactly the same. The standard is 19")
2 hours later…
7:41 AM
A: Sandbox for Proposed Challenges

Nobody Needs NamesAlphanumerics but no Alphanumerics We define the alphanumeric bytes as qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM1234567890 (i.e. All letters, both cases, and numbers). The order does not matter and I typed it in that order to be lazy. Your task is to write a program that prints the byt...

And @emanresuA Pride Month is over
@SandboxPosts any suggestions?
my opinion is yes
and imo the title's spelled wrong
I just did XXXXXX in Minecraft and it's blablablabla
if I just said that will it get moved immediately or after the conversation or somewhere in between? To off-topic or to CGCC-gaming?
oh and what's the lang for tmr's (today's depending on time zone) lyal?
lyal is too similar to @lyxal
8:32 AM
@NoHaxJustRadvylf as I recall you can get them with adjustable mounting kits
rack rails tend to be inexplicably expensive though
fortunately that wasn't my problem
8:59 AM
Does Rust have a better way of writing this:
let definitely_x = match maybe_x {
    Some(x) => { x }
    None => { return }
I could use if let, but then my code gets unnecessarily nested if I'm checking several Options
And the function returns (), not an Option, so I can't use ?
You can write an inner function that returns Option<()>
and then discard its return value
9:16 AM
Q: Build a file/directory tree

eKKiMTask In this challenge, your task is to write a program or function which takes an array of paths with an additional boolean indicating it is a file or directory and outputs a file/directory tree in any reasonable format. Remarks A directory can but should not end with a forward slash ("/") A pa...

@emanresuA Jelly, 6 bytes
(relies on the solutions being integers, if you change : to ÷ it works for non-integers too but then the output will always be a float)
@NoHaxJustRadvylf stderr can be a file, it's common when running long/complex scripts to just set up stderr to be a file directly as an easy way of logging the errors
@ais523 I think he meant "a system in which /proc/self/fd/2 does not always refer to standard error", e.g. if /proc is not procfs, which is treated specially.
/proc actually isn't treated specially even in Linux
ah right, now you've edited i don't need to explain procfs
but I used to build containers manually quite frequently, and those will contain neither /dev nor /proc unless you explicitly mount them
TIL that procfs is not POSIX-standardised
it's a Linux thing specifically I think
stderr appears to be write-only on TIO, which is unusual for programs being run normally, so I suspect that it is actually a file there (that's the most common case in which you get a write-only stderr)
9:27 AM
surely stderr is generally only readable if it points to a pty?
many people are surprised to discover that reading from stderr normally works (just like writing to stderr writes to the user's terminal rather than a redirected stdout, reading from stderr reads from the user's terminal rather than a redirected stdin, in both cases unless stderr is also redirected)
doesn't need to be a pty specfically, any sort of terminal works I think
I don't see why any program would go out of its way to open a read-write pipe for stderr
and yes, you could intentionally open a file as read-write but it probably wouldn't do anything useful because you'd have nowhere to put the file pointer
I used to use SunOS a while back, pipes there were bidirectional by default
can you make a bidirectional pipe on Linux?
AFAIK, TIO and ATO both just use pipes for stderr
ah yes, it's a pipe on TIO (Try it online!)
9:30 AM
@ais523 a pipe is just a pair of file descriptors, one for reading, and one for writing. You can use both in the same process, if you want, although normally you pass one end of the pipe to a child process, and keep the other end
@pxeger that seems to be the case on Linux; on SunOS you could write either descriptor and read back from the other
oh, interesting
when I ported my programs from SunOS to Linux, the only thing I typically had to change was to swap the ends of a pipe if I'd connected it backwards by mistake
FIFOs can be open read-write on Linux
9:32 AM
You might be able to re-open a basic pipe as read-write using fcntl, I'm not sure
<Linux man 7 pipe> On some systems (but not Linux), pipes are bidirectional: data can be transmitted in both directions between the pipe ends. POSIX.1 requires only unidirectional pipes. Portable applications should avoid reliance on bidirectional pipe semantics.
so looks like there's no way to get the two-queue behaviour
I don't think it was particularly useful anyway? I only used it by mistake
You could always just open two pipes and use both of them.
except that that's almost always a bug – you need to implement the flow control manually to prevent a deadlock
I wonder how easy it is to take a read-only FD and a write-only FD and multiplex them into one read-write FD
I think that's impossible at the FD level, and possible but fairly obscure at the stdio level, not sure though
at least with glibc
9:37 AM
@ais523 I suppose the advantage of two-way pipes is that you don't need to remember which of the two return FDs is which
@pxeger yes, that's why I kept connecting them backwards :-)
@ais523 I'm pretty sure it's possible if you spawn an intermediate process to handle the reads and writes. It would only work indirectly then, though.
that SunOS man page gives zero indication of what the correct connection direction is
@pxeger ooh, wouldn't need to be a process, you could use a kernel module
you say that like writing a kernel module is easier than writing a small userspace program
maybe not easier, but surely more efficient?
I've been considering redoing the fizzbuzz as a kernel module, but it wouldn't technically comply with the spec
9:40 AM
Write a fizzbuzz OS
Make a fizzbuzz FPGA
and measuring the throughput would be hard to define, as the "splice to /dev/null" approach wouldn't calculate the fizzes and buzzes at all
there was some discussion of the FPGA approach, I think the general conclusion was that FizzBuzz is possible at combinatorial speeds so it'd just be down to how much I/O bandwidth the FPGA had
you could use pretty much the same algorithm as in my answer (striping the memory differently)
@pxeger if you actually did this, and got it to run via KVM, it might actually be valid, and work better than a normal process
a fizzbuzz OS would be almost entirely I/O
and again, it's hard to define the speed of output
speed at which you can repeatedly overwrite VGA video memory, perhaps? (displaying on the screen is a valid output method, although I'm not sure whether modern computers can even be set into VGA text mode)
surely KVM has some kind of basic byte copying buffer
but then you're copying, so that's probably not gonna work faster
I/O is one of the slowest parts of virtualisation
if you do it the originally intended way, with in and out processor instructions and interrupt vectors, you're going to have a huge number of processor traps and virtualised context switches, which are not fast at all
those are slow even on a non-virtualised processor, though, so modern I/O is often about trying to avoid them as much as possible
(which is why motherboards are so complicated, as they have to handle not just all the I/O routing, but also identifying the triggers for the various types of I/O occurring)
10:34 AM
hello gamers
11:01 AM
A: "Hello, World!"

alephalphaCognate, 20 bytes Print"Hello, World!" Attempt This Online!

A: Sandbox for Proposed Challenges

solid.pyConvert from Greeklish to modern Greek Greeklish, a portmanteau of the words Greek and English, is a way of writing modern Greek using only ASCII characters. This informal way of writing was extensively used in older applications / web forums that did not support Unicode, and were not programmed ...

11:42 AM
CMQ: Is CSS declarative or imperative?
Declaratice right
“This is what h1s look like “ not “make h1s green then underline them”
11:58 AM
@ais523 loopback socket? maybe a unix domain one
@Neil that wouldn't be a pipe, but you're right, it serves basically the same purpose as one
and is bidirectional
once you've opened a connection on a socket it acts like a pipe
but there's more overhead in negotiating the connection
sockets have a bit more functionality, too
there's also socketpair
there's also linux file based sockets that basically have all the benefits of both
12:01 PM
unix domain sockets are probably the file based sockets you're thinking of
or do you mean named FIFOs?
yes I mean domain sockets I think
12:45 PM
A: Sandbox for Proposed Challenges

Nobody Needs NamesAlphanumerics but no Alphanumerics restricted-source code-golf We define the alphanumeric bytes as qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM1234567890 (i.e. All letters, both cases, and numbers). The order does not matter and I typed it in that order to be lazy. Your task is to write a...

While unsuited for main, this might find success as a CMC in TNB. — Adám 11 mins ago
Good. CMC.
@NobodyNeedsNames APL, 14 bytes: ∊(-∘≢↓⍳)¨':[{'
':[{' are just those three characters. Then, on each ( we find the range which gives us 0: and A[ and a{ from which we drop from the rear -∘ as many elements as there are in each of : and [ and {, i.e. 1 each.
1:03 PM
Time for jsfuck.com
lol i was gonna try and do it with regular js :P
How do you get letters without using letters without JSfuck shenenigens
well you'd have to use a similar method to jsfuck
but without necessarily using jsfuck.com to generate it
fair enough, I guess it might be more efficient if you use a few more symbols
1:06 PM
like for example theres still variable names u can use :P
Just underscores right?
and $
Accented chars and all other \w characters from all languages.
Maybe I'll start naming all my JS variables with one or more Hangul Filler character (U+3164):
ok i cant sit here and do this rn why am i doing this lmao
also wow
That's evil
I imagine you could use that to undetecable inject some malware into code
1:12 PM
2 messages moved to Sandbox
@Adám Goddammit JS, why?
Python accepts it too
it's a letter
wait what... LOL
And that's why we at Dyalog don't "just" allow any Unicode letter for identifiers. (Many people have suggested that.)
most languages do, I beleive it's a official unicode standard about what letters are alowed in identifiers that most every language follows
1:13 PM
@pxeger Goddammit Python, why? :P
@Zionmyceliaadamancy you think that's bad?
@lyxal I mean, it's not great :P
You haven't seen bad
1:14 PM
Python, 20 bytes: ㅤ=1;print(ㅤ+ㅤ)
i had a terrible idea along similar lines;
reserved keywords are only reserved in the context theyre reserved in
Turns out js accepts ඞ as a variable name
@Adám I suppose in APL it's a more serious problem, because inserting only a variable name could cause a bigger change in the syntax
@lyxal lol
@thejonymyster like soft keywords? Those are not a terrible idea if used with care
1:15 PM
if = true; if(if){print(if)}
@NobodyNeedsNames it's actually a duplicate that did very well on main
think of it as rather than , i.e. the interesting part is the restriction, the task is irrelevant
@pxeger Maybe, but it is still nice that it is (relatively) easy to type all valid identifiers.
@thejonymyster omg imagine the amout of cursed things you can do
i think itd be funny :P
experience seems to be that boring restrictions don't improve challenges even if the task is interesting, but interesting restrictions make for good challenges even if the task is boring
1:17 PM
and technically golfy
@Adám Pretty ironic to say that with a language so special it needs its own (part of a) Unicode block
its also pretty cool that it does have that
(also I was hoping that my reply to a comment by @Adám would ping the author of the comment, but instead it pinged the user quoting it)
i was unicode hunting and so surprised to see all the apl ones labelled as apl lol
1:18 PM
@Adám and I'm sure people who don't use a basic latin keyboard don't find them that easy to type
@mousetail unicode normalisation
I can type almost all Jelly's identifiers, but a few of them come out incorrectly
e.g. the key sequence that for Dennis is probably ʋ comes out on my keyboard as ư
@thejonymyster ato.pxeger.com/…
1:20 PM
@pxeger true
there is something wrong with the sandbox, though, if we can downvote a challenge and say that it won't do well, when it's a duplicate of a challenge at +54 (both the estimate that it wouldn't do well, and the fact that the sandbox commenters missed the dupe)
@PyGamer0 i dont know the lang enough but i think thats cursed :P
@ais523 I've only had to add the hook characters and one or two dotted ones to my layout. Dennis did a pretty good job
I have a dead key for dot, so I can dot anything pretty easily
ạȧḅḃ etc.
it's on altgr-/ (below) or altgr-shift-/ (above)
1:23 PM
@ais523 It did very well on main... 5½ years ago. The reason we discourage "print X without X" is because almost all interesting variations have now been done
@Zionmyceliaadamancy dang it that's the one it was looking for :p
and I didn't even put it there myself! (although it took a while to figure out where it was on the keyboard)
@pxeger in that case, maybe we should be finding duplicates for the interesting ones rather than saying they won't do well?
@ais523 X11 has builtin composition for most dotted letters too, just except ŀĿ for some reason
@thejonymyster more cursed: ato.pxeger.com/…
@pxeger that's because the dot there isn't an accent, it's a composition of l/L with ·
1:25 PM
last time i tried to make a code sheet it was awful. there were like. braille characters. and dominos
for Catalan, where ll has a special meaning so you have to break it up as ŀl if you want two separate ls in a row
@PyGamer0 classic
@ais523 isn't the statement "they won't do well" true because of the existence of duplicates? So why bother finding the duplicates, if we know they exist? (and even if they don't exist as actual duplicates by SE's standards, we know they're overdone?)
so it's unsurprising that it acts differently from the uses of overdot/underdot as an accent (it's even in a different place on the character)
in that case it's mainly surprising that Jelly has that character as an odd one out
1:26 PM
@pxeger I think of it the other way round – it's clearly an interesting challenge, so if it isn't a duplicate, it will do well
@ais523 ngl, I always thought that the dot wasn't an overdot because L/l are "tall" letters :P
Plus, l with an overdot can look too much like an i
@Zionmyceliaadamancy so did I, I only stumbled across the source of the letters by chance while looking up something Jelly-unrelated
What an improvement! Compare the original to the new style.
@Zionmyceliaadamancy ḷ already looks a bit too much like !
What a terrible day to have eyes
1:28 PM
@Adám very spacious
@Adám Somebody call Arthur Whitney right now!
@pxeger Obviously two identical characters look alike smh
I'm a bit disappointed that there isn't an ı with underdot (at least, I assume there isn't, the key sequence that should produce it doesn't do anything)
i couldnt have the restraint that the unicode guys have
For me, the character sequence which would produce "i with overdot" actually produces i with no dot: ı
1:29 PM
you can probably craft it out of combining characters?
@pxeger for me too
@Adám it's too early for this man
dotless I is famously a letter in Turkish
@ais523 ı̣ ı̣
I wonder if it would be possible to configure uglifyjs or another mimifier to generate only invisible identifiers. Wouldn't really make the code harder to reverse engineer but anyone trying will probably bleed out their eyes
you could disguise the remaining code as JSFuck?
thus causing people to use the wrong deobfuscator
1:31 PM
oml thatd be good for a cnr if not for the whole "dont be underhanded" thing
@ais523 huh, i knew about the catalan interpunct but had no idea that was what ŀ is from
hmm, that almost sounds like a challenge at this point: write code which does one thing on its own, and something else if all the ASCII alphanumerics are removed
@Adám Here's a good use for font ligatures: you can distinguish =�> from => (where � is replaced with an invisible character, but I made it visible for clarity)
1:32 PM
some languages could even do a three-way: a punctuation-only program, an alphanumeric-only program, and a program that's the two interleaved
@ais523 you could allow answers to define their own subsets of characters to remove, most subsets wins (probably too easy to game though)
@pxeger that would drive me crazy trying to cheese it with A Pear Tree :-D
I only need 2-char subsets to get the checksums working, but am not sure how many disjoint subsets are even simultaneously TC there
Why is A Pear Tree called A Pear Tree?
it was meant to be a one-off joke
that sounds like such a ridiculous question out of context
1:35 PM
Welcome to Tautology Club!
@pxeger pxeger get out of my head this is the second time you sent a message i was thinking of sending but decided not to
for the polyglot challenge, we used to have language rundowns
isn't it obvious how apt of a name it is
@Ginger a tautology would be "is X named X?"; "why is X named X?" is often a legitimate question
but does it have super cow powers?
1:36 PM
The first rule of the tautology club is the first rule of the tautology club
the language rundown would be something like "this program prints 12 in language A, 11 in language B, 10 in language C", and so on
idk if i didnt have the context of the song i might think A Pear Tree was some apl sort of thing
@ais523 fair point
@UnrelatedString took me a second
and the idea was to be able to finish it with "and a partridge in A Pear Tree"
1:37 PM
I'm gonna make a language called "gbirds" which prints "four call" for every program
novelty languages r good
laughs in CATHY
@pxeger ok well thats a bit much lol i liked it when it was just the error
(which nearly any program will print, unless it's exceptionally long – the probability of a random program producing that error is over 50% well into the tens-of-kilobytes range)
1:39 PM
oh my god wait i just had a challenge idea but its probably not good so nevermind i didnt
I hate that feeling
i will talk about it though because maybe im wrong and you guys have ideas
it might be dupey though too
anyway, I put more effort into my one-off jokes than many people do, so I tried to work out, in a few minutes, what sort of interesting language would error out on almost any source code, which is where the checksum idea came from
using CRC-32 for that checksum is pretty smart though
yes, needs to be something non-crypto-secure, otherwise brute-forcing it would take too long
and CRC32 was the first insecure hash function that came to mind
1:41 PM
every now and then we all i do the thing where i type a word like "apple" but end up typing "a[[;e" because my hand was too far to the right. i wonder if thered be a way to do a challenge where you like... correct those errors :P
I make similar errors but the offsets are more complex than just being one key to the right
because I move my hands on the keyboard a lot as I type
but for challenge i keep shrimple
it runs into issues if you try to take it mostly generally since like, actually detecting the errors in a string would be impossible
even with a dictionary of what is and isnt a word
can we do a challenge that removes # from the end of the string, because I seem to press it accidentally every time I press the enter key
1:44 PM
you can just move the half of the keyboard that got destroyed by the bullets
i guess itd have to be unconditional then?
(reference for those who don't remember the challenge)
like "i absoutely 100% typed this with my hand in the wrong spot, fix the word plz"
and then guaruntee input wont have /?'"\|=+
(=+, /? and '" have keys to the right but i feel like that makes it a chameleon challenge along the lines of the cPS LOCK challenge)
the basic problem here is that you have a kolmo + a Jelly builtin
1:47 PM
The problem is it just becomes a string translation challenge
and I'm not convinced it's an interesting kolmo
yeah basically ^^^
(and it isn't just Jelly that has the builtin in question)
:P ah well there you go
hmm, we should have more challenges that are a trivial task combined with a ridiculously onerous I/O requirement – it's bad to combine restrictive I/O with an otherwise interesting challenge, but sometimes the I/O can be the challenge
1:48 PM
dont think its saveable then, thanks :-)
^^ interesting idea i like it
reminds me of this one idea that keeps bouncing around my head of "your output must be a valid input"
(which wouldnt be hard in most languages)
I've made at least one in the past, but it's likely an underexplored genre
also, esolangs suddenly start doing very badly when you make them do I/O beyond stdin/stdout/args
assuming that you aren't telling people to replicate the functionality of a standard program (which they will normally do simply by running that program)
would "write a function, which when input into itself, does x" be self validating :P
OK, so challenge idea: "create a file whose size is provided by user input, but whose allocated size is < 1 MiB"
(i.e. a Lenguage assembler)
as far as I know, there isn't a standard program to do this (which is why Lenguage programming is such a pain) – maybe there is one and I've missed it
so in order to make it work you have to use fairly low-level APIs for interacting with the filesystem
it's even possible that C might win, which would be very surprising
That term seems impossible to google
@thejonymyster is only appropriate if x is "return true", and then the task isn't interesting without an additional restriction
1:58 PM
thats what i suspected yeah
although you have got me thinking about what an esolang that has huge difficulty in returning true might look like
maybe requiring specific user input
ive just been learning a lot abt functional stuff lately :P like functions which return functions which take functions as input blabla
crazy world that programming is..........
I'm not sure what sort of language is best for messing around with that
2:00 PM
with functional stuff? or with a difficult esolang?
languages like Haskell do a huge amount of it, but are strongly typed which isn't much fun for the most serious messing around
functional stuff
Anyone up for some tacit JS?
next youll be telling me an array can have an array as an index oh wait
I'm trying to figure out the chaining rules
oh, this is monadic, so it's easy
==> functions are the new => functions.
the only tricky part is interpreting + as quoted when you run the reduce, and that's presumably what (,)=> does in this notation
@thejonymyster it just stringifies the array
no i know i was just bein silly :P
@ais523 (,)=> for dyads, => for monads, and ()=> for nilads?
2:03 PM
Isn't there a way to build a 2-argument function using two =>s instead of (a,b)=>?
But reduce doesn't like that.
a=>b=> but that's curried, which is not what reduce wants
but the call syntax becomes f(a)(b) rather than f(a,b)
@pxeger also this link is just my link again fyi
2:04 PM
dammit I'm so used to ATO auto-updating the link...
right i figured :P
careful not to lose an answer that way
functional programming doesn't work well with tacit syntax because it's hard to disambiguate which operators are being called and which operators are being used as function arguments
@ais523 Uh, works fine in APL, and excellently in BQN.
Haskell's solution of quoting operators using parentheses is pretty clever, but wouldn't be great for golfing
@Adám it's not truly functional programming though
2:05 PM
BQN is truly functional.
I keep thinking that that should be BQM (so that it's APL+1)
unless I'm mistaken, it requires extra syntax to use functions as "first class"
which, to me, makes them second class
@ais523 Indeed, but Marshall wants to reorder the alphabet so N comes before M, N having 3 strokes vs M's 4.
Coincidentally (or perhaps not), there's the image format QOI which is a replacement for PNG, which is also +[1, 1, 2]
@Adám the alphabet did change order at some points in the past
2:07 PM
CMC: given a three letter string, increment the first two letters and add two to the last letter
(all inputs will be composed of a..x)
@ais523 Hebrew (from which the Latin alphabet ultimately derives) has M before N.
@ais523 preposterous. The alphabet as is was handed down to us by the universe exactly as is on 1/1/1 (earliest date)
I thought the Latin alphabet was originally based on Etruscan, but with lots of influence from other languages
or wait when does that one time standard start
let's look this up, I'm interested now
2:08 PM
@Adám Wouldn't it be more correct to say Hebrew and Latin share a common ancestor?
@pxeger Python (a,b,c)=m;' '.join(*(chr(ord(a-1)),chr(ord(b-1)),chr(ord(c+2)))
@pxeger not familiar with bqn but is the extra syntax required for handling functions as values, or just producing function values from functions-as-you'd-write-them-for-direct-use
@ais523 looks like it was approximately Hebrew <- Imperial Aramaic <- Phoenician -> Ionic -> Latin
that seems reasonable
@UnrelatedString yeah that's what I meant
2:10 PM
which one
I guess you could go down the Prolog syntax route, where basically everything is quoted by default
oh I didn't read your whole message
the first one? idk
@ais523 Mathematica?
if you write A=1+2 in Prolog, it assigns the literal expression 1+2 to A because you didn't explicitly tell it to evaluate it
something which probably catches out people who are new to the language all the time
@pxeger BQN, 7: 1‿1‿2⊸+ Try!
@Adám what's the non-ASCII operator there?
2:13 PM
@ais523 is for forming literal arrays (like , in most languages)
@pxeger x86-64 machine code, 7 bytes: f: add DWORD PTR [rdi], 0x020101; ret (takes address in RDI and modifies the string in place)
oh, I thought that was an underscore
was interested in the other non-ASCII operator
Yes, and curries the argument to +
ah, right, makes sense
is it the equivalent of a tack in APL?
2:14 PM
I wasn't expecting an explicit curry operator, but maybe that's necessary in a tacit functional language
@pxeger The alphabet used in modern Hebrew is indeed an offshoot of Aramaic. I meant the ancient Hebrew which is the same as Phoenician.
(unless you count concatenative languages like Underload, which have an entirely different set of chaining rules to APL despite being tacit)
@pxeger No, equivalent to in APL.
BQN has one for curry left argument and one for curry right argument (the little bar points to the argument). APL derives the meaning from the position of the array vs the function.
Underload always curries, but it has a function to reverse the direction of the curry
@UnrelatedString BQN doesn't really require any syntax to use functions as first-class values. E.g. you can create the array 1‿+‿2 just as easily as you can create 1‿1‿2 and if F is a function, you can pass it as argument to G with G f
2:26 PM
so yeah that would be unambiguously first-class then
In APL, you have to jump through hoops to do that sort of thing, though it can be done.
I think the "standard" golfing language solution to this sort of problem is to quote functions as string literals, and use string eval to do the unquoting
3:24 PM
@UnrelatedString @Zionmyceliaadamancy i dont know what i did here but i think these rules (for flax) might make sense: gist.github.com/PyGamer0/f313d41a4cafd07018ee646be33fc323
yeah i got rid of the 2,0 rules
and unparseable nilads are prepended to the accumulator
i feel like in that case you would want to keep 2,0
@UnrelatedString done
4:21 PM
@ais523 have you tried dd if=/dev/null of=$2 seek=$1 count=0?
4:59 PM
@ais523 It is, the Etruscans got it from the Greeks but they left their marks on it. For example you might notice that C, derived from Gamma, makes the same sound in Latin as K does in Greek. Which is because Etruscans didn't have a distinction between /k/ and /g/. So Romans used C for both until eventually inventing G for the /g/ sound.
huh, I always thought the Romans got inspiration directly from the greeks
5:40 PM
See: c
c: c
would've been ironic
@pxeger Acc!!, 29 bytes: Try it online!
oh yeah lol this is super easy in tiny imperative langs :P like bf is just ,+.,+.,++.
6:17 PM
@pxeger Vyxal, 7 bytes
Or if I/O can be list of codepoints, 4 bytes: ⁺»f+
6:56 PM
Woo 3K rep
00:00 - 19:0019:00 - 00:00

« first day (4175 days earlier)      last day (43 days later) »