10:06 AM
CMC: minimize the ratio of your full program's length to its finite STDOUT output's

i'm aware :P

so is longer output for short program better?

You can get arbitrarily high answers since the length of the output can grow exponentially or faster compared to the programs length

so it's `len(output) / len(program)` with higher = better?

10:14 AM
yeah

yeah ok that is pretty easy to get arbitrary scores on

set an arbitrary restriction for yourself then :P

Jelly, diverges to infinity: factorial spam

Vyxal, 4 bytes, `(10^256) / 4`: `×₈↵*`

"Also, a busy beaver function can be shown to grow asymptotically faster than any computable function" This is actually kind of insane to think about.

10:17 AM
very easily extendable with more `↵`

wait no, I need a leading constant that is greater than 1

What would the big O of that even look like

BB(n) = O(BB(n))

it's half the fun :p

10:24 AM
half of zero being zero

CMC Given an oracle for the halting problem, compute BB(n). The oracle is a function that by magic can tell if a given program will halt

kidding but i'm actually curious now

CMC: Shortest program needed to overflow TIO/ATO's 128KB output buffer that would otherwise terminate.

considering we have golfing versions of practical languages (japt for javascript), what if we had a practical version of a golfing language

that's just vyxal 3 with less built-ins

10:27 AM
Isn't that what vyxal literate mode is?

vyxal

(i know APL exists and is obviously practical but i just wanna type code with my keyboard)
i guess i should've clarified

Oh no, I've accidentally joined the cult

everyone does eventually

jelly is very interesting to write

10:27 AM
@mousetail there is no turning back now :P

@mousetail besides, you sold yourself to us in like 2021
4th from the left in the first row

vyxal is just a stack-based language with variables and functions and stuff right?

well yes that is what it is

but jelly

no vyxal isn't jelly

10:28 AM
like writing pointfree code constantly

you don't need to use variables

...tacit is pointfree so that's a stupid thing to say

and stack languages are inherently tacit

(except when you use variables, of course)

ugh right

10:29 AM
@RubenVerg of course

...
fine
me want write jelly with my keyboard

jelly doesn't have a literate mode?
@totallyhuman apl has few enough glyphs to fit in a standard keyboard

@totallyhuman well why didn't you say so from the start?

right, that's what i was thinking of

now sure it isn't strictly base jelly
but it's like basically what you want if you want ascii jelly

10:32 AM
@lyxal huh that's cool

i wonder how many layers one would need to fit vyxal (/ insert any other sbcs lang here) on a standard keyboard

as many as 256 keys requires :p
well 128 because shift key

vyxal also has a lot of letterlike symbols so they have an easy place to put them in
brb making a vyxal 3 keyboard layout

@lyxal probably even lower because you can use dead keys(?)

i still want to write it more conventionally but i was not aware that was a thing

10:35 AM
so you don't want keywords but you do want 100% ascii?
would you settle for something tacit, and a mix of unicode and keywords but you never see the keywords?

you can use k :P

uiua is that
it's something tacit, and a mix of unicode and keywords but you never see the keywords

i ought to take a look at uiua
i've somehow heard of it outside ppcg
the only thing i noticed about it before now is the syntax highlighter giving the transpose "atom" a trans flag

it's basically APL (or probably more BQN) but stack

i now notice that there's a "both" function that has the bi flag
incredible

10:42 AM
hope you like strict array models though
because if you want to do basically anything with strings you're gonna need to be boxing and unboxing stuff

not so incredible

where APL, BQN, Jelly and probably other APL-likes allow you to have the array `'dog' 'cat' 'fish'`, Uiua requires boxes
now sure the way to do boxing/unboxing has gotten better over time, but it's still a consideration you have to make

@totallyhuman vyxal, 0 bytes, outputs 0, 0/1=0

higher is better

*other way round, 1/0

10:50 AM
ah

nah they technically have it right, lower code-to-output is better

i thought you said it's `len(output) / len(code)` where higher is better

> minimize the ratio of your full program's length to its finite STDOUT output's

one of us is missing something very basic and i hope it's not me
higher output-to-code is better, lower code-to-output is better

So smaller (prog length / stdout length) is better, and good luck beating 0

10:53 AM
...because that's how ratios work

Maths go brrr

@totallyhuman I asked is the score len output divided by len code and you said yes :p

@emanresuA need to get negative prog length now to beat that

Nov 29, 2022 at 6:57, by caird coinheringaahing
Nah, everytime I run it, one of y'all owes me 2.63 bytes

@totallyhuman if it's lowest score of len code divided by len output then that's trivially easy
Just don't have a program :p

10:56 AM
i mean if i were to, for some incredibly stupid reason, post this as an actual challenge, i'd just forbid 0-byte code and output
but since it's just a cmc, a username wins i guess :P

Could't you just do `print(1)#####################################################################` in that case?

Tie break by program length

lower code-to-output

@totallyhuman in this case, I can still think of a tends towards 0 answer

i mean neil did improve the cmc a bit but it got drowned out
38 mins ago, by Neil
CMC: Shortest program needed to overflow TIO/ATO's 128KB output buffer that would otherwise terminate.

11:05 AM
yeah the vyxal keyboard layout turned out to be quite awful, couldn't fit any mnemonic for the non-letterlike symbols, giving up on the project

lol

(but the answer is four, it takes four layers to fit vyxal on a keyboard)

@RubenVerg this is why sugar trigraphs exist so that everything can fit on a single layer :p

3 hours later…
2:03 PM
0

Background This challenge is based on a personal project I did, UnitDC. This challenge is a super-miniaturized version of UnitDC. Challenge Please write a simple unit-aware calculator that evaluates a sequence of positive integers, units and operators in RPN (postfix) notation, while checking whe...

1 hour later…
3:10 PM
0

Define a set containing N elements Consider a simple language that allows making basic statements about sets. It is defines as follows: = 0 1 Sets 0 and 1 are equal. Variables are referenced using De Bruijn Indexes < 0 1 Set 0 is an element of set 1 & a b Expression A and expression B ! a Not A ...

3 hours later…
6:07 PM
0

Pinball code-golf Background There is a one-dimensional grid of finite length. Each cell in the grid contains one of two symbol (I will use the symbols < and >, but you can you other symbols). When a pinball is placed on one of the cells, it moves according to the following rules: If the pinball...

6:51 PM
@totallyhuman I've toyed with the idea of making a praclang based on Pip called Peregrin. But instead, I settled for adding readable variable names to Pip itself.
@Neil Pip, 4 bytes: `EmXm`
Take 2**1000 and string-repeat it 1000 times

1 hour later…
8:02 PM
50

In this question at Code Review they tried to find the fastest way to return the unique element in an array where all the elements are the same except one. But what is the shortest code that accomplish the same thing? Goal Find the unique element in an array and return it. Rules The input array ...

given the "find the odd one out" post, is this too close to be called a dupe if i was to ask "actually find the odd one out" by having all answers be a coordinate pair or multi level index of the unique one
the posted question only has 1D positive integer arrays, rather than a list of strings or 2D array of characters

@pacman256 i think it might be too close, but maybe if the input was like a jagged list or smth it would be more interesting
like find the unique scalar within a jagged list

8:57 PM
i thought having to determine the index in a list of multi character strings would be more different tbh

9:46 PM
@Neil Vyxal 3 -R, 3 bytes. Take the power set of a million numbers.

surely the power set is a little excessive, just to overflow 128KB

I guess you could also do `k4(,` to print a million newlines but that's longer.

`k4ɾ` would work, right?
Then you also don't need the flag

I think `₆⁺` with flag `R` also works
or `₇Ṗ`

10:08 PM
misread q
@AlanBreadel git golfed no flags

that does have a flag though

0

A list \\$[a_1,a_2,a_3 \cdots a_n]\\$ can be uniquely represented as the set of its prefixes - \\$ \{\{a_1\},\{a_1, a_2\}, \{a_1,a_2,a_3\} \cdots \{a_1,a_2,a_3 \cdots a_n\}\} \\$. This can be in any order - for example, \\$[1, 2, 3]\\$ could be represented by any of \\$\{\{1\},\{1,2\},\{1,2,3\}\}\\$, \\$\...

@AlanBreadel why did you sneak in a flag when i wasnt looking

i didnt sneak in a flag

the link i used to the vyx interpreter was yours

10:19 PM
Vyxal, 2 bytes: `nṗ`
prints all subsets of the lowercase alphabet, ~15MB iirc

noooo
Vyxal 3, 3 bytes: `k4!`, actually no flags this time. one million factorial

(`nṖ`, permutations of lowercase alphabet, is a vyxal 2/3 polyglot)

Vyxal `HRs` (with the s flag repeated about a million times or so), 0 bytes

cheater

Had to do it to em
Haters will be mad

10:24 PM
@Seggan couldn't you do `₇!` for 256!?

@AlanBreadel too short

its only 8578177753428426541190822716812326251577815202794856198596556503772694525531475893774402913604514084503758853423365843061571968346936964753222892884974260256796373325633687864426752076267945601879688679715211433077020775266464514647091873261008328763257028189807736717814541702505
23018608495319068138257481070252817559459476987034665712738139286205234756808218860701203611083152093501947437109101726968262861606263662435022840944191408424615936000000000000000000000000000000000000000000000000000000000000000

ah yes, ONLY like 400 digits long :P

Still a lot less than 128kb

10:28 PM
CMC: factorial root: given `x`, output `n` such that `n! = x`. brownie points if it works with non-perfect factorials

99% certain that's a challenge on main :P
and i don't have to tell you what the answer is in brachylog

why bother searching
@UnrelatedString `n!=x`? :P

@emanresuA more precisely, 12502035294924774703104000002 bytes or 12.5 ronnabytes. Still finite though

also by working with non-perfect factorials do you mean like
using the gamma function

yeah

10:31 PM
Also this one which requires using inverse gamma

I doubt there's anything better

Ah, nice

For some reason, that approach doesn't work in v3
Requires a swap before the find
Probably forgot to implement type switching for find

10:38 PM
Oh yeah v3 has that

No, it doesn't. I forgot to implement it for find like I did in v2 :p
Type switching just means that it can treat int, list as list, int
Which v2 has been doing for ages :p

Did we ever get around to implementing more complex type-switching (list<list<int>>, list<int> for example)?

10:50 PM
Maybe for some th
ing
s

@lyxal I'm not mad, I'm just disappointed
@emanresuA Same approach in Pip is 3 bytes, `PMz`, which works in theory but in practice times out before outputting anything

@DLosc you're not just disappointed
You're DLosc

Correct

11:07 PM
Thank you
I studied real hard for that test so it's good that I passed

1/1
100%
A+

:D