« first day (2460 days earlier)   

12:01 AM
@ASCII-only yes that is the goal to fold the above expression
well it folds to array != [1,2,3] || array == [1,2,3] which folds to true which means the if part is removed
oh is this VSL
@ASCII-only different example:
if array[n] > x {
    array[n + 1] = x + n
    g(array, n)

let z = x + 3
func g(array: Int[], n: Int) {
    if array[n + 1] > z { array[n] = 4 }
this can be optimize into two seperate branches for g
but it would require tracking array indices + constraints for each
if you have variable length operations + for loop it becomes extermely complex object you have to keep track of
@ATaco That's unfair! There are only "Yes" option.
CMP: What calculator model do you have?
12:14 AM
@ATaco no, because my answer would be "definitely not" :P
@user202729 CASIO 9860 G AU II or something like that
CMP: Proton's function composition (+) operator is currently backwards; that is, (a+b)(c) := b(a(c)). Should I fix it? I'd have to make a new Proton release version because old programs would break, but it doesn't exist anywhere other than PPCG yet.
I feel so unfortunate, most people have programmable calculator...
@user202729 I just use APL. Used a TI-86 in high school.
@HyperNeutrino Make both forward and backward version. (like @* and /* in Mathematica)
12:15 AM
/* is a proton comment (C/Java/JS-like multiline comments)
Just taking that as an example. Make the composition operators whatever you want.
mhm ik
hm I will probably do that for backwards compatibility then, thanks
@HyperNeutrino yes
@HyperNeutrino yes
Funky still needs comments.
12:20 AM
@HyperNeutrino nesting pls
what should I use for proper thingy
I forget if multiline comments nest lol...
need to first fix printing
Lua's ones do :P
@HyperNeutrino they usually don't. but they should
ok rip sympy I'm removing autosympy from Proton
12:31 AM
What happened
it's a pain to manage with the way proton works
although actually I'm dumb and I just figured something out so nvm re-adding autosympy
CMC: Given 8 Unsigned 8Bit ints, Transpose their bits, and output the new array. EG: (1 2 3 4 5 6 7 8) -> (0 0 0 0 1 30 102 170)
CMP: In a language with #... single line comments, how should multiline comments be implemented? I'm currently looking at #= ... =#
now proton is outputting weird things for no reason
I'd use #{ and }# but I'm weird like that.
12:36 AM
@HyperNeutrino because you broke it isn't for no reason >_>
._. like I actually don't know where the output is coming from
@HyperNeutrino this is what print is for. to debug.
well the problem is print is the thing making the weird output
and I found where it was
there fixed it
I think I might be able to implement addition soon yaaaay
@ATaco n=>{var a=n.Select(i=>new BitArray(i));return a.First().Select((f,i)=>a.Select(r=>r.ToArray()[i]));}. Takes an IEnumerable<byte>
@HyperNeutrino I could have sworn that was already there?
Cries in .NET
12:42 AM
well considering proton was already a TC and ready language at the time, it's just because of the object rewrite
caird told me to stop being lazy and make my own types some time back
so¯\_(ツ)_/¯ why not but this is actually a pain lol...
@HyperNeutrino writing a language is always a pain
but it's always worth it
RProgN2 is still my favourite baby.
and yeah it teaches me quite a bit about programming lol
@ATaco what happened to funky lol
Funky is beautiful, but not the favourite child.
12:44 AM
<- hasn't learnt anything from Charcoal
I've also learned quite a bit about how Jelly works from programming Enlist.
@ATaco -1 byte: n=>{var a=n.Select(i=>new BitArray(i));return a.First().Select((f,i)=>a.Select(r=>r.ToList()[i]));}
I mean, RProgN2 won me my first green tick!
which only took you 5k rep
I feel that's more the result of seemingly no-one accepting answers rather than my inability to win at code golf.
12:46 AM
@ATaco Turns out, C# is really really bad at transposing a 2D collection
RProgN2 does it in 1 byte. T :P
oh bit indexing is broken after the sympy switch and I didn't even notice...lol
The whole new BitArray trick is actually pretty neat, it's an efficiently stored bool collection
@HyperNeutrino Unit tests, my friend.
I think jelly is like (B) (Z) (B.)
@Pavel yeah I should make those some time
12:52 AM
CMP: How many languages do you have on TIO that you've made?
@ATaco 0 or 1 depending on if you count preproc
@ATaco Jelly 15 bytes: 0x8⁸;ḣ8¶BUÇ€ZḄU
Although this figure is being actively worked on.
Can Jelly pad-left or pad-right with 0 (in a way shorter than I have above)?
12:53 AM
at least 5
Safire is the dynamically typed language that transpiles to C# that no one asked for.
@user202729 you can pad by doing zipfill(0) and then zip[monad]
@ATaco dos
(V and flak?)
idea: V-flak: the epitome of mayhem
That sounds not fun
12:57 AM
Oh I just understood what z does
@HyperNeutrino ADJUST + Malbolge = The Devil's language
I mean seriously just imagine the self-modifying language it took 10 years to write a Hello, World! in combined with the most evil 2D language ever
@ASCII-only Malbolge already is The Devil's Language. It's in the name.
1:04 AM
@ATaco Jelly, 10 bytes: ;⁹BUz0Ṗ€ḄU (-5 bytes thanks to HyperNeutrino!)
@Pavel Of course. But it's not evil enough
bleh proton is becoming like a derailed train
@ATaco 2
@ATaco 1
although I should probably take down Rotor
it was for a CnR originally until the rules changed
1:11 AM
@quartata Dennis doesn't generally allow that
@Pavel really?
no permalinks are in use for it
@ASCII-only Nope. Once a language is up, taking it down could lead to link rot, and link rot is the greatest of all evils as far as Dennis is concerned.
@Pavel i guess, but ^^
CMC (this really means Chat Mega Challenge): Write a (playable, e.g., Tetris or Snake) game on a Casio scientific calculator (e.g., ASCII-only's fx-82AU). Must be playable. (not post on main because I don't know how popular is that model, but according to the previous poll it's not very popular; and also code-challenge without winning condition is often frowned upon, although actually solving the challenge is a winning condition, like the Tetris on GoL).
1:13 AM
Plus, I think Dennis just likes having as many languages as possible on TIO.
@HyperNeutrino Heh
What about updating the interpreter to one that always print "This programming language has been deleted." ?
I've actually thought about a *flak that has a 2d coordinate system (cursor?)
@quartata There is now >:)
How dare
I have 8 languages on TIO.
1:15 AM
@Pavel what exactly was the point of this
I think I've made too many languages.
ooh a flak where brackets can face any of the 8 directions and the beginning of a bracket dictates where its position is during evaluation so a 2-d flak
@quartata I don't see why there needs to be a point.
@ATaco That is incorrect and you know it.
@HyperNeutrino pls link to relevant unicode characters
1:16 AM
They exist
They are all beautiful and all occasionally used.
@HyperNeutrino exactly, they don't exist
@Pavel somehow i doubt diagonal brackets exist
well you could use like arrows
@HyperNeutrino I guess
@ASCII-only There are arrows, box corner characters
1:17 AM
@Pavel ... well they aren't brackets are they
essentially it starts at top-left corner and reads brackets in that direction, kind of recursive-like
They look brackety-enough for me
@Pavel doesn't mean they're brackets
Use ←↑→↓↖↗↘↙
CMP: Should Proton objects just be dicts of their attributes, and if not, what should they be?
@ATaco but you need 4 classes of brackets :P
1:18 AM
@HyperNeutrino I think you already asked that.
@HyperNeutrino yes
maybe I did
@HyperNeutrino Maybe just python objects that extend a base class ProtonObject
... lol there's an unused ProtonObject class sitting around in my interpreter_utils :P
Python still saddens me.
1:19 AM
Don't even need a base class, really. Could just be python objects.
maybe just make it effectively dicts of attrs except wrapped for convenience
@HyperNeutrino they should also have constructor, __proto__, __defineGetter__, __defineSetter__, __lookupGetter__ and __lookupSetter__
@HyperNeutrino ...
those have python equivalents that I'll be using
@ASCII-only I tried an initial solution but it did not work at all
@HyperNeutrino ...
anyway I think I should push this as a separate branch and pull back my local copy and start over
ok apparently residues of my failures are already up on github
1:24 AM
@HyperNeutrino >:D
if I asked dennis to pull proton chaos would ensue (not really because nobody uses that sketchy thingy of a language :P)
You know about git stash right
oh um no I don't
lets you stash some local commits and then reapply them onto the same branch later
huh interesting
I should learn how to use git better sometime
1:26 AM
@ATaco you broke prettify
currently all I know is git add *, git commit "did stuff", git push, git clone, and sudo rm -rf /
whoa onebox literally takes whole screen
@ASCII-only I did no such thing.
@HyperNeutrino sudo rm -rf / --no-preserve-root
1:26 AM
but lol that's pretty much me using github
@ATaco well it's broken
anyway brb o/
@ASCII-only Be more specific?
@ATaco pls see console...
the scripts don't load because url is broken
anyways gtg o/ anyways brb o/ rip
1:29 AM
I'm sure it's FIiiiiine.
I just notice that when I click at the "n new answer(s) to the question" when there are multiple pages of answer, the new answers will appear above the page selection bar. Meta.SE may be more suitable for that, anyway.
1:46 AM
@Pavel \o/ I got a language taken down from TIO :P
@HyperNeutrino Ok, so first of all, it's git commit -m "did stuff", and second of all, git add * ignores dotfiles, git add -A adds all files and git add . adds all files if you're in the repository root.
I've been told that I'm evile for doing git add *
(by the same friend who insisted Proton was a golfing language)
Many of my commit messages are just vocalisations of frustation and pain.
@HyperNeutrino It is
I almost caused a critical issue at the hackathon from doing that
1:55 AM
It's not that evil
It's just slightly evil
except not really because git is supposed to help save you from critical issues because you can just "rollback" :P
I really should get source control for a-ta.co
You know, mv /* /www and all that.
2:09 AM
Hey Alex, ik you haven't been here in a while, but windows CMD just crashed on me, writing this to my clipboard:

    [Window Title]
    Windows Command Processor
    [Main Instruction]
    Windows Command Processor has stopped working
    Windows is checking for a solution to the problem...

I accidentally pasted it into my console, and got this output:

    C:\Users\Conor O'Brien
    λ [Window Title]
    '[Window' is not recognized as an internal or external command,
(long post bc I don't want to spread it over multiple messages)
@AlexA. check above message, lol
oh thanks
alex has been here semi-recently, at least between june and now
rip ping though
speaking of which, does any brave soul wish to enter echo 3|@: into their windows cmd instance (if applicable)? It should replicate what happened above, sans alex
@HyperNeutrino I mean, I can superping, so eh
2:13 AM
oh right
also, should this be deleted?
Q: When does (x == x+2)?

ugorenThe challenge: Define x in such a way that the expression (x == x+2) would evaluate to true. I tagged the question with C, but answers in other languages are welcome, as long as they're creative or highlight an interesting aspect of the language. I intend to accept a C solution, but other langu...

not sure
I mean it's def off-topic. not sure if it warrants delete vs lock tho
lock, not delete
It's already closed.
No need to delete it.
Wow, indeed.
1 hour later…
3:23 AM
@ATaco that was my thinking
Hey @HyperNeutrino
(if you close the browser window, will your icon disappear?)
@user202729 no
takes 15 minutes for it to fully leave
@HusnainRaza Hello. Let me take a guess: You want me to do the next OEIS sequence.
if you open teh window back up it will either rejoin you or refresh your icon
3:31 AM
@Riker oh I thought it was 2 hours lol
@HyperNeutrino If so I was doing it already.
lol that question now has 5 delete votes; I wonder how many it requires for so many answers and upvotes
@user202729 cool that's great :D it's great having someone else to save the challenge because I have no time nowadays :P
(well, I have FP and Logo languages left)
But I think that one isn't that hard anyway.
@HusnainRaza But what was you actually intend to ask, anyway?
@HyperNeutrino no lol
3:35 AM
oh ok :P
Why the heck are we deleting this question
good question
There's a reason not all closed questions are automatically roomba'd, look at how many answers this has
I don't think it should be deleted
thank goodness for the scaling delete votes threshold
3:41 AM
So just ask some moderator to lock it. Done.
How do undelete votes work on a question that big?
Same number as delete
Actually half a mo'
It might always be three
Yeah it's always three
This will take 10 delete votes to delete tho (the max)
Mod flagged to be locked at any rate
Actually this could probably be reopened if we cleaned it up a bit
3:52 AM
possibly. not sure if it's worth the effort but quite possibly we could
This is what sucks about closing here, these questions never get looked at again for editing
@quartata yeah :/
I'm sure there's plenty of good challenges buried because they don't meet our spec requirements today but did in 2011
@HyperNeutrino most of the effort would be in editing the answers to include scores
yeah true lol, unless it was turned into a pop-con (though that's also likely to get closed)
Fixing the challenge itself is pretty easy: scoring should be based on the prep, not the actual comparison is the only catch imo
3:54 AM
@Riker out of curiosity how did you find this
So I just found out that you can get a hacktoberfest t-shirt by making 4 pull requests to your own repo. The only conditions are that the repo is public, and the PR isn't marked as spam. But if it's your own repo, there isn't anyone to mark your PRs as spam. Hmm.
lol that's great
they don't allow PRs to your own repo
but you can contribute to SmokeDetector if you like
we have some issues we've left open for this purpose
@quartata I made one by accident and it counted apparantly
3:57 AM
@quartata Yeah but I'm bad. I've mostly been searching GitHub repos for spelling errors and such.
I mean I'd think that they have a human reviewing this
Consider how many people participating there are.
It sounds impossible to verify all of them.
not mine btw, that's @angussidney
4:03 AM
anyway gtg o/
> 1 contribution to pavelbraginskiy/Seriously
That's a fork though
So if you click [leave] explicitly instead the icon will disappear immediately?
@quartata Right, I made a fork and made a pull request to my own fork.
No pull request touched Mego's repo
4:04 AM
I wouldn't be surprised if that counted differently
Although it's a little weird
It clearly says I completed the hacktoberfest challenge
(I'm still going to try to make a 5th PR just in case)
@quartata Where's the repo for Smoke Detector? Maybe I'll be able to figure something out.
I meant if they counted PRs to forks but not to repos
<-- has no public repos to test with
Although I would recommend not touching any of the chatcommands stuff
I use gitlab because my school blocks GitHub.
4:11 AM
why not just wait until you get home to push
Because I use it for my CS class.
also why would your school block github
@quartata I have no idea, because this school also decided we have to use github for CS
And what kind of sadist CS professor makes you use gitlab
@Pavel wtf
Something's not right there, have you asked about that
@quartata Yeah, the CS teacher sent the distrit's IT guy a letter at the start of the year but hasn't heard back yet.
@quartata Given GitHub is unaccessible, what do you propose as an alternative?
GitLab isn't even that bad, and it lets you make private repos for free.
4:14 AM
I mean if I was forced not to use GH I'd probably just connect to my own remote
I guess if I wanted to share something though I'd use Sourceforge LUL
@quartata I don't think the average APCS student knows how to set up their own git remote ._.
And I think GitLab is preferable to SourceForge
I'm assuming you're not the average APCS student, unless your question was asking what I'd do in the teacher's shoes
That was it, yeah.
Are they actually teaching you Git
Or is it add files via upload
Only basic things like add, commit, push, pull
I hear we'll get into branching soonish but the school year hasn't really started that long ago.
4:18 AM
In that case the web interface is the only thing that separates having your remote for students to use from using GH
Although I'm seriously impressed they're teaching you that
I really like my CS teacher. The class I'm taking is actually the one after APCS, which she invented. The idea behind the class is basically "Here is spec, here's your group, you have a month to implement it."
Is this a private HS?
It's public, but it's a so-called choice school.
It's free, but there's a lottery to determine who gets in.
oh ok yeah I know the type
I would still consider those more elite than usual schools
It's better than most private schools.
There are three 3D printers and a laser cutter that aren't used in any class, they're just there for students to use after or before school.
4:24 AM
how many students are there
That explains it - funding's probably less spread out
Notice the graph at top, middle
2 hours later…
6:29 AM
A: Create a universal integer sequence

user62131Brachylog 2, 11 bytes ≜~×-₂ᵐ~ȧᵐ≜∋ Try it online! I also tried an algorithm using additive partitions on a list, but it wasn't any shorter. This is a generator that produces an infinite stream of integers as output; the TIO link has a header to print the first ten thousand of them. Explanatio...

^ Is that… ais523 in disguise?
Probably. But SE allow two different users to have same username?
I'm almost positive it's him
long explanation, Brachylog answer from a new user, and Brachylog 2 instead of just Brachylog in the header

« first day (2460 days earlier)