« first day (4228 days earlier)      last day (632 days later) » 

12:00 AM
@Zionmyceliaadamancy Showing that it exists doesn't mean actually finding it though.
@lyxal Nah, my number doesn't end in 12.
 
@forest No, but by showing it exists, it implies that there exists some algorithm, in some system, that allows for the construction of that number
 
true, fuck 12
 
Whether we can find that construction tho is a separate question, but that gets into meta-logic and I hate that :P
 
@Zionmyceliaadamancy "In some system" is where it all falls apart.
 
wow i dont even know how to describe this cmc though it might not be too simple for main :P
 
12:01 AM
@forest dang it I got scammed by the number to word site I used! :p
 
heh
 
It truncated the number
 
I'm just waiting for WW to show up and tell us we're all wrong, and this is how numbers work
 
@forest You get to live another day.
 
Numbers are my shield.
 
12:03 AM
@forest Ngl, 9 has got me through some tough times
 
420 helps me. :^)
 
Ah, to live somewhere where that was legal :/
 
>legal
All the best stuff is illegal.
 
caught red-texted
 
The problem with something being illegal is that I can't walk into a shop and buy it
It's always a hassle buying weed, I'd love to be able to just go to a dispensary
 
12:13 AM
ABACABACBBAAB

A A A A
 B   B   B
   C   C
        B   B
          AA
you start with the top string, for each character you havent already used, you find the closest copy of that character, and you repeatedly travel the distance between them until you dont land on that letter again
so the first two A's are 2 char movements apart, so you keep moving 2 chars at a time until you reach a char that isnt A
then you do that starting with the B instead,
then you skip the next A cause you used it for the first A, so you move onto C, etc
final output is the number of copies of that letter in each run like that so itd be 4,3,2,2,2
how do i... explain that without an example
 
im still confuse lol
 
if this doesnt clear it up i give up XD
 
Detect patterns within a string?
 
the word "equidistant" would go in the explanation somewhere
@lyxal yes but that is a very broad statement :P
 
what if theres like only one 'A' for example
 
12:21 AM
then it just stops at the one A
for a challenge though id say just pretend that never happens
or at least for a CMC id say that
there has to be a non dense way to explain it
 
12:57 AM
@thejonymyster i think i got smth working for ur cmc, not sure if its entirely correct tho: tio.run/##ZZDBboQgFEX3fMXtChw7k5puGlMW2s8wppkIRqpBAkw68/…
obviously not golfed
yet
 
@AidenChow looks good to me :P
idk if the output would be that or the like, numbers of each one instead
its not a very formal cmc dont worry too much about that
 
ya it was pretty fun cmc tho
 
YAY im glad :-)
 
@thejonymyster numbers as in what line each char appears in?
 
no like, look at the last section of the image
how many of that char are in that line's run
 
1:02 AM
oh
that would make things easier
 
ah yeah LOL
the output you gave was really impressive lol
visualization software
rn im working on a similar (self imposed) challenge thats similar to that but instead of grabbing the nearest one, it tries to match with the last one it can, and then as many equidistant copies in between
so A.A.AAA...A becomes uhh
A    A    A
  A A A
ignoring the like, spaces / dots or whatever
not cause they wouldnt be included i just dont feel like
making another big ass example
 
hmm so it always finds the one with the highest distance?
 
yeah, and then uh
itd pick whichever "jump length" gives it the most possible
 
wait so it picks most chars possible, then tiebreaker is jump length, with higher being better?
 
so A.AAA.A would match A.A.A.A first and not A..A..A
 
1:07 AM
so # of chars take priority right
 
no, it Always picks a jump length that gets it to the last character
and then tiebreaker is # of chars
 
oh
okok
 
i havent started implementing it yet i was still just like
out and about / trying to fit it in my head when i was thinking about it lol
 
what if it cant reach the last char no matter the jump length
 
idk how much harder it is
@AidenChow that would never happen, proof as an exercise to the reader
 
1:08 AM
wait last char as in last one in the string?
 
yeah
no
sorry misread
yeah see how hard this is tot talk about LOL
last unused copy of that character in the string
 
okok that make sense
 
so ABBAAA becomes
 
@thejonymyster ya i see why now, it can just jump directly from first to last lol
 
A    A
 BB
   AA
(which then i guess becomes a list of numbers, since thats just an abstract representation)
(i guess??)
 
1:10 AM
ok i already have existing code, it should only take a few modifications to implement the alg to find the jump length
(hopefully)
 
yeah i guess depending on how you implement it its totally possible for this to be just an extension of the previous version
definitely not my implementation one sec let me tio it
 
@thejonymyster wait i just realize that i was supposed to return a list of nums LOL
i totally skipped over that part
 
its fine its all a mess
 
@pxeger sorry, did that ping you?
 
heres my implementation js 176 bytes ignore the fact that the output is different
 
1:14 AM
I sent that because i remember you said once all pxeger.com emails come to you
 
i sort of like, was still messing with it and it wasnt always going to be a cmc or challenge or whatever lol
 
@Neil But <*> doesn't work for it. You have to do <.>, <%>, or something else
Try it online! Then try replace it with <*>
 
1:41 AM
CMC: Given a JS expression in the form of -~~--~~-...0, evaluate it
 
1:54 AM
@emanresuA idk what those do, like could u explain that
 
~ is bitwise not, - is negate, and combinations of those two can increment/decrement
You can not take the zero fi you watn
 
what does .0 do?
 
JS, 4 bytes: eval
3
 
what does .....0 mean?
 
... is not part of the string you get
The string you get is composed of -, ~, and a 0 at the end
 
1:58 AM
@NumberBasher where u get that??????
 
Actually I guess eval doesn't work because -- is treated as pre-increment
 
so whats the order of operation for that
 
left to right
so ~-~x is ~(-(~x))
~x is the same as -x-1
 
Ok, my JS 4-byter doesn't work but it works in Python lol. Python, 4 bytes: eval
JS, 23 bytes: x=>eval([...x].join` `)
 
2:04 AM
lol
 
Noncheaty solutions appreciatied
 
Vyxal, 1 byte: E
lol
 
so we can't use eval?
 
You can bit it'd be nice to see noncheaty solutions
 
2:06 AM
I mean, what's your definition of "cheaty"
 
eval
Let me guess, transliterate-based Vyxal solution?
 
Python, 49 bytes: f=lambda x,i=0:x and f(x[:-1],-i-(x[-1]>'-'))or i
 
Ooh nice
There's probably some Whython trick based on int(x) or f(...)
 
Vyxal D, 9 bytes: Ṙ‛-~‛NꜝĿĖ
 
@Steffan Saw that one coming
 
2:10 AM
Try it online! (Python) and Try it Online! (Vyxal)
Whython, 41: f=lambda x,i=0:f(x[:-1],-i-(x[-1]>'-'))?i
 
Off-topic and it's taking up a lot of space.
 
 
2 hours later…
4:07 AM
@pxeger you forgot "perhaps ™"
 
 
2 hours later…
6:29 AM
@Steffan I said "suppose you've got a directory whose only file is a" but on TIO there are no files except some dotfiles: Try it online!
 
its pretty much my original code for ur first cmc but modified a little to calculate the jump length
 
@user no but I'd rather you didn't use a email address at my domain for an account I don't control
 
Wait your email has separate accounts?
Also your website's down?
 
@emanresuA hmm, nginx was inexplicably disabled
@emanresuA No, it just makes it look like I'm running an account which I'm not
 
6:58 AM
@pxeger well I mean the explanation is that I didn't enable it, but I don't know why I didn't
 
7:11 AM
Sep 4, 2021 at 23:23, by user
You can troll me if you like, my email is this_is_totally_users_email@pxeger.com. Feel free to send any and all email, including spam, my way :P
Nov 4, 2021 at 19:11, by emanresu A
Btw, my email address is totally.emanresu@pxeger.com
Nov 4, 2021 at 23:34, by lyxal
@emanresuA I once sent an email to joemama69@pxeger.com
Huh, you made an anti-rickroll userscript: pxeger.com/userscripts/rickblock.js
Wait that wasn't a rickroll? Damnit
 
 
1 hour later…
8:22 AM
@emanresuA It used to be, but I removed it while tidying my server up
 
8:54 AM
^ some useful thing i made for plotting stuff
 
9:38 AM
@PyGamer0 where is plotfunc
oh i see
 
9:53 AM
@NumberBasher Please stop
 
^
Made a room, slowly moving stuff over
71 messages moved to Sunsip
 
ok
sorry
 
It's fine to advertise a bit, just don't overdo it
I believe there's a bunch of stuff in radiation hardening if @mousetail wants to move that over
(or give me back RO and I can do it)
 
Not you, mousetail
 
10:08 AM
Thanks, I think I moved everything. There wasn't that much
 
@NumberBasher Some of the stuff I moved was on-topic here (LDW) but I figured you probably want it all in one palce
 
 
2 hours later…
11:50 AM
@pxeger my bad, i haven’t been using pxeger.com emails for anything but I won’t mention it in chat in case someone thinks it’s an actual email
 
12:39 PM
@user Feel free to make as many @rto.run or @radvylf.com as you want
I'm TNB's cool uncle
 
@RadvylfPrograms do you see what part before the @ was used?
 
I await a response
 
OH NO
I don't have email forwarding for rto.run yet
And I used that for multiple job applications :|
 
well lucky for me I sent my request to radvylf.com
 
12:44 PM
Lmao it went to spam
 
imagine not using it for emails :p
 
@RadvylfPrograms What software do you normally use for email?
 
I just have Google Domains forward everything
I don't trust any of my own servers enough to host actual email on them
Plus that sounds like, hella 20th century
 
Isn't using google email on a custom domain super expensive?
I looked into it a few years ago and decided it wasn't worthwihle
So now I rum my own but only about 50% of emails I send actually arive
 
D:
 
1:06 PM
@mousetail Yes, Gsuite's like $10/month or something stupid. I just have email forwarding, which is free.
 
@RadvylfPrograms Is that for sending emails too or just receiving?
 
Just receiving
 
can confirm
 
Sad, I guess I'll just carry on with my 50% bounce rate
 
1:41 PM
lol
@RadvylfPrograms How do you get free email forwarding, can't seem to find it
 
1:59 PM
 
 
2 hours later…
4:16 PM
@Neil But no matter what files you have, it's the same behavior with . or empty string.
 
4:33 PM
But I guess that makes sense, I didn't think of testing it with dot files.
 
@lyxal tysm
 
I'm looking for polyglot code running in PHP, C and Java.......
Assuming Java is allowed to pass through the C preproc
I'm already doing PHP and C
 
4:59 PM
Hm hm
Two is easier than three, especially if you wanna do general programming, not only print hello world
 
5:36 PM
@AidenChow wow this is fun to mess with
gg
 
@Steffan I don't know what you're trying to say there
 
@Neil regardless of what files are in the system, it will return either "." or ""
(". or the empty string")
 
@thejonymyster ... ok let's take a step back
 
btw i dont know anything about perl or whatever i just knew what was trying to be said there
 
oh sorry I didn't mean to reply to you
 
5:39 PM
LOL
 
I just assumed it was Steffan who had pinged me
 
fair assumption :P
 
would you like to learn something about Perl?
 
@mousetail can you give an example of what it might look like without generator input?
for comparison
@Neil sure thang :-)
 
ok, so in Perl, <...> is the glob operator, which enumerates files matching a pattern
so for instance <*> matches all files that don't begin with . (because that's what shell globs do) and <.*> matches all files that do begin with .
now, you can use the operator in one of two ways
you can use the result as a list, e.g. @files = <.*>;
this generates the whole list up front which then gets used (here assigned to a variable, but you could do other things with it)
but, in Perl, some operators are magic and do something subtly different if you use them where it's expecting a single value
in this case, you could write while (<.*>)
now while expects a single value, not a list, so the glob operator returns each file in turn, and then finishes with the empty string
 
5:44 PM
aha
i now believe i see the puzzle unfolded :P
 
so while (<.*>) does the same as foreach (<.*>) but in a subtly different way
now the interesting thing is that you want the while loop to work again when the whole loop runs again (perhaps it's part of a function)
so although it's the same glob operator, it restarts at the beginning of the list of files and returns each one in turn again
now if you were to do something crazy such as print <.*> . "\n" for 1..50; that would really confused the glob operator
since it would keep listing the matching files, then an empty string, and then start all over
now in the case of a very simple glob <.> there's only one file to match, which conveniently always exists in every directory
so in that case it returns ., then the empty string, and then it starts over again, so it just keeps flipping between the two
here endeth the lesson
 
@thejonymyster The rust example would probably just use a Vec<X> instead of a dyn Iterator
Then you would neet to use .iter() before flatten
In this case it wouldn't save anything in terms of bytes but in some cases it could
 
@mousetail uhh i shouldnt have asked i guess i dont know anything about iterators and stuff HAHA
@Neil yay! that makes sense to my small brain :-)
 
6:21 PM
I still don't know why <%> (and others) work too. There is no file on TIO called %, but there is one called ., so it makes sense that that works now
You can also do <&> or all sorts of combinations.
Or even <@!>, it doesn't have to only be one long
I saw in some docs that if glob receives an argument with no * or some other symbols, it simply returns it (but not an empty string). You can see if you do <%*>, it will always return empty.
 
 
1 hour later…
7:43 PM
@Steffan that's a good point... when there aren't any glob characters, the glob is just a no-op, you always get the original string back
this is slightly different to bash behaviour where echo %* just echos %* if there aren't any files that start with %
while in csh echo %* errors out
 
yes, it's supposed to just return the original string, but instead, it cycles between it and an empty string. it's weird behavior.
<%*> is always empty though in Perl.
 
8:02 PM
@Steffan NO IT'S NOT WEIRD
THE GLOB ALWAYS ENDS WITH AN EMPTY STRING
WHAT ELSE WOULD IT END WITH
 
IT STARTS OVER AGAIN
<.> SHOULD ALWAYS RETURN "." AND NOTHING ELSE
 
8:53 PM
@Steffan but then while (<.>) would be an infinite loop
 
Yeah, I guess sthat's a point. But why not just make <.> and <%> always return nothing?
 
9:38 PM
@Neil why are yall yelling
 
WHY ARENT YOU YELLING
 
10:22 PM
@Steffan apparently it's to support the {} syntax e.g. <{foo,bar,baz}> cycles between foo, bar, baz and undef
without actually checking whether any of them exist
 
11:10 PM
Security tip: To prevent piracy of software you write, do it in Rust. The built in ownership checking will ensure only one person can own a copy at once.
 
11:30 PM
@RadvylfPrograms Security tip: To prevent piracy, write your software in Jelly. There's only like 10 people on the planet who can read it, so it's easy to figure out who pirated it
 
Security tip: Write software in Malbolge. There's exactly 0 people who can read it.
 
*Kamila has entered the chat*
 
Kamila understands it but I doubt she could figure out what a piece of code does
 
It wouldn't surprise me if you could give her a piece of Malbolge code, and she could tell you what it does
 
@RadvylfPrograms or you could just pirate it yourself before anyone else does. That way, no one else will pirate it because the work has already been done for them.
If you can't beat them, join them
 

« first day (4228 days earlier)      last day (632 days later) »