« first day (2324 days earlier)      last day (2815 days later) » 

22:00
@ETHproductions What does Cubix do when it hits a plane edge?
@MDXF From what little I've seen - and, admittedly, I've seen very little - they wrap. But, conceivably, they could also output/terminate.
@Shaggy Darn. Mine terminates
Which is more useful, wrapping or terminating? And what prevents languages from getting stuck in an infinite loop if they automatically wrap upon hitting the edge?
For example, in triangular, if it reflected SE to W upon hitting the bottom-right edge, then reflected W to NE upon hitting the bottom-left edge, then NE to SE when hitting the top... how could I prevent it from infinite-looping?
@MDXF Prettymuch invariably wrap around.
Wheat Wizard's Klein has an intresting gimmick based on wrapping around to a different edge rather than the opposite.
Oh wrap
Not deflect
Duh
How would that work if the default direction was southeast on a triangular plane?
There should be a "language development" chat
8
Does one exist? If not, I'm going to create it
@MDXF We tried making an SE for it but it got closed.
22:08
@Phoenix A community?
Yeah
@MDXF Don't take my word for it; I know naff all about 2D languages!
@Shaggy Well, I don't either, triangular is my first attempt at one
Closed as Duplicate of Software Engineering
Oh okay
But there's not a chat room?
22:10
@MDXF It goes south-east, hits the bottom edge, wraps up to the left edge and continues going south-east.
That makes sense to me
Huh I guess
However, given a triangular playing field, deflection might be more intresting than wrapping.
@Phoenix Exactly
Wrapping doesn't make too much sense on a triangular plane
@MDXF I'd have thought that'd be ontopic on the esolangs chat, unless you're developing a practical language

 Esoteric Programming Languages

A room for discussing, creating, using, golfing and discoverin...
yes, explicitly ontopic there
Is there a "tips" question on Main about how to progress through eso/golfing languages? e.g., I started off here as a JavaScripter so Japt was the logical language for me to move on to; what language should I transition to from Japt?
22:14
@Shaggy TeaScript is another JS-based golflang
I'm not really sure one is needed; although the golfing languages work on different principles, actually programming them is typically much the same for any golfing language
apart from Brachylog, which is fundamentally different from most of the others, and MATL, as it has such an unusual set of builtins
@ais523 I suppose mthmtca fits the same category as MATL
perhaps; it might be something of its own
I'd forgotten it existed and don't know much about it
it's not commonly used on PPCG, at least
That's because no one has any idea how it works.
It has a sub-byte encoding that transpiles to Mathematica.
Any Mathematica can be converted to it, but it's weird.
Hm
So there are mainstream languages, and then shortened versions for golfing, correct?
Like Japt is a shortened version of JavaScript, right?
22:19
Yes
MATL is a shortened version of MATLAB, right?
For most languages, it seems
Pyth is a shortened version of Python
@MDXF Pretty much, except usually people run it on Octave since it's free.
shortC is a shortened version of C (sorry, couldn't think of any better name)
22:19
@MDXF There's also a Pyke
Oh huh haven't heard of that, actually
and Brachylog is a golfing language version of a subset of Prolog
japt for javascript
Jelly for J
> javascrpt
22:20
there are some notable differences between J and Jelly
@Phoenix , thanks, I'll give it a look during the week :) Although, I was asking​ in more general terms; what language should someone arriving here with a C background or a VB background or a PHP background try to pick up first and how should they progress from there. I only ask because I had the idea to create the question myself, wanted to check if it had already been done.
I'd say Jelly's more J-inspired than J-derived
Yeah, I suppose
i should make jv for java
lol
Nah
That's not the point of Java
22:21
but it's the point of jv
@Dennis what's the minimum amount of time an account can be suspended?
i'm totally doing this
@totallyhuman do it
I'm making shortJ
.NET > JVM
JV is better sounding, though
22:22
screw websockets experimentation, imma make a golflang outta java
java has a pretty comprehensive standard library, that'd be one good reason to make a golflang out of it
I think shortC was the easiest golfing lang to write
like, ever :P
@MDXF The shortest I've seen is 7 days.
I was wondering if a 5-day suspension was a thing
For accounts on main? One day.
22:29
@Dennis Oh, so is a 5-day suspension possible?
Wikipedia has 1-second suspensions, and they're often used if there's a need to make a permanent note in a user's suspension history for some reason (e.g. because there's misleading information in it and a clarification is needed for the record)
@MDXF Yes, you can select any custom numbers of days up to a limit I haven't bothered to figure out yet.
Oh okay
I'm getting my promotion next Monday and I really don't want to be distracted by PPCG for the first week on the job, so I'll probably ask to be suspended during the weekdays
Related: I've seen a couple of people suspended here for "voting irregularities" but, given that we're a lot quicker to give out votes than on other SE sites I participate in, what constitutes "voting irregularities"? Is it an automated thing? (Note: I'm not inviting discussion or dispute of anyone's suspension, just looking for a definition)
@Shaggy Probably sockpuppetting
22:32
Wikipedia also has a rule that we never grant self-imposed requests for a break, mostly because that can cause big problems for other people
Or serial voting someone for no reason
for example, what if your IP rotates to another user, and it looks like they're trying to evade a block?
the usual recommendation is to install a browser extension or user script that prevents access to the site
@MDXF sockpuppeting? (serialing, I get)
@Shaggy Making another account, posting two things on that other account, upvoting them yourself so it can vote, then using that other account to vote for your things
But socks are okay (I have one or two) if they don't interact with your main account at all
@MDXF Gotcha! Thanks :)
22:37
Yep. I, uh, made a mistake last year on StackOverflow, thought I'd be clever and give myself rep
I completely underestimated the system and mods >.<
btw, recently I think someone upvoted every answer on a question where I have like 12 answers, but plenty of other users have answered it too
Hmm I hate java but I have write JV in Java don't i
what are the odds that that'll get reverted as serial voting?
@totallyhuman if you write an interpreter, probably; if you write a transpiler to Java, quite possibly not
@ais523 3/10?
@totallyhuman You could make a .NET golflang and write it in C#/F#/VB
22:40
@Phoenix I don't know any of those languages :P
If they voted so many posts at once then it'll probably just get overlooked by the system
@ais523 as far as I know, serial voting = voting up alot of one user's posts in one time period
@totallyhuman C# is basically Java but with most of the things you don't like removed
I can't find the meta post about that, though
@ais523 java doesn't have an eval() equivalent though so it seems I should just make a transpiler
22:41
CMC: Make an eval() in a compiled language
it has the reflection API, that's basically a really convoluted eval
(requires invoking the compiler)
@programmer5000 I've spent about six weeks working on a C library called c-eval (adds an eval statement to C) that doesn't use the compiler
Seriously try learning C# it's actually good.
@Phoenix And a bunch of useless crap added
22:43
@ais523 Does upvoting every answer to a challenge you posted constitute a voting irregularity?
@ais523 I'll just stick to what I'm familiar with. Python, home sweet home
@MDXF A lot of that added stuff is useful, and what isn't you can ignore.
@Phoenix Meh... the only part I like about C# is how easy it is to interface with the Win32 API
@Shaggy I've been doing it on each of my challenges, so no.
I don't upvote all the answers to my challenges
I upvote 1) the ones I like for no real reason 2) the ones that are really creative 3) the ones in my languages or C 4) the ones with detailed explanations that practically teach me the language
22:46
@Shaggy if there are like ten answers by the same user, possibly; otherwise, it's very unlikely
I don't grok duck typed languages, so C# works great for me.
Could I get some looks at my sandboxed question?
@Phoenix There's alot of useful stuff in here, and the rest you can ignore.
@MDXF It's a cube, it doesn't exactly have plane edges
Hexagony (Martin's lang) wraps, Beam (which I did not design but have written an interpreter for) terminates
@Phoenix I only have 1 challenge (so far) but it was going to be my policy to upvote all (valid) answer on all my challenges; wanted to check that I wouldn't get the boot for doing so.
22:52
@ETHproductions Oh true
The original Beam interpreter threw an error but I removed that for the TIO version
So it definitely wraps, then (Cubix)
Then does it only terminate when it sees the terminate command?
22:54
All right, cool
You could also terminate on an error, but Cubix doesn't have errors
Congrats :P neither does Triangular as of right now
alright, gtg, chat with you later. Good luck on Triangular!
Thanks :D
23:26
...that's not the conversation I expected to see half an hour later :P
CMC: Given a 2D array, determine if it is rectangular.
JS: x=>x.all(y=>y.length==x[0].length)
JS doesn't have .all(), it's .every()
But yeah that's about what I was going to post as well
Actually you can do 7 bytes less: x=>!x.some(y=>x-(x=y.length))
What does .some do?
Returns true if any item returns a truthy value, false otherwise
23:32
Ah
Basically every/some is equivalent to all/any
CMC: Golf:
['log', 'warn'].forEach(function(method) {
  var old = console[method];
  console[method] = function() {
    var stack = (new Error()).stack.split(/\n/);
    return old.apply(console, [].slice.apply(arguments).concat([(stack[0].indexOf('Error') === 0 ? stack.slice(1) : stack)[1].trim()]));
  };
});
Why do lots of people use sketchy mediafire for hosting public stuff rather than github?
why is mediafire sketchy?
@ETHproductions Welcome back :P
23:41
@Downgoat it opens new tabs to sketchy ads that look like chrome telling me my software is out of date
@HelkaHomba isn't that adf.ly
@HelkaHomba Ugh I hate those in every way shape and form
@Downgoat what do you suggest a goat builtin doing for my new 2d lang?
@HelkaHomba Because GitHub is used for source code, if you're just downloading some program it wouldn't make sense to host it on a git service.
@MDXF printing out goat ascii art (lemme find it brb)
@Downgoat they both do it I guess (but I believe with adfly you can technically make money off links)
23:43
@HelkaHomba yeah 5 cents for every 10,000 clicks
or something incredibly ridiculous like that
@Phoenix but say for Minecraft worlds. Is non-code against TOS?
@HelkaHomba Aren't MC world saves still technically code?
Regex people: Why does the regex ^((\\[<>]|[^<])*)> not match in \<string> ?
I was under the impression it matches the first choice out of | sequences
When multiple will match
@HelkaHomba It isn't, but that's really not the intended use case of GitHub.
@MDXF I don't think so. You'd almost never edit individual files without using the game or MCEdit or something
23:48
@HelkaHomba Well one would never edit .class files without compiling them but ppl don't care if a Git repo is full of Java classes
@Phoenix APL, 7 bytes: 1=≢∪≢¨⎕
Brachylog has a builtin, IDK what it is tho.
Is there a quick way in Java to get the default string Comparator? (rather than making your own)
@HelkaHomba String::compareTo
IDK how it handles null though, if that's a thing that matters.
@Phoenix Not 100% sure if this works in all cases, but CJam, 6 bytes: q~z_z=
23:58
@Phoenix I mean the Comparator object, not the function it implements

« first day (2324 days earlier)      last day (2815 days later) »