« first day (4133 days earlier)      last day (555 days later) » 

7:00 AM
this is the same keyboard layout that all the Jelly characters come from
@Nobody ik its mariolang, but what does it do??
@hyper-neutrino ah, as expected
saw that one coming
the APL keyboard is actually kind of helpful especially when i'm typing formal logic stuff on discord
@AidenChow make the memory
@ais523 Re:Direction?
7:01 AM
apl as in the coding language ?
how do i check if a num is neg?
@emanresuA that uses a different set of arrows, which I didn't memorise how to type
i know the pseudocode
@Nobody the brainfuck thing not work ?
7:01 AM
checking whether a number is negative in bignum brainfuck is surprisingly difficult
@AidenChow well
because if you set off in the wrong direction and keep going, you get into an infinite loop, so you have to reverse direction every now and then and reverse all your progress
[] in brainfuck is very messy in mario
oh negative, u were asking for checking if one num is greater than another earlier, got confused with that
both works
7:03 AM
the competitive game BF Joust is pretty much based on that principle
is checking a number negative even doable in bf?
like maybe you can do
can you even copy a possibly-negative bignum from one cell to another without knowing its sign already
find its sign
7:03 AM
that really does seem hard
it is possible, and uses basically the same code as checking for negative (you just copy all the changes you make to it to another cell with reversed sign)
checking for negative (: code?
but it's way more complicated than most algorithms, and has quadratic performance
7:05 AM
@ais523 how
i suppose like -++----++++++++----------------++++++++++++++++++++++++++++++++ and every time check if it is 0???
the pseudocode is something like: x = 0; for(;;) { check if the cell is x, and break if it is; check if the cell is -x, and break if it is; increment x}
make sure input is not 0
check if 0
you can reduce the constant factor by checking a range of values near x rather than a single value
hmm, I wonder if that makes it possible to run faster than quadratic? say you check the numbers from n to 2n, then from -n to -2n, then from 2n to 4n, then from -n to -4n, etc.
is there a way of making this code more efficient?
something I've been thinking a lot about recently is in Turing tarpits
7:08 AM
@ais523 calculating n and 2n and looping might take time
@Nobody bruh not gonna read through all of that
@Nobody it does, but it may still save more time than it costs
CMC: convert from unary to decimal
unary as in a bunch of 1's ??
@AidenChow the important part is this
7:10 AM
@AidenChow yes
can that be taken as a string ?
@Nobody please post it as a link.. takes up space..
@AidenChow yes
if so, u can do lambda s:len(s) in python right
what is unary
like 11111 => 5
7:11 AM
@AidenChow yes
@AidenChow yes i think so
k cool
ngn/k 1 byte: #
I think technically the "represent a number as that number of 1s" format is called "bijective unary" but people abbreviate it to "unary"
is unary like 11111=>5 and 11111111111=>11?
7:12 AM
@Nobody most likely yes
well then
CMC: Convert unary to decimal but the input is given as an integer: 1111111111111 not a string
easy, len(str(i))
python's sum module is stupid
@Nobody python has a sum module?
@PyGamer0 Desmos, f(n)=floor(logn)+1
7:13 AM
just DS in jelly lol (digit sum)
just #$ in ngn/k \o/
pretty sure best method in python3
python2: len(`i`)
just l in brachylog :P
@PyGamer0 sum(1,2,3)=6, sum([1,2,3])=6
but say
sum('1','2','3') won't work
well you'd need to make it a function for it to be a valid submission so lambda x:len(str(x)) or lambda x:len(`x`)
7:15 AM
@hyper-neutrino was alzy
@Nobody well sum has a starting value of 0...
@PyGamer0 yah
which is why i say it is stupid
why not just
try sum(['a','b'], '')
from functools import*
reduce(lambda x,y:x+y,['a','b'])
oh that doesn't work
@Nobody you can just use "".join(...)
Traceback (most recent call last):
  File "/ATO/code", line 1, in <module>
TypeError: sum() can't sum strings [use ''.join(seq) instead]
7:16 AM
what about this
you can't add sets
@Nobody do you want vectorised sum or what?
if you want union that's | which you'd have to do with a reduce
if you want vectorized sum you can't use sets cuz those aren't even ordered
i know there's also a union function somewhere
cant do vectorized sum on sets cuz they not ordered im pretty sure
oh lol said the same thing at the same time
7:18 AM
@hyper-neutrino union
okay yeah it's literally the static set.union
oh that's one byte shorter than set.__or__ lol
@Nobody foldl(set.__or__, {}, ...)
@UnrelatedString set.union isn't static; it's an unbound method, so its first argument must be a set. (the following arguments can be any iterable though)
7:19 AM
i actually had no idea it accepted non-sets for the following arguments lmao
CMC: Vectorised addition sum. [[1,2],[3,4]] -> [4,6]
CMC: Build an n×n multiplication table.
@PyGamer0 just for list of lists right, and each list length is the same ??
@AidenChow yeah
^ both my cmcs in k
@hyper-neutrino Does {}.__or__ work?
{} is a dict, not a set
it would have to be set().union
or, if you don't mind having a random extra thing in your set, you could do something like {id}.union
Please be mindful of how much stuff you put in the chat
wait if the first argument of set.union must be a set but the second can be a list, does that mean that it always iterates over the second, even if the first is shorter?
like if I do set.union({ 10 items }, { 5 million items }) will it be fast or slow
@pxeger Huh, when you try to reply to a moved message, the reply gets removed
@PyGamer0 Sum in Geogebra (at least i think thats valid as per code golf rules, mathematica has builtin answers all the time :p)
7:27 AM
i'd imagine it does something to not naively iterate on sets
probably checks the type
@pxeger Huh - I geuss it's in another room
@hyper-neutrino if the second one isn't a set, it will be converted to one, which means it has to iterate over the others
I like these new RO tools but I'm kinda worried that I'm being a bit trigger-happy
are mod names italic in chat?
7:28 AM
@pxeger right, but if they both are, will it automatically iterate through the shorter of the two
@PyGamer0 yes although I'm not sure if it's because we're always considered ROs, or if mods are just italicized as well as ROs while being separate
@PyGamer0 uh yeah, just look at hyper neutrino's name
@hyper-neutrino why would the speed differ? it has to copy all elements in either case
because sets are implemented as some or another kind of hash table
@PyGamer0 for the first, ɾ:"ΠvΠ$ẇ for the second in vyxal
7:30 AM
@PyGamer0 RProgN2, 5 bytes. T#+;)
i think there are some varieties that would actually just let you compose them some way
@ATaco ;)
but actually yeah no you'd have to copy them both anyhow since it's not in place
actually wait nvm i was thinking of in-place merge lol
and they are mutable, but you're not mutating them yet
so yeah it doesn't matter
7:32 AM
The final ) can be removed if the output can be across the stack
for in-place merge it's clearly faster to add a few elements to a large set than to add a lot of elements to a small set
flax: Σ for the first one, ×⌜⍸ for the second one
@ATaco is rprogn2 stack based?
@PyGamer0 ɾ:Mvƒ* in vyxal
My earliest “golf lang”, the name derives from Reverse Polish Notation
7:35 AM
@lyxal did i beat vyxal by 3 bytes 7_7
because there's no outer-product, yes.
Did I beat Vyxal? What a world
@ATaco no, you didn't
that's answering the second
yeah, the first one is just
7:37 AM
@lyxal wait, if 0-indexed is allowed then flax is 2 bytes: ×⌜
can anyone give me a thing that checks if a number is smaller than the other? in marioalang
@PyGamer0 well it's your CMC
is it?
7:38 AM
@Nobody lambda a,b:-a>-b
@Nobody a<b..?
he meant in mariolang
pretty sure u can just port the brainfuck code i sent earlier tho
looks like very similar code instructions
@AidenChow yeah but it's super big then
because [ ] in bf is a little complicated in marioalng
@Nobody Its a me mario! Take-a x as input, Take-a y as input. Check-a if x is less then y-a and print-a the result-a. Bye Bye.
@PyGamer0 lmao
7:40 AM
its mario-lang
like SPL
@Nobody my own :P
7:41 AM
oh no
@Nobody its theoretical :P
Did you know that flax uses the as a quick?
bro literally no one here except u knows mariolang
7:43 AM
Prolly need to work that one out yourself, not sure anyone here has messed with it
looks doable tho, looking at the commands available
if possible and convieneient can you share the link again? thnx
7:46 AM
Q: Brainfuck compare 2 numbers as greater than or less than

Krzysztof LewkoHow can I compare two numbers with an inequality? (greater than or less than) I want to compare single digits For example 1 2 5 3 9 2 etc.

8:09 AM
@UnrelatedString If you use |= it will mutate it in place
yeah exactly
which is why non-in-place union couldn't hypothetically get away with not copying everything with some funky underlying data structures
TIL you can do x?:y in c... (gcc compiler extension)
yep lol
> ISO C99 supports complex floating data types, and as an extension GCC supports them in C90 mode and in C++. GCC also supports complex integer data types which are not part of ISO C99. You can declare complex types using the keyword _Complex. As an extension, the older GNU keyword __complex__ is also supported.
wish c had operator / function overloading
Q: Eh, codegolf shmodegolf

JSorngardThis challenge is about implementing Shm-reduplication, originating in Yiddish, where one takes a word, duplicates it, and replaces the first syllable in the second word with "Shm" in order to indicate that one does not care. Some examples include: word -> word shmord baby -> baby shmaby sale ->...

8:25 AM
case '0'...'9':psh(l[i]-'0');break;
8:45 AM
TIL C can have operations that vectorise.
Sort of makes sense? C Speaks Computer, and Computers can Vectorize
If C couldn't Vectorize than native vectorization would be a pain
Shhh I'm small brain sometimes
@ATaco yeah vector instructions amiright
Vector Instructions are like regular math but magic.
8:50 AM
(context: i was reading the gcc compiler extensions for c)
3 hours later…
11:35 AM
// cursed idea: postfix english
dog mat on sat // dog sat on mat
mat on bat a cat a over flew who was sitting // a bat flew over a cat who was sitting on a mat
12:20 PM
probably for the best lol
12:31 PM
that makes me the only RO here who hasn't moved messages yet
12:56 PM
@lyxal hmm true
1:09 PM
1:36 PM
@hyper-neutrino The first one
Your name has the classes username moderator owner, removing owner de-italicizes it
oh I don't know why I didn't think to check that
I mean, I was entirely expecting to have to go into the JS and do some snooping, I didn't think of it either :p
I wonder, if I am added to a private room on another site, will I show as a moderator and/or an owner? (since mods can see all private rooms on their own site only)
1:58 PM
@hyper-neutrino username moderator owner
1 hour later…
3:13 PM
i just got chat rolled by emanresu A...
whoah where?
3:40 PM
Q: Village Gangs - Max Count

THUNDER 07Village Gangs - Max Count In a village there are N people whose identification numbers are from 1 to N. These villagers team together among themselves to form a certain number of gangs. There may be some villagers who are not part of any of these gangs. A combination (i,j) where 1 <= i,j <= N ind...

3:57 PM
^ VTC as stolen from homework site ^
4:11 PM
@NewPosts lol
@PyGamer0 BQN, 0-based, 4 bytes: ×⌜˜↕
Or 1-based for 6 bytes: ×⌜˜1+↕
Pip, 0-based, 6 bytes: B*_MCa
Or 1-based for 8 bytes: $*U GMCa
4:32 PM
Yo dawg, I herd you like chat so I put a chat in yo chat so you can chat while u chat
@PyGamer0 Here's a one-liner in HBL in 7.5 bytes: <'(**.,)(0.)(0.
Also two other solutions that are the same length.
@DLosc is there such a thing as a more-than-one-liner in HBL?
Yeah, the other two I linked are a two-liner and three-liner
That was one of my design goals for HBL: make it so that multiline programs were often the golfiest way to do things. I only somewhat achieved that goal, but there are cases where it's true.
The helper function could be inlined, but then all the close-parens would have to be explicitly included, making it half a byte longer.
4:52 PM
@DLosc dare i ask why math works like that now
I don't know, dare you? ;)
5:28 PM
okay, so +12 means 1+2, and a bit of playing around shows that +1 is incrementing one?
i still dont fully under stand whats going on here
1+2 = 16 and 2+1 = undefined
@des54321 This is Lisp (although the outermost parentheses are implicit because golf), so every expression is a function followed by arguments.
So in 1+2, 1 is the function and + and 2 are the arguments.
aha, and youre overloading things an incredible amount so that 1 can mean 1 or addition
*exponentiation, but yes
Why is '' not a thing?
5:37 PM
Depending on what you mean, the answer is either "because I didn't think it would be very useful" or "because I haven't implemented it yet"
If you mean quoting something twice, I couldn't think of golf scenarios where that would be necessary.
So I plan to use '' for other stuff.
yeah, I meant why '' isn't a digraph
also, is ') a thing?
Yes, the plan is for '(...), (...'), ''(...), (...''), and '(...') all to mean different things.
Can't remember which is which off the top of my head, but one of those is string literals and another is numeric literals.
(and '(...) is already list literals, ofc)
And I think I was also planning to have ''xy be a token for any two characters x and y... it's been a while since I worked on HBL, but hopefully most of the ideas are written down somewhere. :P
oh my god
I just looked up Mario on Wikipedia and:
> Full name: Mario Mario
well, here's a actual version of @PyGamer0's code:
IS'A X < Y?
6:45 PM
@Ginger yup, i believe its only from the movie (1993) but i guess thats enough for wikipedia so long as its reported on? Lol
@DLosc i wanna hear abt this lang, where do i start backreading?
@thejonymyster github.com/dloscutoff/hbl is the github i believe
ty ty
7:08 PM
Why the frick does Chrome think every terminal emulator I make should be translated from Arabic
7:29 PM
@PyGamer0 how lol
oic ^^
> geedback
> geedback
impostor more sus
impostor very sus
impostor very sus
imposter go into of the vents
amogus goes to the next sus town
emergency meeting
impostor more sus
eject "ඞ"
red was the impostor
Mar 7 at 20:04, by emanresu A
8:11 PM
@emanresuA What are your thoughts about allowing languages that are on ATO as well as those that are on TIO? I don't know if that would expand the pool much, but (for example) Whython doesn't have an Esolangs or Rosetta Code entry yet.
I guess yeah
What do you think about allowing any language used on this site enough?
tangent; your rules cite the original challenge's "It must have a free interpreter (as in beer)."
what does this idiom mean
"free as in beer" clarifies that "free" means in the monetary sense
so not free speech or probably more sensible in the case of an interpreter, free when it comes to licensing
ah works for me
its weird because then it goes on to clarify what it means in the next sentence
but i digress
8:28 PM
"free as in beer" is such a weird sentiment to me, because I have never had free beer :P
The closest is someone buying me a beer, but that's still not "free" :P
I interpreted that as "beer is a kind of software".
right same
imo it should be "free (as in beer) interpreter"
so its clarification("free","beer") instead of clarification("free interpreter","beer")
9:31 PM
@RadvylfPrograms rSNBATWPL LYAL
10:01 PM
@emanresuA wtf already?!
That's a lotta votes
It's popular, although I'm not sure it will remain that way after we learn it
Welcome to the nineteenth Learn You A Lang for Great Good! Today, we'll be learning rSNBATWPL, the last language you will ever learn, for more reasons than one. Feel free to ask @RadvylfPrograms if you have any questions. During the event, feel free to post CMCs to practice rSN (._.MCs), ask questions about the language, and so on.
doesn't LYAL start in an hour?
Oh oops
10:04 PM
sorry, 2 hours :P
We can repin that when it starts
Well, that wouldn't've worked for me timing-wise anyway
When does work for you?
Actually, I think my family's off doing some random nonsense tonight, so I likely will be able to at the correct time
10:06 PM
Okay cool :)
All the brackets are curly, this scares me
In the mean time I'll see what I can do to get it running on DSO so we can have permalinks
Ooh nice
It's not a particularly hard language to get set up IIRC, although everything in between the brackets is pure chaos it's relatively well behaved as a black box
“Non’t” now that is a keyword
@RadvylfPrograms Yeah, and I guess I can just copy the polyfill
10:08 PM
@emanresuA and errors that don't hang your browser :)
JS doesn't have a good way to do that
Well, for errors it does
Even non-infinitely-looping errors my online interpreter does weird stuff
What about { though?
That's...idk what's up with that
On Node it just throws a max call stack thing almost instantly
On browsers it seems to use up a ton of time and memory with every iteration and can't hit recursion depth
@RadvylfPrograms Does this mean that if I still want to learn other programming languages, I need to put off learning rSNBATWPL until later? :P
10:15 PM
Well, that would be advisable under any circumstances :p
No, once you learn rSNBATWPL, you will instantly know all other languages
Of course, you can never learn rSNBATWPL
In theory, (Function(text).bind({exports: {module: {}},require:...}))() should work
Just compile node as wasm and run it like that, this will be perfectly stable trust me.
> var skip = !!0;
And you complain about me using .join` `
I made it a point to be incredibly inconsistent with my coding style
I used !1/!0, true/false, !!0/!!1, and a few other variants of bool literals
10:30 PM
Hmm, now that we have 3 new ROs, could we depose Radvylf?
Preferably also ban him from SE altogether
I should probably move somewhere without the death penalty before writing any more languages
You absolutely should
Death is too good for the likes of you. A life in solitary is what you deserve /s
No prison can hold me, I can just redefine null and summon whatever tools I need from thin air :p
10:58 PM
@user that's too easy to escape. What you need is a room full of the letter E and flags.
That'd be eternal suffering for Radvylf :p

« first day (4133 days earlier)      last day (555 days later) »