« first day (4423 days earlier)      last day (421 days later) » 

12:58 AM
@Bubbler yoooooo nice!
yo wait theres a scratchpad too?
when u add that lol
ok bruh i just see osp join the room but not put any msg, weird
one last thing, can u have an export to png option for the explain thing
i cant seem to upload a svg into an answer
really annoying, im currently just screenshotting the explain thing
also an upgrade to the debugger would be great, but not really a must, just would be nice to have
like being able to go back one step or look at a history of all the steps since the start
and see stack history and stuff like that
oh and i have some ideas for the editor too lolol
like being able to delete a row/column in the middle of the grid instead of only on the sides
or like maybe i can highlight a certain section of the grid and move that entire section somewhere else? or like delete that section? (by delete i mean convert them all to black codels)
that would make editing so much easier lmao
but like the interpreter is already good enough as it is... im just throwing around some ideas :)
 
1:47 AM
@AidenChow this is much harder, as what you see is actually an svg and I'd need to recreate dashed lines and stuff on a canvas
 
@Bubbler oh :(, ill go on screenshotting then
 
yeah that's the best for now
 
@Bubbler the scratchpad is a nice touch, im always opening up the notepad to plan out my code beforehand lol
 
2:09 AM
@Bubbler You can just show the svg on the canvas
174
A: Drawing an SVG file on a HTML5 canvas

Simon SarrisEDIT: Dec 2019 The Path2D() constructor is supported by all major browsers now, "allowing path objects to be declared on 2D canvas surfaces". EDIT: Nov 2014 You can now use ctx.drawImage to draw HTMLImageElements that have a .svg source in some but not all browsers (75% coverage: Chrome, IE11, ...

 
:O
 
2:41 AM
$ node <<<'23.46/21.61'
stdin is not a tty
Thank you node very cool
 
I would expect that node js STDIN wouldn't be a telytypewriter :p
 
I guess I'll use py -iq instead
$ py -iq <<<'23.46/21.61'
>>> 1.085608514576585
>>>
I don't like the >>> but at least it actually performs the calculation
(Yes, I know node -p exists, but this is in a long pipeline and I don't want to have to use $(...).)
 
TIL about prototype pollution attacks. Javascript is fun like that...
 
Oh yeah that's certainly a thing
 
3:24 AM
@Bbrk24 Works fine for me, just needs a console.log
 
oh hey my account turned 5 years old today
a minute ago actually :p
 
3:43 AM
@lyxal nice!!
 
$ node <<<'1/2'
stdin is not a tty
$ node.exe <<<'1/2'
$ node.exe -p <<<'1/2'
0.5
...huh?
(node -p, without the .exe, doesn't work either)
node and node.exe are literally the same file!
 
@lyxal nice
 
41
Q: The Stack Exchange reputation system: What's working? What's not?

SpencerGHaving incentive systems to participate in online communities (like Stack Overflow) is not a new concept. Basically every Q&A site or forum has had some type of points or karma system, and they all work to varying degrees. But as we’ve seen, our system and community in its current state has a hig...

there's suggestions there to cut the question rep gain back to +5
that'd be a big oof
 
zoomlogo, u new guy? i dont recognize ur username
@lyxal riiiipp
 
@lyxal Would that be retroactive?
 
3:53 AM
i like the +10 rep from upvotes lol
 
@Bbrk24 some suggestions say yes
 
oof
 
bruuh nahhh all our rep would be cut in half if thats the case....
 
speak for yourself :P
 
@AidenChow I'd only lose 2.9k rep :p
 
3:56 AM
in any case can't this be set site by site
i imagine they wouldn't do it on cgcc
considering the average question takes considerably more effort than the average answer
 
@lyxal and that's a generous upper limit not accounting for repcap
 
i dont wanna lose my 10k privilege lmfao
i wanna see deleted stuff :P
@lyxal ok how is that even possible, where are u even getting ur rep from then
 
@AidenChow the 770 answers I've written lol
 
but like if it go from +10 to +5 all the upvotes on ur answers would be half the value
 
oh no this is question rep only
it used to be +5 for questions
but then it was bumped to +10 in like late 2019 I think
 
3:59 AM
oh
really it used to be +5 for questions??
 
I remember back then thinking "no wait let me ask a few more questions first before y'all bump it" :p
@AidenChow ye
 
damn i thought it was always like that
ok cool good to know that i wont be losing half my rep if this change is applied lol
 
you used to be able to ask more questions in a day without repcapping :p
 
@AidenChow well do you not recognise my pfp?
 
@zoomlogo oh i wasnt paying attention to pfp lmfao
how come u change ur username like that? whats it mean?
 
4:39 AM
@AidenChow yeah, was very annoying
also, the change was highly disliked on SO:
-516
Q: Upvotes on questions will now be worth the same as upvotes on answers

Cody GrayThose of you who suffer from banner blindness may not have noticed the announcement: Stack Overflow is changing the reputation scoring system to make the reputation earned from upvotes on questions equal to the reputation earned from upvotes on answers. Previously, upvotes on questions netted yo...

 
5:19 AM
0
Q: Language Word Checker

Huỳnh Trần KhanhDevelop a program to check if a given word is part of a language defined by the following rules: The language has a set of rules. The empty string is considered a valid word in the language. Two words from the language can be concatenated to create a new word in the language. If X is a word in t...

 
Since we made the bakery public, is there a non-public room to which ROs can move messages that should be hidden from the public?
 
You can raise a mod flag, and we can move stuff to the mod-only trashcan room
Or just delete them
In the generally specific sense, no, there isn't a way for the TNB ROs to move messages to a private room
 
5:35 AM
@cairdcoinheringaahing Can you nuke (no need to move) chat.stackexchange.com/transcript/message/63149363#63149363?
 
Thanks!
 
5:54 AM
@lyxal Probably the worst change here (for us) is upvotes requiring 125 rep
 
@Adám Nope
 
Thanks!
 
well that confirms it
 
 
2 hours later…
7:38 AM
@Adám a little late, but no, I can't
 
 
1 hour later…
8:53 AM
@lyxal Reputation is even more meaningless on this site than on SO. So meaningless in fact that any changes don't even really matter for us
 
@mousetail well i mean its not completely useless. i still want rep privileges :P
 
10K is really easy to get on this site though
 
@mousetail :\ it took me a while on this site to get 10k
 
I still don't have 10K, but it's a matter of time, not of effort
 
@mousetail ig thats true, but like u still gotta spend some effort, cant just wait for the upvotes to come
 
9:03 AM
Just gotta be the first poorly golfed python answer to every trivial question
 
 
2 hours later…
10:51 AM
 
11:13 AM
Strange. Searching for "youtube podcasts" on Google gives youtube.com/podcasts as the first result, but that page seems to be missing. Only me?
 
 
1 hour later…
12:23 PM
 
Maybe location restricted?
@Ginger Are you in the US, by any chance?
 
@Adám I'm everywhere and nowhere
 
@Adám timezone data suggests yes
 
Nov 18, 2022 at 13:29, by Ginger
Apr 10 at 11:12, by Ginger
Mar 7 at 12:39, by Ginger Industries
yesterday, by Ginger Industries
Feb 3 at 23:32, by lyxal
@GingerIndustries Dang bro don't doxx me like that
 
12:30 PM
although timezone data also suggests vpn usage :p
 
huh? yeah sure whatever
@lyxal /srs wdym "suggests vpn usage"?
 
well unless you've recently travelled from utc-5 to utc+0, there's no reason for your github reported time to jump from 7am to 12pm :p
 
my github reported what now
 
There's an extension called Refined Github
 
w a t
 
12:32 PM
it uses commit metadata to determine what time it is for users
a moment ago, it said your time was 7am
 
1. that's kinda creepy and 2. I probably know why that happened :b
 
which a quick map search shows would be in utc-5
but after you created a branch on vyxalbot, it jumped to 12pm
which is in utc+0
 
yeah I know why that is
 
1:05 PM
Speaking of timezones, daylight savings time starts soon
 
rip
it ends soon here :p
 
>:(
 
you actually like DST?
 
no, I do not
 
oh
good
 
1:08 PM
I'm angry that I have to deal with it
 
for a moment then you had me worried
 
 
1 hour later…
2:24 PM
What's the most painless way to install make on Windows? inb4 "use a VM", but that's honestly a viable suggestion in my case, since I already have an Ubuntu VM set up
 
WSL?
 
It's a lot easier to work with then a VM
 
Trying to get a bunch of Linux utilities individually working on Windows is a really unsustainable and weird approach when WSL just works
 
^
 
2:27 PM
make is a super simple tool, I failed to get it working on windows before but it seems to simple. It just runs some commands in bash or CMD yet it's pain
 
For context, I'm trying to improve the performance of something that struggles in git bash but not WSL, and the automated tests require make to run. (Manual testing of the component I was working on didn't.)
 
git bash is minGW based I think, might be a issue there
 
I was able to improve the performance by 5-30% depending on the run (usually around 10%) but I can't verify that I didn't accidentally break something else
@mousetail About that: I tried copy-pasting some of the commands directly into bash and it didn't work because the tests use ps -o and my version of ps doesn't recognize -o. So even if I install make I still can't use the automated test runner
 
So the issue isn't just make, but a POSTIX compatible shell behind it?
 
I've said here before that git bash is missing some strange things, even man
in terms of syntax and shell builtins it's complete, it's just missing random parts of coreutils
 
2:35 PM
Yea MinGW is intentionally minimal
Cygwin is more complete but slower
 
LDQ: Should I have a distinction between single and double quoted strings?
For context the lang has backslash escapes, for double quoted strings at least
 
No, unless you need them for a character type
 
Well whatever you do, don't do what Swift did, where (like C) strings and characters are different types, but (unlike C) it's impossible to differentiate them by the literal alone. "a" could be a string literal or a character literal and without type info it's impossible to know which. ('a' is a syntax error.)
 
Otherwise it's' confusing
Some kind of multiline string with reduced escaping is nice to have though
 
Yeah, like Swift #""" ... """# or C++... I don't remember C++'s syntax but I know it has it
 
2:40 PM
@RydwolfPrograms NOOOOOOOOOO
DO NOT
I do not like languages where they're distinct
 
Also a byte literal string type is very useful
 
if you're going to have a char type have its literal be something like c"!", Python-style
 
If you have chars they should defiantly be single quotes for consistency
 
nooooooooooooooo
 
2:41 PM
I'm not talking about char literals here tho
 
If you don't have char literals they should be the same IMHO
It gets confusing if you have too many different confusing types of escaping rules
chars and strings being different is fine because they have the same escaping rules
 
Having a raw multiline string literal would be a nice feature, but I don't know that I'd anticipate single quotes for that. Python/Swift use triple quotes and JS uses backticks for multiline string literals
 
Maybe you could just accept line breaks in any strings? I don't really know what the downside would be
 
It's super ugly
Esp. with indentation in a non-significant-whitespace language
 
Swift has a really clever trick for this: whatever indentation is on the line with the """ itself is stripped from the contents of the string
all three of these are the same string:
let foo = "a"

let bar = """
a
"""

let baz = """
          a
          """
 
2:47 PM
That's really nice, wish python had that
 
@mousetail you know what will have it? Rabbit
 
Awesome
 
3:15 PM
@Bbrk24 Ooh, I have been looking for a solution for this problem.
 
3:30 PM
Realisation: Golfing languages are essentially manual Lempel-Ziv where the dictionary is built into the interpreter
hence, why not go a step further? One could train a context mixer on a large amount of perl/APL/Jelly code extracted using SE Data Explorer thing, then retrofit the oddball encodings into 8-bit ASCII
then use the resultant CM state, embed it in a "compiler" and "virtual machine", where the compiler simply transforms a readable piece of code by feeding it into the CM and intercepting the arithmetic coder results; the virtual machine would have the exact same CM state so it could with very little effort reconstruct the original program and execute it
there was some golflang ELO thing, does anyone remember where was it?
codegolf.meta.stackexchange.com/questions/8798/… - according to this, Jelly and osable would be the primary targets of this
existing golfing languages are a perfect target for this kind of thing: it is rather difficult to further analyse them to provide better scores by the traditional method of adding a new built-in that is a trivial composition of existing built-ins, because if this would be possible, i would conjecture that the language author would already look into this.
further, standard compression methods wouldn't work on golflangs, but CM models can find further relations in the input data stream (via sparse model, record model, dynamic markov coding, etc...)
golflang programs also tend to follow a rather rigid code structure, you rarely see e.g. literal text in the code hence a context model for it would be unnecessary yielding some savings in this department
 
3:47 PM
error: could not compile `...` due to 428 previous errors
Well I'm having fun rn
 
@Bbrk24 Okay, that's a big "wat" moment o_o
@RydwolfPrograms I think not: 1) it doesn't actually help that much with avoiding backslashes because what happens when a string has both " and ' in it, and 2) it's just another way to end up with inconsistent coding styles in the same project :P
 
Those sound like arguments for having a distinction
 
Some secondary, more flexible string syntax in addition to your basic double-quoted strings would be useful, though--whether it's Python's """, JavaScript's `, or Perl's q{}, or something else like that
@RydwolfPrograms ... You like inconsistent coding styles?? :P
 
No as in
You can't inconsistently use "/' if they have distinct purposes
 
Oh. I may have misunderstood your initial question
 
3:57 PM
The options are "they're both identical string types, like in JS" or "single quote strings don't have backslash escapes, and are basically raw strings"
 
I see. So, definitely not the first one. Not sure how I feel about the second one.
 
4:09 PM
@DLosc iirc it's because Swift 1 didn't have string interpolation or raw string literals, and they wanted to save single quotes for those. But they ended up going with other things (interpolation still uses "..." and raw string literals use #"..."#), and the community has yet to agree on how to add single-quoted literals. It's going to be even harder because, while Swift 6+ may be source breaking, they may not be ABI breaking -- let me find the forum thread
I have some strong opinions on this topic but you probably don't want to hear them
 
0
A: Sandbox for Proposed Challenges

JacobPaint you a Picture for Piet Perfection popularity-contest Make a Piet program that does whatever you want—but make it pretty. Your goal is to paint a beautiful picture with an interesting function. Your program may do anything, but your submission is much more likely to gain upvotes if it is int...

 
4:55 PM
a small "study" on how often each Jelly code-page byte is used in Jelly solutions, data gathered over ~5000 programs: pastebin.com/jURUhPsf
the average Jelly solution is 14.2 chars, the median is 10 chars
 
5:46 PM
@RydwolfPrograms Definitely not the second one
 
6:18 PM
On the topic of using existing answers in golflangs to generate a more optimal golfing language encoding
I've been working on something that'll take all existing Jelly, Vyxal, Husk, etc. answers, with some filtering to remove ones that aren't actually optimally golfed, and analyze their structure and the operations they perform
And it'll try to create the optimal SBCS and parsing rules
A program in a tacit/stack-based/prefix golflang is just a tree of operators and nilads, with some branches being in multiple places at once, and implicit inputs as a special nilad type. So you could strip out the actual operators/nilads being used, and just find the structures of programs across different golflangs, and try to optimize your language's parsing rules to make those shorter than other structures
(or do something more catstruct-like and arithmetic/huffman code the different structures and store the structure and operator list separately)
And then I'll also write a thing that converts all of the answers into a sort of...golflang assembly, and write an automated thing that looks for common patterns in which built-ins are used where, to create the optimal list of operators and nilads
 
6:37 PM
i have fully implemented my idea, however it seems like it performs way worse than i had expected
the saving is sometimes a byte or two, usually nothing
 
A byte or two, if inconsistently, seems like it'd be a pretty big deal
 
maybe, given that most jelly answers are below 10B
but it seems to be the case less often than not
maybe Stax would be a better target, but i doubt that it has as much training data as Jelly
 
Vyxal's got the second largest number of answers IIRC
You'd have to filter out flag ones tho which would take out a ton of them
Japt is suprisingly high too IIRC
But same flag issue
 
japt transpiles to JS
the problem is that LZ action in context modelling compressors greatly decreases the ratio, because context is lost
e.g. if you had a sequence of primitives abc for which a separate primitive d was made for, the compressor will no longer recognise the neighbourhood of abc in the same way as the neighbourhood of d
the gains here are mitigated because 1) compression doesn't stack (try compressing a file first with lz4, then with lzma and see for yourself). 2) the context model will take care of eventual repetitions because the training data surely will contain them and ascribe short sequences to longer repetitive patterns optimally while also being aware of the order-N context
how things like Japt should be designed is to take an optimal matchfinder, e.g. github.com/IlyaGrebnov/esa-matchfinder that works via suffix sorting, then push a crapload of golfed JS code through it, then pick out the matches and ascribe single symbols to them
 
6:53 PM
Oh I tried doing something sorta like that once I think
Problem was different choices of variable names contributed a ton of inefficiency
Was working on a thing using the Babel parser to parse and reconstruct the JS answers with deterministically chosen variable names but I got bored of it lol
The way I chose the strings that'd be replaced by a single dictionary item was by repeatedly finding the most common pair of adjacent dictionary items, adding it to the dictionary, removing any dictionary items that became redundant, and continuing until adding a pair of items as a single item would be overfitting
I actually made a really simple compression algo using that with huffman coding, which I've used in a few projects of mine to store (really) large string/JSON literals without needing a library
 
some high level parts of my compression code i write in kamilalisp these days due to how convenient for almost all tasks it is
e.g. huffman coding is pretty short and nice: github.com/kspalaiologos/kamilalisp/blob/v0.2/examples/…
 
7:09 PM
What if you put the test cases to your challenge in an image that changed to a new randomly generated test case every time you reloaded the page
Too bad SE's font isn't deterministic anymore, you could even completely hide that you're doing that until someone tries to hover/copy it
Altho I guess if you know the platform and browser, you can make a pretty good guess
Ooh, apparently when you copy an image with alt text and paste it, the alt text pastes
So you could even make the dynamic test case copiable...wait no the alt text doesn't get chosen server side nvm
I am determined to abuse this images-hosted-on-other-sites thing somehow :p
I suppose a particularly malicious way you could use it would be finding mods' IPs from chat, then showing one image to mods and another to everyone else (with a once-repeating GIF that changes the image to something harmless shortly after, preventing screenshotting), creating confusion and distrust
 
8:08 PM
regarding the discussion about languages: is there a place (on the meta?) to try introducing a my language? I've posted a few answers in it so far.
 
Language announcements aren't on-topic on Meta anymore I don't think (the one for Nibbles got closed)
@lyxal probably knows all the rules regarding language promotion, I'd ask him
 
9:04 PM
0
Q: Detect round trips on the order-4 pentagonal tiling

KarlYou're driving along a street in an infinite city whose blocks are pentagons arranged in the order-4 pentagonal tiling. At each step, you proceed to the next intersection and choose to go either left, right, or straight. A sequence of choices that returns you to your initial state (street and dir...

 
9:39 PM
@RydwolfPrograms Have you tried running it with sudo compile -force
Sudo and -force always fixes everything
 
10:10 PM
@KamilaSzewczyk you might be interested in the jelly corpus which also has digraph and trigraph statistics
 
11:09 PM
So std::find_if uses linear search, and std::binary_search returns a boolean, not an iterator. Is there no builtin binary search that returns the location of the thing it found?
There's std::equal_range I guess but I feel like I shouldn't
 
11:29 PM
0
A: Sandbox for Proposed Challenges

YousernameGenerate a Random Integer code-golfintegernumberrandom Your task is to create a program or function that outputs an integer from \$-\infty\$ to \$+\infty\$ non-deterministically (the output will not always be the same result). Rules Please explain what your code does to confirm that it can produ...

 
11:53 PM
0
Q: Ragged list pattern matching (2)

alephalphaThis is a sequel to Ragged list pattern matching. In this challenge, the wildcard may match a sequence of items of any length instead of just a single item. Given a pattern and a ragged list of integers, your task is to decide whether the pattern matches the ragged list. The pattern is also repre...

 

« first day (4423 days earlier)      last day (421 days later) »