« first day (4178 days earlier)      last day (672 days later) » 

att
12:28 AM
the animation led me to expect to be able to click on the language list buttons/icons
 
I think that I canceled them. Maybe if you hard reload they won't be there anymore
 
@TKirishima APL's theme colour would be the green logo's green.
 
Ok!
 
And J's is a turquoise, see jsoftware.com
 
Thank's ! I'm going to fix that
 
12:47 AM
@TKirishima Looks cool! I speak more about it here, but I personally dislike golfing sites with a set list of a languages. In short, I feel like it hampers both golfing creativity, and the potential userbase of the site (more languages = more users). I'm not sure how you do the language selection/backend stuff, but if possible, I'd open it to a lot more languages
 
The plan is adding a language per week, so all TIO languages will be supported in about 13 years or so ;-)
 
so no newer langs?
 
How many newer languages are there? Enough to make it 14 years?
 
Also, a few aesthetic things:
when I scroll down on `/index.php`, I get a weird jump as the "Start golfing" banner disappears.
When scrolling down after revealing the languages, the logos go over the top banner, not under.
The Friends/Information/Activity tabs on the user page overlap with the top of the information pages they show.
It's very unintuitive how to actually get started with any challenges; the "Start golfing" button takes me to my user page, but I can't see any obvious way to actual, well, start golfing. Took me a bit of time to realise that I needed to hover over the cursor sy
 
newer langs as in newer vesions of vyxal, fig, flax, rsn, etc
ah i see what ure saying
nvm
 
12:53 AM
@Zionmyceliaadamancy The cursor symbol? The only way I found was via the "bullet list" icon.
 
@Zionmyceliaadamancy Also, for anyone who is thinking about making any kind of multi-language coding site, I strongly advise you read my reasoning here for freedom of language use. In short, it's what makes CGCC the best place on the internet for creating, improving and developing languages
 
@Zionmyceliaadamancy I think I totally understand your point of view. I will try to add language each month via votes. However, some languages have quite strange configurations (or at least I'm not familiar with them) and I try to have enough languages to be sure I know what I'm doing. I know some sites like TIO manage to have a lot of languages but they are not necessarily kept up to date like Python for example (which is at version 3.7.8).
I prefer to have few languages but they are updated. However; I understand your point.
 
@Adám Well, that's not great
@TKirishima FWIW, TIO is only out of date because Dennis (the sole maintainer) went offline over 2 years ago
For 6 years before that, languages were regularly added and updated
 
@Zionmyceliaadamancy Thank's ! I'll fix them as fast as I can!
 
@TKirishima Also, TIO is fully open source, including the code it uses to invoke each language. You can definitely take a look at that code to figure out how to run some of the more obscure TIO langs
 
12:57 AM
@Zionmyceliaadamancy I'll try to make it more intuitive
@Zionmyceliaadamancy Concerning the "The Friends/Information/Activity tabs on the user page overlap with the top of the information pages they show." can you show an image please ?
 
1:13 AM
@TKirishima I will in the morning, no longer at my computer
 
Ok! np! Thank's for the help!
 
1:52 AM
The year is 2042. Computer science education has become considerably more common, and most young adults are at least capable of writing simple Python scripts. Programming is a hobby comparable in size to video games, and like speedrunning did in 2020, code golf, against all odds, has suddenly become incredibly popular. As one of the first organized and extensively documented places in which code golfing took place, our site, which is now archived and defunct,
7
is now moderately famous, and those of us who return to the world of code golf are looked upon as gods. Although the code golf of the '40s looks much different from today's, and some of us reject it as, now mainstream, it has changed into something close to unrecognizable. But others see it as a chance to finally talk with a large community about their hobby, and stories of golf wars and debates in TNB are as war stories from experienced veterans.
New golfing languages, many not particularly good, appear every day, and the biggest site for golfing, Code Golf Contests, is a proving ground for ever evolving strategies both in the usage and the design of novel golflangs. As quantum computing has become more practical, rules are hashed out for its incorporation into CGC, and the qubit becomes the second recognized scoring method.
Events like language golf challenges, mini golfs, and KotHs receive widespread attention not only on text-based social media platforms like the outdated Reddit and its modern competitors, but also on video sharing platforms, regularly gaining millions of views. Parents worry the obsession with other people's scores is causing children to be self conscious of their own code, but this is dismissed by many as a moral panic.
Global code quality suffers, hard drive prices plummet, but by the late '40s, the excitement has died down, and the programming world moves onto the next trend, retro web development, and #savejavascript goes viral as Wasm is set to ultimately discontinue the aging relic.
 
Wow
 
Dang it where was this code golf fanfic when I needed it at several times in the last 2 years?
 
A cult has sprung up around the one known as "Lyxal", and unlike Radvylf, I don't have any creative writing skill.
 
@TKirishima Wow this looks really cool!
 
@NoHaxJustRadvylf Thank's a lot @NoHaxJustRadvylf :D
 
2:02 AM
The UI feels a bit unintuitive, but it looks good, and that's the hard part out of the way
 
I'll try to upgrade it !
But for the moment I don't know how !

I'm going to sleep!
Goodbye everyone!
 
'night! o/
 
2:16 AM
CMC: given a list of positive integers [a,b,c,...] return a+2b+3c+...; e.g. [3,1,4,1,5] -> 1*3+2*1+3*4+4*1+5*5 = 3+2+12+4+25 = 46
 
@LeakyNun Vyxal, 3 bytes: Try it online!
It would be 2 bytes in 05AB1E
ƶO
 
2:45 AM
@Steffan I have a 36-byter
 
Yeah I'm really bad at Python golfing
 
Js ‘s reduce should make this easy
Maybe a=>a.reduce((b,c,i)=>b+c*i)
I wonder how bad a recursive solution would be in Haskell
If you took the list reversed
 
3:30 AM
a=>a.reduce((b,c,i)=>b+c*-~i) probably
Lemme make a horrible Prolog one
And the same thing in Haskell, 43.
 
@Steffan mfer using prolog like what about us smooth brains who have to use nooblog?
 
you'll just have to do without the pro functionality *walks off*
 
Desmos, 27 bytes f(l)=total([1...l.length]l)
 
@Steffan can be 2 with a flag
 
I know
 
3:45 AM
Geogebra, 43 bytes (input as comma separated integers in the input box):
l={
InputBox(l
Sum(Zip(al[a],a,1...Length(l
 
my haskell one can be f s=sum$zipWith(*)s[1..length s] (32) without recursion
anyway I should probably be in bed
 
wait bruh what am i thinking, geogebra also has vectorized operations
l={
InputBox(l
Sum((1...Length(l))l
 
5:08 AM
@Steffan pro-erlog, 43 bytes
for some reason, prolog has scanl but not scanr??
 
5:27 AM
0
Q: Print all of this: Vrei sa pleci dar nu ma, nu ma iei

HelloWorldMake a program that prints the lyrics of [link] exactly 1234567890 times. You know the rules, and so do I: The text must appear exactly like in the pastebin (exactly) No external resources, all must be generated by code. No existing compression algorithms. (gzip, 05AB1E compressed strings (they ...

 
5:56 AM
Hehe dupe hammer goes brrr
 
lolol nice
 
0
Q: Do math without type changing (completely)

HelloWorldWrite a program that gets two whitespace-seperated floating point numbers from input, then prints their sum, difference, product, quotient (to at least 3 decimal places) and modulo WITH ONLY STRING OPERATIONS. Divison or modulo by zero will print e (for error) That means no input a; input b, prin...

 
damn another one
 
6:24 AM
whats the close vote for this one anyways
 
6:39 AM
@NoHaxJustRadvylf There are already a ton of sites specifically about KOTHs, probably the format most likely to have mainstream appeal.
 
7:30 AM
Me: signs up for weekGolf
Me: tries to sign in
Username doesn't exist
Me: tries to sign up again
Username already taken
Yes 👍😎
Also me: tries sign in with github
Site can't handle request
Finally got in with SE authentication
Also, Vyxal does have a logo for the language suggestion page
 
What is weekGolf?
 
@mousetail a website some dude advertised here
 
Seems like a site that fits me since I'm weak at golf
 
Cc @TKirishima to the above
 
Wonder if they'll be able to come up with a good challenge every week for the foreseeable future. Sounds tough.
 
7:44 AM
@Adám maybe they got some planned for the first few weeks, so it wouldnt immediately flop
but ye that sounds tough, i dont think i would even be able to think of of a good challenge idea every month lol
 
We are 25 employed people at Dyalog, and we have a hard time coming up with 15–20 challenges per year.
 
8:28 AM
@Bubbler Python, 34 bytes: f=lambda x:x>[]and sum(x)+f(x[1:])
 
@LeakyNun APL, 7 bytes: ⍳∘≢+.×⊢
 
@TKirishima On the profile page, "Disconnect" is presumably the literal translation of French déconnecter, but the correct English in this context would be log out or sign out
 
@LeakyNun APL, 6 bytes: +/+\⌽⎕
BQN 5 bytes: +´∾∘↓
 
0
Q: Convert from Greeklish to modern Greek

solid.pyGreeklish, 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 to show Greek characters. Nowadays, its...

 
9:25 AM
2 days ago, by mathcat
I'll post this tomorrow, but in the meanwhile, feedback is appreciated.
i guess today is finally tomorrow
 
9:45 AM
0
Q: Squash it ... again!

mathcatIf you place the positive integers together and read each set of two adjacent digits at the same time, you get: (A136414) 12, 23, 34, 45, 56, 67, 78, 89, 91, 10, 1, 11, ... However, if you squash that sequence again: 12, 22, 23, 33, 34, 44, 45, 55, 56, 66, 67, 77, 78, 88, 89, 99, 91, 11, 10, 1, ...

 
 
1 hour later…
11:00 AM
F, I got a nice solution for the squashed series problem but I read the question entirely wrong so it's useless
 
what's it?
 
My solution combined the first and last character of each number instead of all of them
It's so elegant though let f=|s:Box<dyn Iterator<Item=u32>>|Box::new(s.scan(0,|a,b|Some((*a*10+b%10,*a=b/10_u32.pow(b.log10())).0)).skip(1));
 
11:19 AM
@Bubbler yay you found my python solution
@pxeger oh wow you found one even smaller
 
@Adám Added
@pxeger Added
@lyxal Well that's kind of strange :/ I don't know why this is happening. I'll investigate
@AidenChow Yes
 
@TKirishima Except by making all three parts white, it becomes a lone X, instead of being overlaid ᵛᎩX for Vyxal.
 
@TKirishima The stripping of leading white space from errors is a bit annoying. Makes rust errors impossible to read
 
@Adám Yes. And some logos like Raku aren't in color too, because it is the point of putting them in white
 
I get it it, but at least with Raku, the logo is very clear. You kind of need three levels for Vyxal's logo. Not a big deal, for a temporary thing, though. FWIW, a lot of work went into making APL's logo such that it could work when made monochrome.
You could use three shades of white/lightgrey for Vyxal (your Scala icon has this), or use outlines.
 
11:34 AM
@mousetail I'll try to fix it
@Adám OK!
 
 
2 hours later…
1:20 PM
0
A: "Hello, World!"

Command MasterStack Cats, 94 + 3 = 97 bytes (^_^_[>_[_*:>^]<^[>+:^[_!:+_+:>-!^_!]<:_^_I_+>_]<:_I_+:>_I^+>_I_+*-!*>+![+]+_!_-^+_)*_:_-^_!_: Needs to be run with the -m switch, so +3 Try it online! I'm sure there're still a lot of bytes which can be golfed, but this is the best I could think of so far. Due to t...

 
2:14 PM
CMC: most amusing deadlock (busy loops are not allowed)
 
final a = Object();
final b = Object();

// Thread 1
synchronized(a) {
synchronized(b) {
}}
// Thread 2
synchronized(b) {
synchronized(a) {
}}
Java ^
 
congratulations on misspelling the word "synchronized" 4 different ways
(four, because you spelt them all with an s, but Java wants a z)
 
Isn't there just 1 type of non-trivial deadlock?
 
How do you define a type of deadlock?
 
@pxeger When you're in the grocery store standing next to the apples, waiting for the guy buying oranges to leave so you can get your mandarins, but the guy standing at the oranges is just standing there waiting for you to leave so he can buy his honeycrisps
 
2:19 PM
winner ^
 
Only one is A waits for a lock held by B while B is waiting for a lock held by A
 
@Seggan (obviously not original, I saw it in SMBC or somewhere else)
 
Most kinds of deadlock are a extension of this, perhaps with more intermediate steps
 
@mousetail I suppose ultimately yes, but what makes a deadlock amusing are the intermediate steps
 
ok fair enough
 
2:21 PM
Do you consider pause(2) to be a deadlock?
 
Would priority starvation be considered a deadlock? I guess that would count as a distinct type
 
maybe
but then what makes priority starvation different to exit?
 
A process would run but never gets a turn due to multiple higher priority processes taking turns
assuming a scheduler without starvation prevention
 
I guess the difference is that exit means the process's memory etc stop existing
whereas a deadlock means the process still exists, but never runs
 
that seems like a reasonable definition
 
2:28 PM
the difference between starvation and most other deadlocks though would be that starvation can happen due to a preemption but all others can only happen through system calls that never return
 
true
Unless the lock causing a deadlock is a spinlock
 
that would count as a busy loop though
 
True
 
0
Q: Unique rainbow programs

Wheat WizardGiven a list of positive integers as input you are to determine if there is a way to pair up the elements such that: All but one element is in a pair No element is in more than one pair Now two pairs have elements separated by the same distance in the original list For example if the input is: ...

 
@NewPosts @WheatWizard oops, stomped your edit
 
2:37 PM
Ah I was just coming to ask what the point of that edit was. I see.
 
the "An edit has been made to this post" thing came right as I clicked save
 
Happy timezone folks
 
3:24 PM
@LeakyNun Fig, theoretical (you can't actually run this yet) ~3.292 bytes S*]r
Sum the vectorised * multiplication of the input and the range [0,n) ] incremented
]r actually pops up quite a lot in my test programs, maybe i should stick that in a monograph somewhere
 
3.292 bytes??
what kind of encoding does Fig use?
 
ascii irrational
the actual score is 4log_256(96)
 
how many bits
 
~6.585
 
nonsensical
 
3:32 PM
that many per byte
 
i meant total :P
 
multiply that number by 4
 
26.34 bits?
 
yep
 
i draw the line at fractional bits
 
3:35 PM
it is theoretically possible to build a filesystem that does that
Jun 11 at 22:30, by Radvylf Programs
Yeah. It's actually a relatively recent rule change, prior to that you had to pad to full bytes in most cases.
 
can you not just go arbitrarily small
 
@thejonymyster Consider the old Soviet ternary computers, those would be irrational numbers of bits
 
fractional bytes i understand
 
@thejonymyster Sort of, but that's very cheaty and there's no phyical way to store it, so it'd be hard to justify
 
idk it just seems like there needs to be a smallness limit or else its not clear where the "cheaty/noncheaty" boundary really is
anything less than a bit feels cheaty to me since its arguing for an entirely different computer than even just a fractional byte
that software vs hardware gap isnt one that makes sense to cross but thats my onion
plus its confusing to my unevolved brain
 
3:40 PM
@thejonymyster Well, anything more granular than a bit isn't physically possible, so it falls under the "pretty cheaty and hard to justify"
 
so now yall saying Fig is bad?
or do you mean less than a bit per byte
 
im saying that the full code of your solution needs to have a nonnegative integer number of bits
 
I mean less than a bit per character, yeah
@thejonymyster No
That's a bad rule IMO
 
then i dont understand :P
@NoHaxJustRadvylf what did you mean by this then
 
Well, how would you score, in bits, a language that uses trits?
 
3:43 PM
i'm saying we shouldnt use trits
 
@thejonymyster As in, if every command in my language is half a bit
 
because that is a hardware leap
 
There is hardware that supports it though
 
right but is there not a way to take it even smaller?
 
And you could physically design hardware to support any log_256(n) bits per character
@thejonymyster No
 
3:44 PM
oh wait so half bits is the limit?
 
Beyond 1 bit per character, it loses meaning.
 
ok so i dont understand... if its 1 bit per character, and theres no way to get a fractional character count, how does that not equate to an integer number of bits
 
You can have more than 1 bit per character that's still irrational
 
if its 1 bit per character you only end up with 2 characters
 
Like approx. 1.58 bits per character for trits
But you can't have, e.g., 0.001 bits per character, or 1.01 bits per character, or 0.9999 bits per character, because there's no reasonable physical representation of that
 
3:47 PM
whats the dif between the 1.58 case and the 1.01 case?
 
(Well you technically could but nobody would accept it as not cheaty)
 
im starting to get it
 
@thejonymyster the former has a real-world precedent
 
@thejonymyster 1.58(with more stuff after the decimal) is log_2(3)
It's how many bits of information you store in a trit
 
so are we saying trits is the limit because its implemented?
 
3:48 PM
It's not actually 1.58 bits on any machine, but it equates to that much information
@thejonymyster No, you could have log_2(5), log_2(6), log_2(97), log_2(255), etc.
 
can that number keep going up then? the 255 one?
 
Yep, you could have log_2(256) (or 8 bits per character, what most languages use), or log_2(65536), or log_2(174673282748738), or any other integer
 
oh right im going the wrong way lol
 
It's basically a generalization of the idea that to represent 64 options, you need 6 bits (log_2(64))
 
right i just misremrmbered the argument order for logs sort of
i was all backways n shiz
 
3:50 PM
tl;dr bits are a measure of information, not necessarily a hardware thing
 
right ok
so log_2(3) is the most granular it can be because log_2(2) is 1 fgdjg
ok im appeased
danke all
 
Technically our rules don't disallow things like 0.001 bits per character, but it's like the flags and loopholes where it's mainly enforced via downvotes
 
4:45 PM
You can't technically get any less than 0.128 bytes per character though right?
 
@mousetail that would be less than 1 bit per character, which we already established isn't a thing
 
Yeah, below 1 bit per character individual characters become meaningless
(although, you could argue a language where every two characters represent a single bit is half a bit per character, though it's a bit different)
 
There's plenty of langues with very limited information density but I don't think they should get special treatment for it
 
Well no, most would continue to be 1 byte per character unless a different method of counting bytes is explicitly included, but that's not for "special treatment" reasons, just for convenience
 
If your language is so bad it required multiple bytes to represent a single bit you just build a more dense language that compiles to it
 
4:51 PM
Since languages are scored independently it doesn't really matter if you apply a constant scaling factor to a single language's byte count, since whenever people do want to unofficially compare languages, they can undo that scaling in their heads to make it fairer if they feel that's necessary
@mousetail That assumes that short code is the objective for more than a tiny and already incredibly well optimized subclass of languages
Just having a weird or deliberately wasteful method of counting bytes could be the goal in some cases
 
hmmm
 
Jun 27 at 17:17, by DLosc
I dunno... anytime a question about scoring comes up, I keep coming back to, "Are we comparing scores across different languages or not?" And the answer always seems to be "No, definitely not. But also yes."
 
Jun 27 at 17:17, by Radvylf Programs
We officially don't, but everyone does unofficially because half of us are golfing language designers
Our current rules work great. They allow basically every language to compete with itself and similar languages fairly and objectively. They also allow the subjective part, comparing across different languages, to stay subjective.
That's a feature, not a bug.
 
5:27 PM
I have to figure out how to add flags to hgl.
Jokes aside what I actually need for hgl is to get another human being to use it other than myself.
 
@WheatWizard you called?
 
You want to use hgl?
 
why not?
how esoteric is it?
 
5:42 PM
Uh It's not all that esoteric.
It's esoteric in some ways.
Hard to say exactly.
It's not a programming language on it's own it's a library for Haskell.
 
It appears quite well documented
I just have no idea where to start when using it
 
@WheatWizard oh boy, guess it's time to learn Haskell then :P
 
@pxeger The best way I think it to try to write a haskell answer completely in point free. Because most useful haskell functions have a hgl version.
Also if you put it into a prompt you should get a warning for each function used telling you its hgl name.
(results may vary)
If you do find a function that doesn't exist, either in long form or short form. You can open an issue, it's a very easy fix for me. (and sometimes the short version does exist it's just got a really weird name)
 
Is there a way to use it on online interpreter?
 
it's on ATO
 
5:49 PM
Oh nice
 
You are probably going to want the docs though.
 
> Please do not use this for actual code.
I don't think I'm going to bother following these docs :P
@WheatWizard I can't find a docs folder or wiki here, are the docs elsewhere?
 
You have to build them right now
 
Oh ok
Code doesn't look all that terrible to read
 
There should be instructions in the readme.
Yeah the code can also function as docs
I should write a basic intro somewhere
 
5:57 PM
@WheatWizard The caird coinheringaahing approach to documentation :p
(Probably works better with Haskell tho)
 
There is pretty extensive docstings is what I meant. The code itself is not great documentarion
Everything int the docs is somewhere in the source
The code itself is mostly like ghf = ghi < bk << tg
 
 
2 hours later…
7:39 PM
0
A: Sandbox for Proposed Challenges

JiříNext digit of rational number codegolf string Story: The π was recently computed with accuracy to 100 trillions digits, but it is useless to us. We can't do accurate enough math, because rational numbers are too boring and so we don't know that much digits of them! Challenge: Your task will be to...

 
Oh wow. look at the byte counts
 
7:59 PM
0
A: Sandbox for Proposed Challenges

pxegerEvery possible pairing code-golf combinatorics Given an positive even integer \$ n \$, output the set of "ways to pair up" the set \$ [1, n] \$. For example, with \$ n = 4 \$, we can pair up the set \$ \{1, 2, 3, 4\} \$ in these ways: \$ \{\{1, 2\}, \{3, 4\}\} \$ \$ \{\{1, 3\}, \{2, 4\}\} \$ \$ ...

 
8:19 PM
CMC: Given one lowercase letter (a-z) output the corresponding letter from z-a (a -> z, b -> y, ..., z -> a)
 
@LeakyNun Piet + ascii-piet, 30 bytes
Python 3, 24 bytes
 
 
2 hours later…
11:04 PM
@LeakyNun Retina (either version), 6 bytes:
 T`l`Ro
 

« first day (4178 days earlier)      last day (672 days later) »