« first day (2552 days earlier)      last day (2285 days later) » 

12:01 AM
For typing it all out?
 
um, yes
adding an entry to a dictionary is way easier than adding a new branch
i mean just in pure keystrokes at minimum
One colon overhead vs elif, scrolling through your massive if else chain aside
 
@quartata We're not talking about if/elif/else, we mean actual switch/case syntax like in C that is implemented in Coconut and perhaps should be in Python
 
Right but switch/case mostly just obscures the code smell
 
I honestly don't see the appeal of switch (unless it has extra cool Haskell-like pattern matching)
plus, with python's clean if statement syntax, emulating switch doesn't lead to inelegant code
 
12:18 AM
@totallyhuman That's the thing, Coconut does do pattern matching
 
yeah but most arguments for switch don't talk about pattern matching and usually analogize to c-style languages
 
I'm so used to languages with pattern matching that I'm surprised when I use one without it.
 
also coconut seems to be following f# and not Haskell :(
 
@totallyhuman I think that makes sense though. Both F# and Coconut were designed to essentially be impure, functional add-ons to an imperitive language.
Also, I like F#, so shush
 
:P
not really against f#, it's just if coconut were to follow Haskell, it would be a combination of two of my favourite languages
 
12:26 AM
Wait, so what exactly is Coconut?
 
@Zacharý Functional language that transpiles to Python
Also, all valid Python is valid Coconut. It's just an extension.
See coconut-lang.org
 
So ... sorta like (don't kill me for this comparison) ... obective-C ?
 
@Zacharý Can't say. Don't know O-C
 
...but objective-c isn't functional so I don't see where you're coming from
3
 
I mean the extension/superset part.
 
12:30 AM
Oh, sure, you could say that.
Except Coconut compiles to Python directly
 
So its speed is limited by the deficiencies of the Coconut compiler and the Python implementation it's running on?
 
So it transpiles? So it's like an old version of C++?
 
Bug or feature?
 
"All good Python is valid Coconut"?
 
12:34 AM
Bug in the tokenizer?
 
Definitely bug
@Zacharý yes
 
When I add spaces it takes 2 seconds to run that code :|
 
So the tokenizer has gone a bit COCONUTS ? (I'll stop)
 
@Οurous I wouldn't say that. Coconut is still very close to Python, there's not much for the transpiler to fuck up
 
But somehow it manages to fuck up what it can
 
12:37 AM
The transpiler is very slow, admittedly.
 
Yep
 
hey can anybody link me to tacoscripts?
 
print(1) takes 2.74 seconds
 
wowee
 
Comparing the speed of transpilation + execution in Coconut / execution in Batch for the same programatic time complexity would be an interesting graph
 
12:42 AM
@Zacharý ahem, 1 |> print please.
 
3.404 s
(Which seems non-consistent)
 
lol
nvm got tacoscripts
 
the "Hello, World!" is faster than Clojure's one
 
Which is a lot faster than F#'s.
 
I wonder what the fastest "Hello, World!" (including compile time) on TIO is.
Probably bash/dc/bc or similar
 
12:53 AM
Slowest is Ceylon iirc
 
kotlin is also up there
 
Yeah, but Ceylon was > 15s last I checked
 
I'm getting only 9s for Ceylon
CPU share: 123.32 % lol
... what? Ceylon reliably gets more than 100% CPU share. Am I misunderstanding what that is?
 
100 % = 1 core
 
I'm getting 8.379 for Ceylon
 
12:57 AM
ahh that makes sense then
 
protip: use ataco's highlight.js userscript instead of the prettify one
it's so much better o0
 
programming language name idea: subjective-c
 
ಠ_ಠ
 
Wouldn't that be like C-- (aka a pointless name)
 
o i c?
 
12:58 AM
@Οurous Eh?
 
Oh I See -> o i c / O-iC -> O-C -> Objective C
 
ಠ_ಠ
 
ಠ_ಠ
 
ಠbjective-c?
 
Nಠ
 
1:02 AM
inb4 trash+kick (let's stop :P)
 
@Οurous Looks like new servers are helping out
 
What the hell, sexefunge is a thing?
Septefunge?
 
@Zacharý all those extra funges were added at once since a certain befunge implementation had flags for extra dimensions
 
How does separation of dimensions work in that? I know Trefunge uses NL and LF.
 
@Zacharý No clue, check docs?
 
1:05 AM
Doesn't look like there are docs
 
Oh I love languages that you learn by looking at the compiler / standard library source!
 
What do they use, CONTROL CHARACTERS?
 
0
A: Sandbox for Proposed Challenges

BeefsterSmallest/Best Compression Goal: Implement a lossless string compression algorithm. Scoring: code length * total byte count of all compressed strings Test Cases "The quick brown fox jumps over the lazy dog" "Smile miles mile" "A man, a plan, a canal. Panama." "asdfasdfasdfasdfasdf" "123456789...

 
@Dennis, you copied the source, you have any idea?
 
I don't even know Befunge...
 
1:08 AM
>_<
I have no clue, it's probably TAB or something
 
RLE /s
 
Anybody here a wizard with Befunge?
 
nobody is good at befunge
except dennis most likely
 
> I don't even know Befunge...
Holdenson or someone?
 
1:17 AM
@Zacharý From now on, Befunge will always sound like a magical disease that only wizards get. At least to me.
 
I cast Befunge! It did 15 bytes of damage!
 
ಠ_ಠ
Yeah, I give up on looking at the code for Quadrefunge, even though that would be some MASSIVE polyglotting capabilities
\f is the escape character for line feed, right?
 
I think it's \r
oh wait no isn't line feed == newline == \n?
 
For that matter, how does moving between the 4th+ dimension work??
UNICODE?
 
Aren't there still \f = form feed, \v = vert. tab, \b = backspace, \e = escape, \a = bell to use?
 
1:27 AM
We are in the third dimension being pushed through the fourth dimesion
 
I have no clue how these funges work!
Anyone want to dig through the source code to find it?
 
I'll give it a shot
 
Okay, it's the quadrefunge/quintefunge/sexefunge/septefunge thing
 
hexafungony
 
How do you swap dimensions in normal funges?
 
1:39 AM
> means right, ^ means up, v means down, < means left
You don't really swap dimensions, IIRC
 
U = up?
D = down?
P = pop-if
Those three are only active in 3+ dimensions
U / D are counterparts
P is a conditional pop of something from something
 
Yeah, Trefunge is already a thing
I'm wondering what the 4D, 5D, 6D, and 7Ds are?
 
There are no further commands, but the behaviour changes. It seems to introduce something involving a higher-dimensional delta into all directional commands.
 
THat's weird
 
I'm going to keep looking because this is fascinating.
 
1:52 AM
Yeah
Seems fascinating, but I should keep studying for NACLO. I'll look further into it on Thursday
 
2:05 AM
*Friday
 
2:37 AM
@all, do you think PPCG can get its own 404 page?
 
Before it gets a design? Highly unlikely.
 
2:51 AM
Okay
Hey, ðproduction's here
 
ಠ_ಠ
 
PavL
 
3:07 AM
What happens if a cronjob is supposed to go off while your computer is off? Will it just activate the next time your computer is on?
 
Is the question specific to cron, or the idea of scheduled jobs in general?
 
@Οurous Specific to cron
 
I know Windows' task scheduler allows options for ignoring that task run, resuming when it turns on again, or waiting for the next scheduled interval. I imagine cron, and most other schedulers, will have a similarly logical set of behaviours you can use.
 
@Zacharý now that would be a hell of a username
 
If ý would be a valid username, I would most definitely use ý
 
3:11 AM
I have named my JS subset JSLambda, although now I think JSFudge would be a better name, seeing as the challenge this came from was named "fibfudge" (and it bears resemblance to the name of the most famous JS subset)
brb, renaming repo
 
#ðλ
 
@Pavel serverfault.com/questions/52335/… Apparently, sometimes
 
Hmm. My package manager seems to have died on me, and can't be killd. I wonder how bad of an idea kill -9 would be.
Also, I'm not quite sure how this happened, but for some reason I can only update packages with pkcon update. dnf update always says dependencies resolved, nothing to do.
 
Removing PackageKit is one of the first things I do with a fresh install. Solves most problems with dnf.
 
@Dennis I've considered that but feared breaking everything. Glad that's not the case.
Hold on...
Removing dependent packages:
 Discord                                      x86_64                       1:0.0.4-1                               @@commandline                       138 M
 Discord-installer                            x86_64                       1.3.4-1.fc27                            @tcg-discord                        3.9 k
 flatpak                                      x86_64                       0.10.2.1-1.fc27                         @updates                            4.4 M
@Dennis Wait how, stuff depends on it
 
3:24 AM
Hm, I haven't used Fedora Desktop in a while. plasma-pk-updates is probably some GUI updater; I don't use that stuff. No clue what Discord is.
 
@Dennis Oh, Discord is a thing I installed manually, it's kinda like Skype. I'm more intresting in everything else.
 
And a video chat client absolutely requires a package management service. Makes sense.
 
@Dennis No, see, Discord cease-and-desisted to get the Discord copr repo taken down for hosting their tarball. The package I installed is Discord-isntaller, an awful hack that automatically downloads the tarball and builds an rpm out of it every time there's an update
 
@Pavel I'm sure you've gotten this before, but: Obligatory XKCD X^D
 
Although I just discovered there are packages on the OpenSUSE build server, so eh, don't need packagekit
 
3:32 AM
@Pavel Oh noes, somebody provided a convenient way to install their software. How dare they!
6
 
3:55 AM
Does anyone know wtf is wrong with this
 
@MDXF you forgot a { after your if
 
Omg come on I've been puzzling over this for twenty minutes
 
C/C++ compilers do have some of the most unhelpful errors and warnings
 
I sincerely agree
 
Even for C, error: initializer element is not constant is pretty unhelpful for a missing {.
@MDXF Could have taken a few seconds. tio.run/##VY5BT4MwGIbv/…
 
4:02 AM
@Dennis I didn't realize how useful -Wall got with the latest GCC
 
Goddammit the discord opensuse package is broken. Mind you, it's for Fedora 27, it's just on the opensuse build server.
I've tried just the tarball, the snap package, the suse package, and they all don't work properly.
Back to packagekit and Discord-installer
 
Anonymous
@MDXF -Wall has always been useful
 
Anonymous
Bonus points for -Wall -Wextra -Werror -pedantic
 
-pedantic is totally stupid.
"ooh let's enforce fake rules that couldn't possibly have the slightest impact on behavior :D"
 
Anonymous
@MDXF Every word of that was incorrect
 
Anonymous
4:10 AM
-pedantic enforces strict ISO compliance - it helps enforce portability
 
Yes but what modern compilers require strict ISO compliance?
 
Anonymous
A single modern compiler doesn't. Supporting multiple modern compilers does.
 
Anonymous
Not everybody uses GCC
 
Yes, but most people use compilers that don't require all/any the things -pedantic enforces
 
@Mego <disapproval face here>
 
4:12 AM
@MDXF It isn't for people who provide binaries produced with different compilers, it's for people who distribute the source and don't know what compiler the other guy has
 
Anonymous
@Zacharý Clang is actually better than GCC in some ways
 
@Mego What ways are those?
 
Reasons
GCC > Clang. GCC (IIRC) will eventually support D, so GCC will make my life complete.
 
Anonymous
@MDXF Clang plays nicer with debugging and linting tools
 
@Mego ooh what's clang's debugger?
Because gdb isn't really that useful
 
Anonymous
4:14 AM
@MDXF lldb
 
Because LLVM, I'm guessing?
 
Anonymous
Also Clang is reentrant and can compile code in a multithreaded manner, unlike GCC
 
That's actually really interesting
 
Anonymous
Also Clang's error messages don't suck
 
CMP: Adding "solve cube" builtin to Cubically. What Unicode character should I use for the command?
@Mego Ok brb switching to clang
 
4:15 AM
Ř, for a friend
 
Anonymous
And to top it all off, clang is usually faster :P
 
error: extraneous closing brace WHY does GCC not have this ?!
It didn't warn me once wait no it did. It didn't warn me helpfully I had a random closing brace
 
@MDXF This is your fault for not using -Wall
@Mego Hold on, why do people use gcc then?
 
We need to build with Wall
 
Anonymous
4:19 AM
@Pavel Because clang isn't as widespread/well-known as GCC
5
 
(please don't kick me, O powerful penguin)
 
Anonymous
GCC has the backing of the FSF, while LLVM and Clang are independent projects
 
Could GCC technically support an LLVM backend?
 
@MDXF The ▦ - which looks like a uniformly colored rubiks cube side
 
Anonymous
@MDXF Maybe, but not easily. GCC is largely monolithic, so it's hard to take chunks out and replace them
 
4:21 AM
@Οurous I was thinking about that, it's kinda annoying that it's a 4x4x4 though because this builtin can only do 3x3x3, but if I can't figure out something better that's what I'm gonna go for
 
@Mego I meant that in the sense of "What does Clang do worse than gcc so I have something to think about before switching"
 
While we're talking about C, I think everyone should see this: github.com/shinh/elvm It compiles C to esolangs like Brainfuck, Befunge, Piet...
 
Anonymous
@Pavel Clang doesn't have the backing of the FSF, so they have less money, and thus it takes them longer to implement new standards. Also they don't have the weight to throw around to influence new standards as much.
 
Well, the last standard was C11, so I hope everyone's got that by now. I think I like clang
 
Anonymous
@Pavel C++17 was just last year
 
4:25 AM
But not everyone's got C99
 
Anonymous
Also MSVC still doesn't support all of C99
 
@MDXF Technically it's an NxN(eg: DejaVu has it as 5x5, my browser has it as 4x4, ...)
 
'cause dynamicallyinited stuff
 
@Οurous Ah interesting. I'll use it then
 
@Mego D: Wikipedia page for C11 still says it's current
 
Anonymous
4:26 AM
@Pavel For C, C11 was the latest standard. For C++, it was C++17, and they're working on a new one already.
 
Anonymous
@MDXF
 
Ah
 
Anonymous
C++20 will include concepts, which I'm excited about
 
@Mego Which concepts in particular are exciting?
 
@Mego Are those the metaclasses?
 
Anonymous
4:29 AM
@Pavel Yep
 
Oh. Like concepts. As a thing like classes?
 
Anonymous
Also possibly coroutines, transactional memory, and reflection
 
Anonymous
Concepts are C++'s way of doing pseudo-duck-typing
 
Anonymous
Concepts are an extension to C++'s templates, published as an ISO Technical Specification ISO/IEC TS 19217:2015. They are named boolean predicates on template parameters, evaluated at compile time. A concept may be associated with a template (class template, function template, or member function of a class template), in which case it serves as a constraint: it limits the set of arguments that are accepted as template parameters. The following is a declaration of the concept "EqualityComparable" from the concept-enabled C++ standard library (which is a separate ISO Technical Specification, ISO/IEC...
 
Anonymous
They allow specifying restraints on template args
 
4:31 AM
Didn't C++17 include variant?
 
Anonymous
Yep
 
@MDXF ELVM IR would make a nice addition to TIO.
 
Oh neat. So templates are getting closer to a proper generic typing system?
 
Anonymous
@Οurous Yep! It's exciting
 
@Dennis I agree, would you mind adding it then?
 
4:32 AM
Maybe they'll fix complex then :p
 
What's wrong with complex?
 
@Mego I'm just glad we can now have actual interfaces
 
complex of complex
no
 
MSVC has interface as an extension, but extensions aren't nice.
IDK about other compilers
 
@MDXF I'll see what I can do.
 
4:50 AM
My challenge is actually popular, woohoo!
 
@Zacharý 404 challenge?
 
Yeah
 
I like how different it is from other challenges, I've never had to write a polyglot that intentionally breaks in certain languages
 
Yeah, didn't want a bunch of 404s and print(404)s
 
Well you got a print(404) :P
 
4:53 AM
I mean for the final answer :P
 
@Zacharý ... it is
 
... >_<
Creative though
 
Yeah it took forever to slowly get it to stop borking in each language
I also thought of making one that just ended up with 404 and I had fourteen langs ready to go but I already had two answers and one is going to win (I strongly hope)
 
I'm expecting A FlakFlakFlakFlakFlak answer
Sorry
I meant FungeFungeFungeFungeFunge
The one I got beat by in the Hello World in Multiple Languages.
 
20
A: Hello World in Multiple Languages

James Holderness23 Befunges, 713 bytes The only language I really know is Befunge, so instead of multiple languages, I've just gone with multiple implementations of Befunge. I believe this is still valid under PPCG rules, which consider the language to be defined by its implementation. 8023/# !-1401p680p88+79*...

Like ^ ?
 
4:59 AM
Exactly like that
That's the one I'm talking about
55 upvotes though!!
 
On what now?
 
That challenge, I got 55 upvotes for my answer. It's under the flurry of Add++
 
Why is it that everyone and their dog went and made a Befunge interpreter?
 
Ah that one
@Pavel Everyone and their dog, cat, grandma, fish, and third cousin went and made a brainfuck interpreter so I guess Befunge should count itself lucky
 
I have no clue. Befunge 97 is a thing, and so is Septefunge (!))
 
5:02 AM
I just added a cube solver to Cubically and its code coverage dropped from 92% to 35% D:
 
@MDXF Well brainfuck is easy. The version TIO uses is under 30 lines of code.
 
What is "code coverage"
 
@Zacharý percentage of source lines your code actually uses
 
@Pavel And yet it still has like a million interpretations as well. (Wrapping/Nonwrapping Infinite/Noninfinite 0 -1/0/<do-nothing> EOF)
 
int main(void)
{
    puts("Hello, World!");
    return 0;
    puts("Haha nope");
}
The code coverage for ^ would be 66%. Function/variable declarations and random stuff like { are skipped; only the real code counts
 
5:04 AM
Ah, I see
 
@MDXF I think I get it less now
 
In computer science, test coverage is a measure used to describe the degree to which the source code of a program is executed when a particular test suite runs. A program with high test coverage, measured as a percentage, has had more of its source code executed during testing which suggests it has a lower chance of containing undetected software bugs compared to a program with low test coverage. Many different metrics can be used to calculate test coverage; some of the most basic are the percentage of program subroutines and the percentage of program statements called during execution of the test...
how about now
 
He's disregarding the function header
 
@MDXF Right, coverage only makes sense in the context of tests.
A program by itslef doesn't have code coverage
 
Well technically it does; it's just not as useful
 
5:10 AM
>_<
 
Bam back to 89%, gotta love .yml configurations
Oh no @dylnan you're back on PPCG that means I'm not going to be winning the polyglot challenge for long D:
 
@MDXF haha nah I probably won't be on for much longer
I mostly came on to take out Brainbash and fix Numberwang
 
chants tauntingly I'm only two langs ahead....
 
I might get one or two more in ;)
I think if I had left out Jelly, M, Pyon and Proton I would have been better off. Those four restrict the way I can start lines a lot
 
If any of you gets to 404 (VERY doubtful), you win for sure
 
5:14 AM
Haha that would be great
What about 44
 
We should probably have a custom site by 404
 
Because 0 is basically the empty string
 
But by then, the behemoth would've passed 404.
 
@dylnan I intentionally didn't use languages like that
I realized Py(th)on was easy to add around #25
 
prudent
I didn't think ahead at all
 
5:15 AM
@Zacharý will you bounty? (If it's not me I will for sure)
@dylnan Well I thought ahead more in the one that ended up with print(404) :P
 
True. I bet you could take that one pretty far
with fewer bytes anyway
 
If you get a polyglot that has MY, D, APL, and Fortress: I will give you a ton of rep
 
I've tried adding more, everything keeps succeeding at print(404); and I'm not eloquent enough for this joke
 
(Using unicode codepoint values for MY, APL + Fortress)
(This is unofficial, of course. Don't want those behemoth nutjobs going on this)
 
@Zacharý I'll go for it when I'm done decimating the "solve rubik's cube" challenge with Cubically's new builtin
 
5:21 AM
Two of those languages have weird-ass code pages, D is bad with polyglotting, and Fortress is ... incomplete to say the least. (RIP Fortress, you would've been the only language I program in for non-golfing purposes [maybe except APL])
 
Polyglotting with Cubically and Implicit (and soon Integral) is hard because they use the same parser and syntax
 
Polyglot D into a bunch of languages, and I might just give rep.
 
Bam. I hate myself.
But neither the language nor the builtin were made for the challenge; it's just a language that can (well, that will be able to) do virtually anything that has to do with a Rubik's Cube...
 
That's going to have some downvotes
 
I find that likely. But if every time Cubically destroys a challenge it gets downvotes, well, I'm not just going to stop winning.
Jelly wins pretty much every challenge because it's designed for ; Cubically wins pretty much every challenge because it's designed for s. But Jelly doesn't get downvoted very often, so I hope Cubically doesn't. It hasn't yet.
 
5:26 AM
I thought Cubically was just ON a Rubix cube
 
And it's not as if the builtin just prints moves to solve the cube; it works like an eval statement and sticks the moves to solve the cube in the source code. It only uses an optimal algorithm so that the interpreter has less to do
@Zacharý Nah Cubically just does anything that has to do with Rubik's Cubes
 
...
 
¯\_(ツ)_/¯ just don't downvote pls @else, feel free to not upvote though
 
I won't
 
5:42 AM
Random question: Consider BF with two different loop types (let's call them [] and {}) that function exactly the same but can be interleaved (like [{]}). You can't nest loops of one type inside each other (no [[]], no [{[]}], but yes {[][}][]. Is this TC?
 
I dunno
 
Isn't that a superset of BF? If so it is TC
 
@dylnan BF allows nesting
 
Oh nevermind
@LeakyNun thanks I didn't catch that at first
 
Can you do anything with a nested loop that you can't do with a single loop and some preparation code?
Or rather, with one-deep nested loops.
 
6:05 AM
Hello unihedron, or more appropriately polygon.
 
A unihedron is not a shape.
 
I extrapolated things, okay?
 
@Zacharý Wouldn't that be a Dihedron?
Looks like a dihedron isn't a completely trivial structure in non-Euclidean space
 
Ughh, forgot about that. I just can't seem to sleep today. So I'm doing this instead until I pass out
 
or something
@Zacharý I think the correct approach is "sleep until you can do math", not "do math until you can sleep"
 
6:19 AM
A regular polyhedron with one regular enclosing shape is called a henahedron, it exists in other geometric systems.
 
@EsolangingFruit My body should pass out in a few minutes, hopefully
 
7:02 AM
@Οurous I'm curious to know the answer to this question--or, more generally, how many levels of loop nesting you need in BF for it to be Turing-complete. If the answer is suitably small, it would make a Turing-completeness proof for Acc!! much easier.
 
 
2 hours later…
9:23 AM
hahaha, I just found this article via imgur.com/gallery/Gnd30Nm
 
Any ideas for this?
 
@Adám I disagree with that comment, the challenge makes more sense if your solution can assume that it's given a function expecting two integers and returning one. That said, you could probably make this clearer by talking about a generic blackbox function f right away and then just giving some example functions as test cases later on.
Let me see if I can find a similar challenge as an example.
Ah yeah, this is the one I was thinking of: codegolf.stackexchange.com/q/150186/8478
It's fine if languages without higher-order functions can't participate.
 
@MartinEnder Great feedback. I'll piggyback that.
@MartinEnder How should I "picture" the function? ``f: ℤ,ℤ → ℤ` ?
 
yeah, that works
normally with an x instead of a comma though
or rather an ×
 
@MartinEnder OK, but why, though? Looks like multiplication to me.
 
9:38 AM
it's a cartesian product
ℤ × ℤ is the set of all ordered pairs of integers
 
@MartinEnder {0,0} is not in the domain of ÷ or exponentiation (according to many).
 
then either ÷ is not a valid input for this challenge, or you'll need to make the spec a bit more complicated and say that you can assume that all intermediate function applications will be in the domain of the given function
 
I'll add that you can assume that the diagonal values are in the domain of the function.
 
it seems easier to restrict inputs to total functions on ℤ^2 though
 
@MartinEnder Why? Division and exponentiation are pretty basic. As long as the input will be strictly positive, there's no issue.
 
9:42 AM
because it doesn't affect the actual challenge but simplifies the spec
 
@MartinEnder Either I have to specify that the functions will be total, or that the matrices will always be in the domain. Either way, I have to add another spec rule.
 
but you can also make it f : N+ × N+ → N+ (superscript +) and allow people to assume positive integer matrices
 
@MartinEnder Hm, yeah, that doesn't detract from the challenge, and it allows n-root-m.
 
division still doesn't work though unless you make it round up
 
o/ 'Lo, all
 
9:45 AM
@MartinEnder How about ℕ⁺ × ℕ⁺ → ℤ ?
@Shaggy Just in time for the discussion of your comment. Nice!
 
doesn't help, because you need to feed the result to the next function call
 
@MartinEnder Oh, right. D'oh.
Hm, I think I'll just go with a rule that all values and intermediary values will be in the function's domain.
 
@Adám Timing! (I assume you mean the one on your sandboxed challenge?)
 
@Shaggy Yes.
 
My initial reading of the challenge implied that you had a set list of functions in mind that solutions must be able to support; your reply clarified that.
 
9:55 AM
@MartinEnder @Shaggy Ready to post?
 
"A matrix with at least two rows and two columns" -> "An integer matrix..."
 
@MartinEnder No, see examples.
 
That example is not f: ℤ × ℤ → ℤ
and requiring non-integer types adds nothing to the challenge, imho, it just makes it a pain for languages that strictly differentiate between integers and floating-point types
 
@MartinEnder Input can be all-float for convenience, no?
 
9:58 AM
The addition of the f(x,y) example and specific mention of black box functions definitely makes it clearer.
 
I'd also find the explanation clearer if you skipped straight from the regular trace example with + to using just f in your notation instead of using other operators. that's probably due to your APL background, but in most other languages, you wouldn't actually insert operators and worry about default associativity.
you'd just transform it to f(f(a,b),c) or f(a,f(b,c)).
 

« first day (2552 days earlier)      last day (2285 days later) »