12:00 AM
Welcome to the fourth Biweekly Mini Golf! During this event, we'll post some CMCs (Chat Mini Challenges) for you all to solve. The first one will be posted at the start, and additional ones will be added every 5 to 10 minutes. Good luck!
user isn't here rn, so I'll start with my earlier starred ones, and then user can post theirs if they arrive later
in BMG Drafts, 3 hours ago, by caird coinheringaahing
Draft: Given `n`, output all reduced proper fractions with `n` as the denominator (e.g. `3 -> 1/3, 2/3`, `8 -> 1/8, 3/8, 5/8, 7/8`)
in BMG Drafts, 3 hours ago, by caird coinheringaahing
Draft: Output two integers (between 1 and 100) chosen at random from 2 different distributions (e.g. one is uniform, another is exponential)
in BMG Drafts, 3 hours ago, by caird coinheringaahing
Draft: Given `n`, `m` and a flat array (of length `n × m`) of positive integers, output an `n×m` matrix of the elements
To get started :P

@cairdcoinheringaahing APL: `⍴` Try it online!

@cairdcoinheringaahing can I just return the numerators?

@hyper-neutrino No, but any pair representation is fine

`RgỊ¥Ƈ,€` then, but I'm not convinced this is optimal

@cairdcoinheringaahing Should every possible integer appear with nonzero probability?

12:04 AM
@Bubbler Yes
@hyper-neutrino I have 5 bytes
@hyper-neutrino -1 byte

@cairdcoinheringaahing APL: `?,?⌊?`

@Adám Should be `(?,?⌊?)100` I think

@Bubbler Ah yes, 100 isn't a parameter.

which can be golfed to `⌊\?2⍴100`

Indeed, I was just about to say.

12:07 AM
except that it makes the two variables dependent (not sure if it's allowed)

I wonder if `⌊\2?100` is acceptable.
Hm, no, then the second one can never be 100

The second number cannot be 100 in that case, so invalid

@Bubbler That's fine, so long as the distributions are provably distinct

That's for sure.

@Bubbler Do you want to post your first starred one?

12:10 AM
in BMG Drafts, 33 mins ago, by Bubbler
Draft: Recursive Z-matrix (divide the matrix into four quadrants and visit the quadrants in Z-shaped order, and do the same for inner matrices) of size 2^n for a nonnegative integer n. Output can be 0- or 1-based. (0-based examples: n=0: `[[0]]`, n=1: `[[0,1], [2,3]]`, n=2: `[[0,1,4,5], [2,3,6,7], [8,9,12,13], [10,11,14,15]]`)

does your 5b involve a shorter generation of the nuimerators or shorter pairing?

@hyper-neutrino I have a 3 byte way of getting the numerators

Hey Redwolf :P

On mobile, so I can’t golf much

12:13 AM
@cairdcoinheringaahing APL: `⊢,¨∘⍸1=⊢∨⍳` Try it online!

@RedwolfPrograms I've done bmgs from mobile. Get good.

@Bubbler Yikes.

@Bubbler This might be worth posting on main

Yeah, I figured

Yeah, def. not "mini"
VTC as off-topic. ;-)

12:15 AM
Okay, next one
in BMG Drafts, 35 mins ago, by Bubbler
Draft: Count bingos on a boolean 5x5 board where marked cells are true(1) and the others are false(0).

@Bubbler So count the 1s?
APL: `≢⍸`

@lyxal Do you want to post yours as well, give us 2 to try?

Count all-one rows, columns, or diagonals

in BMG Drafts, 53 mins ago, by lyxal
Draft: Given a solveable numbers game layout, output a solution that gets the target number. There may be more than one possible solution. `75, 2, 5, 6, 1, 4 — TARGET: 273` -> `(75 − 6) × 4 = 276; 276 − 2 − 1 = 273`

Oh. Me no speak bingo.

12:16 AM
@Bubbler Jelly, 10 bytes

@cairdcoinheringaahing How do you count the diagonals?

@lyxal Are we only allowed to use the 4-button operators (+,-,*,/)?
@Bubbler Trace (`Æṭ`)

@cairdcoinheringaahing Correct
No decimals or negative numbers either

@cairdcoinheringaahing Oh, so it's the trace in linear algebra sense

`Æṭ` vectorises at depth 2 (IIRC) meaning it vectorises over lists of matrices, but still applies as it should to normal matrices, so I pair with the reverses (moves the anti-main to the main) and get the trace of each
@Bubbler Yep

12:19 AM
Note: you don't have to use all the numbers: `100, 25, 6, 5, 9, 10 (TARGET: 101)` -> `100 + 6 - 5` is valid

I’m on one of my parents’ iPhones and golfing on it is way too painful lol
I can’t find a backtick

@RedwolfPrograms pathetic
@RedwolfPrograms ```

@RedwolfPrograms No Hacker's Keyboard? :P

@RedwolfPrograms Hold down on the apostrophe :P

Darn, I missed the BMG :(

12:21 AM
We're in the middle of it :P

That's the third event I've missed today
Oh yay

Feel free to post a couple of your drafts

in BMG Drafts, 3 hours ago, by user
Draft: Alternate between printing two distinct numbers forever

@user Any numbers of our choice?

Pretty boring but ¯\_(ツ)_/¯
@Adám Yep

12:23 AM
@user `{⎕←-⍵}⍣≡1`

@lyxal ಠ_ಠ I want to brute force it, but the operators map it annoying :/

@user `→×⎕←?2` Try it online!

@user Scala, kinda a port of Bubbler's: `Stream.iterate(1)(-_)foreach println`

@user Jelly, 3 bytes

Ugh unreliable connection so I lost my answer to a CMC

12:24 AM
No, wait, I was printing a random one of them.

@Adám I'm not sure that counts as alternating, but it's a CMC, so ¯\_(ツ)_/¯

I feel like 2 bytes is possible, but I don't think it is. We need `Ṅ` (or `Ȯ`) to output, one byte to loop and one byte to modify it

I’ll be back at my hotel in an hour or so, I’ll wait until then to attempt this :p

@Bubbler Alternative of same length: `-⍣{≡⎕←⍵}1`

@Adám Does that go to line 1? (`→×`)?

12:27 AM
Yes.

@user if generators weren't so bad, I'd have two bytes in Vyxal: Try it Online!

@lyxal What's the problem there?

@lyxal How does that work?
Bit of each natural number?

05AB1E might have two byter for that
but apparently no 05AB1E-ers are here :P

Ooh, fun APL solution:
```→⎕←2
→⎕←1```

12:29 AM
@cairdcoinheringaahing infinite list, % 2 == 0
Except the vectorising seems broken

I bags this PR

Husk should have 2 bytes

I thought it'd be 3
Oh wait, there's an infinite sequence

Assuming that format is allowed

It is, and even if it wasn't, it's a CMC, so anything goes :P

12:30 AM
Nice

@cairdcoinheringaahing All hail builtins: `İ¬`

MCMG: How long does the event last?

It doesn't appear to have a single byte mod-by-2 builtin :/
@Adám Until we run out of drafts/cmcs

As long as you want it to

@Adám It is planned for 90 mins, but we're running out of drafts pretty fast now

12:33 AM
@Adám We have all day to play countdown (the numbers game) :p

I should probably think of going to bed. 1:30 here…

in BMG Drafts, 47 mins ago, by Bubbler
Draft: Given an array of positive integers having length 3n+2, compute its "sum-and-skip" transform: `[1, 2, 3, 4, 5, 6, 7, 8] -> [1+2, 3, 4+5, 6, 7+8] = [3, 3, 9, 6, 15]`

Same :/

@user Husk, 3 bytes: `¡¬1`

@Adám does that mean you're in the UK?

12:34 AM
Ugh, 3n +2
@lyxal Yes. You didn't see the map?

@Adám nice. Have you ever watched Countdown on channel 4?

I don't watch TV.

Ah

@Bubbler Jelly, 7 bytes 8 bytes :P

@cairdcoinheringaahing I don't think so

12:39 AM
I feel like there's a shorter version tho

Ooh, nice use of mold

There's got to be a better way than this abomination: `¯1↓2↓,{2 ¯1+/⍤↑¨⊂⍵}⌺(⍪3 3)⊢0 0,⎕`

Oh, I got one.
@Bubbler `+/¨⊢⊂⍨≢⍴1 0 1⍨` Try it online!

in BMG Drafts, 3 hours ago, by caird coinheringaahing
Draft: Given a binary function and a single argument, return a function which takes a single argument and applies the binary function to both provided arguments
Didn't realise I had one left I hadn't posted :P

12:43 AM
I don't understand.

@cairdcoinheringaahing applies the binary function to the binary function?

Partial application of a provided binary function

If the function I return takes a single argument, how can it apply a binary function to two args?

Oh, that's `∘` in APL?

12:44 AM
@Adám Because it's already been provided with the first argument
e.g. if you're passed `f` and `3`, you return the partial function `f(3)`

I think it means `lambda f,x:lambda y:f(x,y)`

Right, so in APL, `+∘1` returns an increment function and `÷∘2` returns a halve function.

which means `∘` in APL and `&` in J
Haskell one should be `curry` I think

Doesn't Haskell curry by default, so `\$` (function application) should work no?

dzaima/APL: `∘` Try it online!

12:48 AM
If it's OK, then `\$` should be `(\$)`, and `id` is shorter

In Dyalog, it'd be awkward: `{⍺⍺∘⍵⍵}` (or `⎕∘⎕` which would technically do the job, but it would be very hard, though not impossible, to use it).

I think this works for Jelly
Unless the input has multiple chains ಠ_ಠ

@cairdcoinheringaahing That's pronounced like the Danish word for "Jew"

@cairdcoinheringaahing Works without chains, also for 6 bytes :P

0

The setting "Well I actually wrote the sql library they, the maintainers actually.." "Right, but do you have any experience working with django?" " ...no I don't use frameworks" After the phone interview is over, you feel like you really need a coffee. While the brew is heating, you check your me...

12:55 AM
> Your code-golf badge usually lets you single-handedly close code-golf questions as duplicates and reopen them. However, since you participated in editing this question's tags, this privilege doesn't apply this time.
Really?
Someone with a hammer please hammer that as a dupe of this

Done.
So... the event is over?

There is one last draft:
in BMG Drafts, 4 hours ago, by user
Draft: Rickroll someone. Standard loopholes allowed and encouraged :P

Lol :P

But beyond that, yeah, I think we can call it. Feel free y'all to keep trying the challenges if you want some more practice, don't let the fact this is "over" discourage you from replying. Thanks y'all for attending, hope it was fun!

12:59 AM
...why did I just click that without thinking?

Wait, really‽

That was a really good prank

"CMC: Rickroll people"
*someone posts a link, rickrolls me*
Me: *surprised pikachu face*
@Adám Yes, I'm ashamed of myself :/

Much Rick, very roll. Wow.
This was fun. ○/

1:03 AM
\o I should probably sleep as well

1:17 AM
0

Recursive Z-matrix code-golf array-manipulation matrix Originally from a CMC I proposed for the last BMG event Challenge Given a non-negative integer \\$n\\$, create a 2D array of size \\$2^n × 2^n\\$ which is generated in the following manner: Divide the matrix into four quadrants of size \\$2^{n-1}...

2:01 AM
I'm back
Missed the rest of BMG :/
I did manage to pet a cute cat though
Looks like BMG went well
I'll try a few CMCs in JS

Not very well though, it ran out of CMCs rather quickly without many solutions

2:16 AM
One letter variable names are surprisingly readable if you're consistent with what letters mean what

> consistent with what letters mean what
That's what golflangs do I guess :P

Time to make a golf lang where reusing a letter changes its meaning :P
actually...
It wouldn't be a great golf language, but it could be an interesting esolang, where reusing a command changes its meaning

It's easy: encode the source like Malbolge :P

Even worse would be changing the parsing rules after every usage :p

No, meaningfully change its meaning :P

2:28 AM
(And even more worse, make it change the parsing rules each time, even during loops :p :p)

I think I've just got some more ideas for Hatred :P

I was thinking of a name of such an esolang, and came up with Shapeshifter, but it's already taken :/

Isn't Shapeshifter what Changeling compiles to?

Yeah, something like that
Cursed idea: Brainfuck but `+` alternates between `+` and `>` and `-` does between `-` and `<`

Would that be TC?
Opinions on SO's new collectives?

2:42 AM
@RedwolfPrograms it's deterministically defined
sounds possible

@RedwolfPrograms i had a conversation about it in the codidact communities discord but i'll copy a summary of a few of my opinions about it
> giving corporations control over SO content probably goes against the whole "community moderation" idea and... I don't personally like it
> but yeah giving content control / moderation to anyone that hasn't established themselves within the community (even if the rep system isn't perfect / great, it mostly works) especially a huge corporation is... a concerning precedent

@RedwolfPrograms That was at +29 earlier today
Honestly, it looks like the only change is the ability for companies to say "See user X? They work for us, and so if they answer a question about our product Y, it should be marked as an 'official' answer"

and it feels like another prioritization of corporate profits over the community, and I understand the need to generate revenue, but also it was only privately discussed with a few community people under NDA and so it feels not great
it feels like they just used "here we asked some people" as a seal of "shut up and don't complain about community concensus or opinion"

The actual problem comes from the legal-ese side and the corporate approach, rather than what it actually does

definitely

2:53 AM
I kind of like the idea behind collectives, but not bringing important things like this up with the community first is concerning

honestly I oppose the principle of allowing corporations authority over content moderation

As soon as the reason for not discussing it first is "We had to protect corporate interests", you know some shady shit is going on

especially retroactively - everything under a crap ton of google tags is now to some extent controlled by Google, even things from the past

@hyper-neutrino It appears as though moderation will be largely unaffected, aside from a greater workload on the SO mods

Well, I like the idea of having spaces where questions about certain technologies can be grouped together and top answers can be listed, but not the corporate-controlled part

2:56 AM
@cairdcoinheringaahing oh, really? I mean, I'm not too sure what the "participating organizations has authority over the content in the collective's tags" exactly entails

Having something like collectives, but where the community would vote on which tags are grouped together, would be cool.

i also don't know what sort of highlighting organizations can do - i hope they don't get to pin answers to the top
heh, the last few questions in the Go Language collective have all been bad

The Admins and Recognised Users and what not are just "labels" as far as I can tell. It's a bit like a verified tick on Instagram or Twitter in that it tells you "This user actually does know about this". Of course, SE isn't supposed to be user-focused, and reputation/tag badges already do that, but

out of the past like 50 newest there are only like 5 positively scored and another handful of 0-score questions

Something sort of like an Area 51 for collectives would be neat. Like I could propose a JS collective, and it'd show new questions, answers, and top answerers in the group of tags. Maybe even mark the top answerers in some way.
But having an external party control it is kinda concerning

2:58 AM
It's a way for them to make money

wait how did the recent challenge get closed by bubbler but not caird
oh, the op didn't tag it properly. right :/

@cairdcoinheringaahing True. I wish they could come up with ways that don't involve messing with the existing site :/