« first day (116 days earlier)      last day (1148 days later) » 

12:46 AM
@Dennis Hmm did Jelly always have those time functions? Actually, taking a look at the latest commits it seems like there's still a lot of undocumented atoms :P
Hmm not sure what ØV is good for
Oh, you added time just yesterday
 
1:05 AM
@Sp3000 Yeah, I have some catching up to do... Time is brand new, and very much unfinished.
 
:/
 
Haha, yeah. I don't like it either, but there's no way to nest string literals right now...
 
What does do again?
(And the :/ is because that's one step short of a quine builtin, essentially)
 
@Sp3000 Print a string representation and return the original argument.
 
Hmm k
 
1:29 AM
And I don't disagree. I'll probably remove it once I implement some form of nested strings.
 
Sorry :P just seemed a little out of place compared with the rest
btw I see you have Øb - were you thinking of adding base64 or something?
 
1:43 AM
Might make more sense as an actual built-in than a constant...
 
 
3 hours later…
4:58 AM
@Dennis I'm surprised you decided to CJam ABACABA rather than Jelly it :P
 
Dumping all that stuff on the stack is a lot cheaper than concatenating it. For the same reason, I didn't take quintopia's suggestion to port it to Pyth.
(Disclaimer: There might be a better way to do this in Pyth. I'm not really good at golfing in Pyth.)
 
5:33 AM
Jelly just got random choice (X) and shuffle ().
 
6:08 AM
Hmm how about random range?
Oh, right. Autocast to range
Hmm not gonna work for floats though
 
ven
6:54 AM
@Dennis is there a way to pop two arguments from the array at a time, and use that as the dyad's arguments?
 
@Sp3000 No, float would need a separate atom. Ideally, one that accepts a start value, an end value and a distribution, but that's three inputs...
@ven Two arguments how? If the array is [a, b, c, d], to which elements to you want to apply the dyad?
 
ven
With +, would be a+b c+d
 
+2/ does what you want.
 
@Dennis I was thinking something like random() returning [0, 1), or random(f) returning [0, f), but I don't know how useful that is
At the very worst, you could probably use that as a building block for custom distributions (e.g. Box Muller for normal, although I'd think normal deserves an atom too)
 
7:13 AM
@Sp3000 Time will tell, I guess. There's no shortage on two-byte atoms, so I could create one for several distributions. The big question is if they should be [0, 1), [0, b) or [a, b)...
 
Why not all 3? (lol)
All seriousness though, if one had to be chosen I'd pick the first for flexibility
 
That's probably true. Also, some distributions don't even make sense for ranges. Gamma, e.g., always would be a dyad with two parameters...
 
I guess there's that too, e.g. triangular is usually low,mid,high
 
Again with the three inputs. :/ That one would work as monad, I guess. [0, 1] with customizable mid.
Or as dyad, with [0, high].
Well, I should go get some sleep. Good night!
 
Night :)
 
ven
7:41 AM
@Dennis that's awesome :o
 
ven
7:55 AM
(Congrats on the 70k)
 
 
7 hours later…
3:12 PM
Thanks! :)
 
3:51 PM
Horrific :P
ṣ⁶j”_µe€ØDỤịµżŒsX€ is 18 (I keep forgetting about ż)
 
For which challenge is this?
 
Passwordify
(It's what reminded me about time/random)
 
4:10 PM
@Sp3000 ḟØDœ|ṣ⁶j”_µżŒsX€ saves a couple.
 
Still one off Pyth :P
 
Hm, ḟØDœ|ṣ⁶j”_ŒsLX$¦ is equally long.
Pyth's r is going to be hard to beat here. It's pretty perfect for a randomized casing.
 
Hm... does vectorise?
Because after just ḟØDœ| the output is ”pa_wrd"550, which looks a bit awkward
”pa wrd"['', '', '', '5', '5', ' ', '', '0', '', '',''] <--- o_O
 
I think the œ| forked at took repr as right argument.
 
Oh... right.
shrugs good enough I guess :P
 
4:22 PM
Jelly needs some way to take three arguments for links. ṣ⁶j”_ should be possible with transliteration.
 
Transliteration would have to be a one-byte in that case I guess
 
Alternatively, I could pull a GS2 and make words/unwords and lines/unlines 1-byte built-ins. :P
 
What do they do?
 
Split/join by spaces/linefeeds.
 
Oh... hmm
Seems useful but at the same time also a bit of a waste, since it'll probably only be used once in a program
 
4:27 PM
Yeah, there's probably stuff that would be more useful in 1 byte.
On the other hand, I have three types of negation: C, N and ~ :P
 
Those are different and useful types of negation though :P
(you're also missing ¬)
 
¬ is closer to though.
 
I'd count 5 then :P
 
But C and ~ are literally N plus/minus 1.
 
How well does Jelly do recursion? e.g. have you tried Collatz?
 
4:39 PM
Recursion wouldn't be my first attempt there. ×3‘$HḂ?ÐĿ
 
How does ÐĿ determine a stopping condition again?
 
It stops when it generates the same value twice.
Not necessarily in a row.
 
... right
I'd pick a better example possibly requiring recursion, but I can't think of one atm
 
Ackermann?
 
5:32 PM
@Dennis is TIO down right now?
 
Looks like it is...
 
Arg, was in the middle of trying to write an Ackermann function in jelly :P
 
Reboots fix everything.
 
Out of curiosity, then, would ṛ‘µR’ß1µṛ¬?µ¬? be correct except that the n > 0 and m > 0 case is replaced with R?
Oh ninja'd :P
Also I noticed I made a horrible mistake or twelve, so probably just ignore that bit of code :P
 
5:57 PM
hahaha
 
Yeah I messed up making something that had to be dyadic monadic... problems kind of compounded from there :P
 
@Sp3000 Your count up forever answer can be shortened to Ṅ‘ß in the latest version of Jelly.
 
Why is this different from this? I thought if you didn't use any other separators these should be the same?
 
6:13 PM
? gives a quicklink with a certain arity, and that arity is the maximum of the arities of if clause, else clause and condition. But at parse time, the arity of the ṛ‘ chain is unknown, because it depends on the number of input arguments.
ðṛ‘ðR¬? (with explit arity 2 for the first chain) works as expected, but it's not very golfy. ṛ‘¥R¬? works as well, and saves the byte.
 
Ah, ok thanks! :)
 
 
3 hours later…
8:51 PM
Well FWIW this is what I have so far. I've been on and off struggling with the last recursive call where I'm trying to get (x-1) + (x + (y-1)) from a dyadic link where + has arity two and - can either be arity one or two with a hardcoded right value. Probably gonna relax for while and see if I do any better later on.
 
doesn't work like that. You need œṣ.
Also, you're using the wrong kind of quotes.
 
Actually, the types of quotes aren't really documented either, I guess. Probably should have a literals page then, I guess?
 
That sounds like a good idea. There's actually quite a lot to be said about literals.
 
ven
9:23 PM
I tried both quotes, and with the other ones I got a numeric answer
I'll try that tomorrow. Ty
 
ven
Oh, i need to swaperino
Well hey, at least I got a few of these symbols available at hand just because I'm french.
 
All of Jelly's symbols can be typed with a US international keyboard.
 
ven
I'm on my phone
 
Ah, OK...
Jelly is the wrong language for that.
 
ven
9:30 PM
Hahaha
It's okay, it's still plenty of fun anyways :D. If I manage to golf a few more questions, maybe I'll look at implementing some sort of test suite someway
Would help me learn a lot
 
9:42 PM
@Dennis I’ve read more “I wrote this Jelly code on my phone” in here than “I wrote this Java code on my phone” anywhere else, honestly :D
 
Both ought to be rather unpleasant.
 
I think CJam on a phone sounds most comfortable. Or maybe Lua! Mmmm.
 
ven
Pyth on my phone is fine
Well, I did write Java code on phones at times...
 
10:30 PM
@Sp3000 Rather well, I'd say.
0
A: Evaluate a minimax tree

DennisJelly, 7 bytes N߀¬¡ṂN This uses the algorithm from @xnor's answer. Try it online! or verify all test cases. How it works N߀¬¡ṂN Main link. Argument: x (array or integer) N Negate. For an array, this negates all integers in it. ¬ Logical NOT. For an array, this applies to a...

I rarely do direct ports of other answers, but this one was just too perfect for Jelly. Proper handling of edge cases ftw.
 

« first day (116 days earlier)      last day (1148 days later) »