« first day (2023 days earlier)      last day (1130 days later) » 

12:00 AM
hey
the dude who started ppcg is back
 
@EᴀsᴛᴇʀʟʏIʀᴋ o_O
 
@JonathanAllan yes
 
@ConorO'Brien (AKA Platypus?) Thanks
 
wait why am I a platypus
2
 
oh, thought that was the image of the platypus image question
 
12:04 AM
@JonathanAllan dragon =\= platypus?
 
lol the founder of ppcg is only at 3.3 k rep?
 
He started the A51 proposal
but he didn't "found" it I wouldn't say
 
@ConorO'Brien OK you are not who I thought you must be (Easterly Irk)...
13
A: Sandbox for Proposed Challenges

Easterly IrkI can't believe it's not a Platypus!!! This is an image of our wonderful pet platypus @Cyoce. This is also an image of the same person, or is it? (hint: it isn't) Your task is to determine whether a inputted image is @Cyoce in disguise... The input may be taken in any form. It will also...

see the image
 
@JonathanAllan xD
yeah
 
12:09 AM
:)
 
that would be @Cyoce
 
Ah true
 
12:24 AM
CMC polyglot: do the collatz sequence. score is bytes / ((# of langs - 1) ^ 3)
 
@ConorO'Brien yes a platypus I am
 
\o/ I haven't seen you in a while!
 
The power of the @
 
Getting back into things as summer comes to a close
And the notification helped :P
\o/
 
12:29 AM
welcome back :D
 
¯\(ツ)/¯
 
1:03 AM
okay
 
@DJMcMayhem s/snek/danger noodle/
 
I'm trying to learn as many languages as possible to see what works best
 
@Zwei you should try reticular
it's object oriented and slightly functional
 
I don't like OO too much
 
(1) then you might not like cheddar (2) what do you like? (3) you can do stuff without objects in reticular
 
1:05 AM
1) I understand that 2) Haskell and Rust are probably my top 2 favorite at the moment and 3) I know
 
here, just let me show you a shunting yard algorithm
okay?
I'll take that as a yes
v
\ {"+":[01],"-":[01],"*":[02],"/":[02],"^":[13]} "prec" =
\ {"+":[+],"-":[-],"*":[*],"/":[%],"^":[J]} "func" =
\ ["prec"`~F~$~$]kKp ["prec"`~F$~$]kKa [dnNEQ]kKn [2@dHNE~$]kKh ["func"`~H~$]kKf [dT"String"E]kKs
v   <
\ 0b "queue" = 0b "stack" =
            v                  =q@"queue"&~ <j*44             <
                      >>:c=Knv
> "> "oiSBq > l0E!v_Kn|^+~c. _ .cn "queue"` ^
                      >d" "E?v$>"stack"`V?v$"stack"`~&"stack"=^
            ^              $$<            > :2= :1= .1Kp .2Kp   .1Ka [Y][y]2b~H~$  g  ?v$"stack"`.1&"stack"=
 
@Zwei :D if you like haskell you'll probably like cheddar too. cheddar is very functional
 
Okay
 
@ConorO'Brien cheddar doesn't even have classes tho
 
@Downgoat BTW, I'm going to make a function that'll describe multi-op behaviour within functionized ops
@Downgoat not yet
 
1:07 AM
@ConorO'Brien ok
 
Conor, the example you gave seems rather... esoteric. With all of my knowledge, I can't really begin to form any intutions as to how it does what it does
 
@Zwei well, yes, it's an esoteric language
:3
 
1:23 AM
2nd gold badge on arqade! \o/
Ironical the only site I have multiple gold badges on is one I'm least active on.
 
damnit
3
Q: Continued Fraction of a Rational Number

mbomb007The continued fraction of a number n is a fraction of the following form: which converges to n. The sequence a in a continued fraction is typically written as: [a0; a1, a2, a3, ..., an]. Your goal is to return the continued fraction of the given rational number (positive or negative), whether ...

I wanted to ask this :(
 
do any of you use an email client?
 
@NathanMerrill kind of, sometimes
 
75 messages moved to Cheddar
 
I'm considering getting one, as I have several email addresses I keep open and watch
 
1:26 AM
If I messed any up, feel free to move them back @Downgoat
 
the only two I know of are outlook and thunderbird
 
@NathanMerrill yes, mutt
 
@NathanMerrill yes
 
@Doorknob windows here :/
@Downgoat @ASCII-only do you have one to recommend?
 
@NathanMerrill The one I sometimes use is Thunderbird
but it's Mozilla so you might not like it
 
1:29 AM
what's wrong with Mozilla? They made Rust, after all
 
I use mutt, objectively the best
 
Rust, and firefox
 
claws mail is good too
very lightweight
 
@NathanMerrill yeah but a lot of people don't like FireFox
 
true. I'm not a fan of the browser
I don't know if I could do a console email client @mutt
 
1:32 AM
@NathanMerrill apple mail. its great and does all things
 
gross
 
Mutt is very easy to use.
 
I don't doubt it, but you aren't going to get images/html/links
 
I have it set up with w3m to dump html emails into the console, and yes, links work fine
I also have mailcap set up to view HTML emails in browser if I want to
 
oO I've never seen a text based browser
 
1:35 AM
Yeah mutt handles links and attachments just fine. Who cares about HTML
htnl messages are usually spam anyways
 
@NathanMerrill A browser as in a real browser
But I can think of 3 popular text-based browsers off the top of my head
 
@NathanMerrill never used lynx in a pinch? huh
 
once again, I'm on windows
that said, when I'm on a linux box, I pretty much use chromium
 
well, sure I could also use linux subsystem to run any of this stuff
but I have chrome, which suits me just fine
 
1:39 AM
Mutt probably works under Windows
 
anyways, back to email clients, I guess its really just Thunderbird and outlook
and mutt
 
dunno
 
On a very unrelated note, this looks absolutely amazing. Just look at those thumb keys and palm (!) keys.
It's pretty expensive though.
 
@Doorknob that's gorgeous. You got $330 lying around, burning a whole in your pocket? :P
fwx
 
1:45 AM
@DJMcMayhem any more democracy polls?
 
Prolly not for a while
Sorry
 
@JonathanAllan that's me
never got around to finishing that
 
one day I'm sure...
 
@Doorknob though its not on fire. Since your website is keyboardfire I'll be disapointed if your keyboard is not fire
 
has anyone seen this: 19thbyte.com ?
 
1:52 AM
yeah
 
@ConorO'Brien holy shit. What?
 
@ConorO'Brien 0/10 doesn't redirect to https
 
Jun 14 at 3:52, by Quill
PSA: 19thbyte.com works now :)
 
domains are nearly as cheap as my time
 
So you just buy random ppcg-related domains for fun?
 
@Quill what about a TIO domain
 
Aug 5 at 21:24, by Eᴀsᴛᴇʀʟʏ Iʀᴋ
@Quill make tio.ppcg.lol redirect to TIO? (cc @Dennis)
@Doorknob dang
that looks epic
 
@DJMcMayhem s/ppcg-related// and yeah
 
I'd prefer something shorter
 
2:02 AM
@Quill golfier: fpdW
 
@DJMcMayhem Remember, sed is not vim
 
But vim is shorter!
 
vim is pretty
 
^^
 
2:16 AM
I immensely enjoy turning typos into editor-golf CMCs.
 
@ASCII-only fi2dWi<
 
what does i< do? (sorry i don't vim)
 
insert mode, then <
 
@Downgoat that's pretty obvious, a stream editor can't compete with a text editor
 
@Downgoat fic2w<
 
2:19 AM
@Downgoat CMC: do what you just did, but you have to flip "vim" and "sed" and do > instead of <
^^
 
@Doorknob TIL 2cw removed is not instead of just is<space>
 
I think you could do $bDdTdbhpa> but surely that can be shorter.
 
@DJMcMayhem Even WCvim>sed is shorter :P
 
Haha, yeah that's kinda sad
 
(which is honestly what I'd do if I were actually in this situation)
 
2:22 AM
Or 2WDbivim>
That's tied
 
@Downgoat wait wat
@Downgoat that's valid?!
 
Why wouldn't it be?
 
i made some progress on infographic
 
idk, does that change motion to nothing?
@DJMcMayhem what does it mean/how would that be parsed
 
2:28 AM
@ASCII-only 2cw is c2w
 
^
Also, 3d2w == d6w
 
what does it do exactly? is it translated to c2w or does it do cw twice?
 
@ASCII-only it does cw twice
 
@Downgoat ok then how is that surprising
 
i thougt w just does \w+ but apparently it does ` +\w+`
 
2:30 AM
Not quite. :help iskw
\w is always the same, but w can vary.
@Downgoat I don't think that's true. If you do cw<esc>cw it's very different.
 
Partially because cw is special-cased to behave like ce
 
Ohhhh, is that intentional? I was noticing that and it bugged me.
I might change that for V since otherwise cw is redundant.
 
2:48 AM
@Quill halp how detect EOF with fs.read
 
no idea
 
:|
 
3:16 AM
@downgoat carefully
 
@ConorO'Brien ಠ_ಠ
btw it's Downgoat not downgoat
 
3:32 AM
he's on mobile
 
1
A: Automatic box expander

DJMcMayhemV, 6 bytes lyêpjÄ Try it online! Explanation: l "move one character to the right yê "yank this colum p "paste what we just yanked j "move down to line 2 Ä "and duplicate this line

 
Answer the question dj
 
I did
 
@NathanMerrill a lot of work goes into your challenge man...
 
Sorry
I'm blind apparently
 
3:43 AM
I love it when challenges like that come along and I get to show off what V is best at.
 
Hey dj is there a v room
 
Yeah, there is

 Vim-golf

Discussion about golfing in Vim/V. vim.org/download.php github...
It's a pretty quiet room. It got frozen before
 
@DJMcMayhem Why are your answers always 1 byte longer than they should be?
 
Cause V is very buggy and I don't work on it as often as I should.
 
@Mego Yes, you're right
@Mego And what about the other examples where you have two numbers?
And what does pop "a",[b]: push "a"%[b] mean, since that doesn't appear to work in TIO. P and p don't work in TIO either
 
3:58 AM
@Sherlock9 I believe it is string formatting
 
Ah
 
@Sherlock9 P works
 
Good lord, I've finally figured it out
I'm trying to write the Seriously docs
 
@Sherlock9 p works
 
And I ended up using the Actually code
 
4:00 AM
@Sherlock9 No?
@Sherlock9 Did you use two digit numbers?
 
Leaky stop the pinging
 
Ok sorry
 
Yeah, that makes more sense now
 
@NathanMerrill actually, this will be too much work
there's way too many possibilities and corner cases
if anyone wants to continue, here's my partially golfed C program: gist.github.com/orlp/d90c9ffef4e093555ee36cf43c00ca89
 
@orlp Can 0-indexed?
 
4:02 AM
@LeakyNun what?
 
@orlp Your new challenge
 
@orlp sorry!
 
@LeakyNun oh, no
please conform
 
I know I made it tough
 
@orlp alright
 
4:03 AM
@NathanMerrill do you have a program that works yourself?
 
not that I've written, no
 
if at some point you want to make it easier, give the source position for every move :)
@NathanMerrill basically, you can make the situation arbitrarily complicated to theoretically have an unambiguous move
en-passant, pinned pieces, not allowing to check yourself, fifty move rule, etc
in fact, for some you even need to look in the future
you can disambiguate moves on this turn by realizing that on a later turn you castle, therefore your castling path could not have been exposed this turn, therefore you can eliminate potential ambiguous pieces
 
woah, never though about that
 
etc etc
 
I can clear that up in the challenge
aka, if there is any possible piece of the type that could move to that position, then it will be unambiguified
 
4:12 AM
what do you mean by that
 
regardless of the legality of moves
 
you need to rephrase that or be more specific, because as I interpret your message right now every move will be unambiguified
 
aka, if two pieces could have moved to the same spot, but one would put you in check, I'll still give additional information that makes it unambiguous
 
but there are many such examples
I don't know if we're even good enough at chess to list all of them
@NathanMerrill omg I just had the most evil idea
 
right, but if there are two pieces (of the same type) that both have a moveset that could potentially put them in the same spot, I'll always make it unambiguous
 
4:16 AM
@NathanMerrill challenge: write a context-free grammar that accepts any and only unambiguous games in PGN
@NathanMerrill what about a moveset where line of sight is obscured?
 
wouldn't that just end up being an enumeration of all possible moves?
@orlp hmmm....let me think about that
 
@NathanMerrill possibly
with the fifty rule
the maximum number of moves is <9000 or smt
so the CFG exists for sure
since the number of unambiguous PGN games must be finite
 
well, sure, you've got a finite number of pieces on a finite board
@orlp I think that line of sight still must be taken into account
anyways, I'll update my challenge tomorrow. I'm heading to bed
if you happen to work on it, have fun, don't kill yourself over it :)
 
 
1 hour later…
5:28 AM
chat is dead
 
chat is ded huh?
 
I have a feeling that zyabin is a chat necromancer who summons chats via the phrase "chat is dead".
 
@Downgoat please nope
I never say that ;_;
 
I kinda want upvotes to my "showcase your language" post on Coffeescript (self-promo!).
Just to see what I can get up to.
 
5:59 AM
CMC: produce this exact string "1267650600228229401496703205376"
Hint: it is 2^100
 
what is meant by produce?
 
output/print
 
kk
print(2**100)
Do I win?
 
@DestructibleWatermelon No.
 
alternate:
lambda:2**100
 
6:10 AM
@DestructibleWatermelon 4**50
 
exit(4**50)
I believe this is shortest method in python 3
 
Another Python method: int("1"+"0"*100,2)
Not very short, but I thought it was an interesting idea
 
@Sherlock9 use 4**50
 
That isn't really the point of my answer. I'm adding another method, not trying to be short
 
int("1"+"0"*50,4)
 
6:13 AM
Ohh
My apologies
 
I'm just golfing your method
 
I was just about to type that
 
Thanks
 
int("1"+"0"*25,8) also
 
@DestructibleWatermelon nope
 
6:19 AM
aw... I did it wrong?
 
2^100 = 4^50 = 16^25
 
oh
dam
why is my brain ail to dai
 
come on, pick a more interesting language
 
I don't know any ;_;
;_; why
 
@LeakyNun boring cheddar answer: ->"1267650600228229401496703205376" interesting cheddar answer: Encoding.base64.encode("×n»ë:ÓM¶óm½ãMx÷®ôßm9ß¾")
 
6:22 AM
why not proper cheddar answer, or does cheddar not have maths?
 
cheddar? :D
@DestructibleWatermelon cheddar does not support huge numbers
it will soon tho
 
I kind of want to make my own language but I can't ;_; I'm doomed to boring python answers that get outgolfed by dennis everytime...
 
@Downgoat not interesting.
 
:/
-1
 
you can't minus one a chat post, unless you star it first
also, get minus one'd
MUHAHAHAHAHAHAHAH
 
6:26 AM
@Downgoat If you want to be interesting, do (2^50)^2 by convolution
 
@DestructibleWatermelon ;_; y u do dis destructible watrmeln. i now liek indescrubtable watrmelns betr
 
convert 2^50 to digit array and then make a multiplication table
and then add up the diagonals to form a new array
then carry
then convert to string
 
@Downgoat This is destructibilitist
 
CMC: Given a CMC output a CMC which solves this CMC by solving the CMC by outputting a CMC to solve the CMC
 
CMC: Solve the halting problem
 
6:29 AM
Runtime Error: String has no property map
 
now downgoats CMC is impossible MUHAHAHAHAHAH
 
@Downgoat please
 
2 mins ago, by Downgoat
@DestructibleWatermelon ;_; y u do dis destructible watrmeln. i now liek indescrubtable watrmelns betr
@LeakyNun use String.bytes or String.chars then map
or use for in. even multiline lambdas have implicit out
 
Do you have diagonals?
cheddar> ("%d"%2**50).bytes.map(n->n-48)
[1, 1, 2, 5, 8, 9, 9, 9, 0, 6, 8, 4, 2, 6, 2, 4]
First step done
 
oh "%d"% that is genius
 
6:31 AM
cheddar> (a->a.map(i->a.map(j->i*j)))(("%d"%2**50).bytes.map(n->n-48))
[[1, 1, 2, 5, 8, 9, 9, 9, 0, 6, 8, 4, 2, 6, 2, 4], [1, 1, 2, 5, 8, 9, 9, 9, 0, 6
, 8, 4, 2, 6, 2, 4], [2, 2, 4, 10, 16, 18, 18, 18, 0, 12, 16, 8, 4, 12, 4, 8], [
5, 5, 10, 25, 40, 45, 45, 45, 0, 30, 40, 20, 10, 30, 10, 20], [8, 8, 16, 40, 64,
 72, 72, 72, 0, 48, 64, 32, 16, 48, 16, 32], [9, 9, 18, 45, 72, 81, 81, 81, 0, 5
4, 72, 36, 18, 54, 18, 36], [9, 9, 18, 45, 72, 81, 81, 81, 0, 54, 72, 36, 18, 54
, 18, 36], [9, 9, 18, 45, 72, 81, 81, 81, 0, 54, 72, 36, 18, 54, 18, 36], [0, 0,
Second step done (convolution)
Now I need diagonals
@Downgoat old trick
 
@LeakyNun j->i*j -> (*)&i
 
@Downgoat Do you have diagonals?
 
no
 
alright
 
idk if i should add diagonals built-in
maybe as part of matrixes feature
though i already did add hashmaps
i shuold start writing cheddar stdlib docs....
 
6:37 AM
cheddar> ((f->a->f(a)+f(a.turn(2)).rev.slice(1))(a->(|>a.len).map(n->(|>(n+1)).m
ap(i->a[i][n-i]))))([[1,2,3],[4,5,6],[7,8,9]])
[[1], [2, 4], [3, 5, 7], [8, 6], [9]]
@Downgoat diagonal done
 
\o/
 
cheddar> (f->a->f(a)+f(a.turn(2)).rev.slice(1))(a->(|>a.len).map(n->(|>(n+1)).ma
p(i->a[i][n-i]).sum))((a->a.map(i->a.map(j->i*j)))(("%d"%2**50).bytes.map(n->n-4
8)))
[1, 2, 5, 14, 30, 54, 93, 152, 208, 282, 343, 354, 347, 370, 381, 372, 432, 384,
 324, 340, 328, 196, 192, 136, 132, 104, 76, 40, 52, 16, 16]
Convolution done, now carrying
carrying is the hardest part
@Downgoat floordiv?
cheddar> (a->{var c=0;a.rev.map(n->{n+=c;c=n/10|0;n%=10}).rev})((f->a->f(a)+f(a.turn(2)).rev.slice(1))(a->(|>a.len).map(n->(|>(n+1)).map(i->a[i][n-i]).sum))((a->a.map(i->a.map(j->i*j)))(("%d"%2**50).bytes.map(n->n-48))))
[1, 2, 6, 7, 6, 5, 0, 6, 0, 0, 2, 2, 8, 2, 2, 9, 4, 0, 1, 4, 9, 6, 7, 0, 3, 2, 0
, 5, 3, 7, 6]
cheddar> (a->{var c=0;a.rev.map(n->{n+=c;c=n/10|0;n="%d"%(n%10)}).rev.fuse})((f->a->f(a)+f(a.turn(2)).rev.slice(1))(a->(|>a.len).map(n->(|>(n+1)).map(i->a[i][n-i]).sum))((a->a.map(i->a.map(j->i*j)))(("%d"%2**50).bytes.map(n->n-48))))
"1267650600228229401496703205376"
it can still be golfed further
 
cheddar> ((a,c=0)->a.rev.map(n->{n+=c;c=n/10|0;n="%d"%(n%10)}).rev.fuse)((f->a->f(a)+f(a.turn(2)).rev.slice(1))(a->(|>a.len).map(n->(|>(n+1)).map(i->a[i][n-i]).sum))((a->a.map(i->a.map(j->i*j)))(("%d"%2**50).bytes.map(n->n-48))))
"1267650600228229401496703205376"
a bit more golfed
 
thanks
carry and format: ((a,c=0)->a.rev.map(n->{n+=c;c=n/10|0;n="%d"%(n%10)}).rev.fuse)
diagonals and sum: ((f->a->f(a)+f(a.turn(2)).rev.slice(1))(a->(|>a.len).map(n->(|>(n+1)).map(i->a[i][n-i]).sum))
convolution: ((a->a.map(i->a.map(j->i*j)))
generate 2^50: (("%d"%2**50).bytes.map(n->n-48))))
can be golfed by fusing step 2 with step 3
 
6:54 AM
77% coverage!!! that's an all time high
 
@Downgoat ?
 
@Dennis can you update cheddar on TIO? npm install -g cheddar-lang
this version brings ΛεγίωνΜάμμαλϠΨΠʹ's rationals
 
Done.
 
@Downgoat wait what
 
OH WAIT NO ITS BORKED D:
 
6:55 AM
How do I use rationals?
 
brb fixing
>_>
 
but how to use them
lmao, can't even use cheddar now
halp how uninstall v39
 
Rational.of(numerator, denominator)
@Dennis @LeakyNun can you all do npm install -g cheddar-lang@v1.0.0-beta.38 most recent version is borked
@LeakyNun XD
 
done
 
@Quill do you know if I symlink npmignore to gitignore if that'll work?
 
6:57 AM
@Downgoat Done.
 
this is most embaraasing bug >_>
 
lmao
"today is the day"*(2**100)
 

« first day (2023 days earlier)      last day (1130 days later) »