« first day (1921 days earlier)   

10:00 PM
@CᴏɴᴏʀO'Bʀɪᴇɴ did I make a mistake?
 
@quartata no, gross
 
@orlp verb = modified_verb+ and verb = '(' verb ')' / verb_part adverb_part?
 
@CᴏɴᴏʀO'Bʀɪᴇɴ which rule is defined twice?
 
@quartata if this is for a cube, wouldn't it be width, height, depth?
 
beginning of two sections
 
10:00 PM
@NathanMerrill I was thinking a triangle
 
@CᴏɴᴏʀO'Bʀɪᴇɴ oops, that was old code
 
I was just trying to think of something random off the top of my head
 
I still think you'd make a sides tuple
 
@orlp which one? :P
 
or list
 
10:01 PM
@CᴏɴᴏʀO'Bʀɪᴇɴ I edited
 
hmmm...if you had a line object
 
@NathanMerrill what if I need (side1 ^ 2 + side2 ^2) / side3?
 
I guess number is missing
 
@CᴏɴᴏʀO'Bʀɪᴇɴ then you need better names
 
10:01 PM
but that one is easy
 
@orlp yeah, other than that it looks good
 
because if I was calling your function, I don't know that side 1 and side 3 are different
 
@CᴏɴᴏʀO'Bʀɪᴇɴ ok, now to try it out
 
but your equation definitely treats them differently
 
10:02 PM
when I write verb1 verb2, what does that mean?
e.g. + *
 
@orlp without anything else?
 
@El'endiaStarman I know you like the mantra of "give the programmer as much power as you can" (which I don't), but I'm curious if you can give me a reason why disallowing numbers in variable names is a bad idea.
 
@CᴏɴᴏʀO'Bʀɪᴇɴ well, I assume that one case solves all?
 
@orlp well, alone it's a verb. I assume we're not applying the verb yet.
 
(+ *) + should just be the result of (+ *) combined with +, no?
 
10:04 PM
yes.
 
so, what happens when I combine two binary operators?
 
a ternary is born!
 
a new binary verb is created. it's the same thing as doing it regularly - 3 (+ *) 5 = 3 + * 5
 
well, 3 + * 5 is meaningless to me
since that was the whole question
what is + *
 
operators can be both binary or unary
3 + * 5 = 3 + (* 5)
in this case it uses the unary definition of *
 
10:07 PM
then what is the point of the whole verb combining?
 
it depends on the number of verbs combined
for example, 3 (- * +) 5 = (3 - 5) * (3 + 5)
 
so what is the rule behind it?
 
and - - * + = - (- * +) which is just an application
@orlp Let f, g, h be verbs and a, b be numbers. Then, a (f g h) b = (a f b) g (a h b)
 
@CᴏɴᴏʀO'Bʀɪᴇɴ yeah, but what is the underlying rule
e.g. that explains to me what to do for 1, 2, 3, 10, 500 operators
 
okay
lemme look :P
e is also a verb: e f g h means e (f g h)
d is also a verb: d e f g h means d e (f g h)
and finally
            even:  (a b c ...)    means   hook (a (b c ...))

            odd :  (a b c ...)    means   fork (a b (c ...))
where a, b, c... are verbs
oh wait forks and hooks
           (f g h) y    =    (f y) g (h y)       monadic fork

         x (f g h) y    =  (x f y) g (x h y)     dyadic  fork

           (f g)   y    =       y  f (g y)       monadic hook

         x (f g)   y    =       x  f (g y)       dyadic  hook
 
10:18 PM
yeah this is a bit too much for me to quickly implement :P
that's nothing really to do with the parsing part though
 
Here's how I think you could parse this super easily. First have class Verb and subclasses Hook and Fork, which store their associated char and any arguments or adverbs, as well as class Datum.
Then take your line of code remove the whitespace and split/tokenize appropriately
 
@NathanMerrill Well, then you cant have class graphics3d and class graphics2d
 
Then, take your list of tokens and iterate through it.
 
@quartata the grammar I gave is correct I believe
the parsing is no longer the problem
 
10:24 PM
if the arity of the token is 0 create a new Datum out of it, place it in a list and note the index of it in another array. Otherwise create a verb and pace it in the list
 
the problem is now taking the parse and attaching behavior to it :)
 
@orlp Oh, nevernind then
 
I'm on mobile anyways so I'm hppy I do not hve to type this all out
 
10:26 PM
stupid a key
 
> yh
ftfy
 
1
Q: Calculate the Gamma function for half-integer arguments

anatolygGamma function is defined as It is a well-known fact that for positive integers it coincides with a properly shifted factorial function: Γ(n) = (n - 1)!. However, a less famous fact is Γ(1/2) = π1/2 Actually, the Gamma function can be evaluated for all half-integer arguments, and the res...

 
We're doing pngrmmtic lipogrms now?
 
10:27 PM
@phase Did you still need Owk whitelisted for PPCGMC?
 
@MarsUltor yeah
 
@NewMainPosts dupe I think
 
@CᴏɴᴏʀO'Bʀɪᴇɴ why delete?
 
I think I misred the question
 
Oh, nevermind.
 
10:29 PM
yeah
We have one with no builtins, just not with builtins.
 
No this is different
 
@EᴀsᴛᴇʀʟʏIʀᴋ i.e. we have the interesting version and now the uninteresting version?
 
Let's see if I can beat Dennis to a M solution
 
10:30 PM
Q_Q riker.com is taken...
@AlexA. yeah.
:(
 
@CᴏɴᴏʀO'Bʀɪᴇɴ Dennis' other golfing language
 
no not really
 
10:31 PM
The name is a reference to a German film so only like 3 people in the world will get the reference
 
Isn't M the same as Jelly but specialized in precision?
 
It's newer than Jelly
 
I've never heard/seen it
 
@AlexA. cough cough
 
10:32 PM
It's on GitHub somewhere and has been used, however infrequently, here
 
@EᴀsᴛᴇʀʟʏIʀᴋ you are "HecarimIsBeast" right?
 
it has rationals which is why it'll be good here
 
@HelkaHomba I am EasterlyIrk.
 
in minecraft
 
10:33 PM
in mc, yes
 
@HelkaHomba what do you think of my rainbowlify formula?
 
EasterlyIrk in both.
I used to be brikerw in mc, but changed my name.
who is HecarimIsBeast?
@Downgoat can you help give Irkbot a brain?
 
@EᴀsᴛᴇʀʟʏIʀᴋ you could use Chatgoats brain
 
@EᴀsᴛᴇʀʟʏIʀᴋ Ask Geobits for one of Marky's brains. They're in Python with tensorflow
 
@MarsUltor oooh, good use case
 
10:39 PM
@EᴀsᴛᴇʀʟʏIʀᴋ Your mc name is EasterlyIrk?
 
@quartata if irkbot uses Marky, I'm banning it... I cant have a homicidal AI running around Slack
 
@Downgoat Chatgoat is written in JS so he can't really use it. Plus Marky's old brain was pretty normal.
 
@Everyone halp should I make my JS class-based or function-based?
 
This new brain is based on movie quotes which is why he's a little nuts
@MarsUltor If you're using js for OO you're doing it wrong
 
@quartata ?
Why?
@Downgoat help
 
10:44 PM
a. js uses prototypes which are weird b. the whole point of js was it was supposed to bring scheme to the web which is why its functional tools are more powerful
 
@quartata But JS OOP is still really good
 
what are you making anyways
 
^^
 
Some canvas stuff
 
@Downgoat you just said a couple days ago you hated prototypes make up your mind jeez
 
10:46 PM
@quartata no wonder I like JS so much
functional ftw
 
It isn't really all that functional but it has more functional to it than most imperative lnguages
 
Chat mini challenge: given two integers input in a convenient format, output the reduced fraction form. E.g., 30, 90 => 1, 3 and 300, 300 => 1,1
 
@quartata yeah i do
 
0
Q: Strings from 'a' to '999'

Simon LandryThe task is to generate all the strings from 'a' to '999' including upper case characters like so: 'a','b','c' ... 'y', 'z', 'A', 'B', 'C' ... 'Y', 'Z', '0', '1', 2' ... '8', '9', 'aa', 'ab', 'ac'... 'az', 'aA', 'aB'... 'aZ', 'a0' .. 'a9', 'ba' and so on (filling in the gaps). Input: The amo...

 
@quartata o_o I probably wont be using any langs less functional than javascript. I am a functional prorammer.
 
10:48 PM
is 200% a OOP programmer
 
Human, 9months+18years: input 30,90 => 1,3
 
2143543523 and 234095235?
 
@CᴏɴᴏʀO'Bʀɪᴇɴ by the way did I mention to you the glories of racket
 
@MarsUltor Pure Object Oriented Programming
 
@quartata what's that racket? :P never heard of it
 
10:49 PM
its a scheme flavor
it's so up your alley
you'll like it better than haskell
 
thank god it has regex
 
good regex too. pcre
 
:o
I need to learn pcre now
so wait it has ;; for comments?
and you can define HTML with it? wow
 
10:54 PM
It has a couple different comment symbols. #; is another
 
huh. what else?
 
I'll show you the ropes later
 
ok
I'm reading their quick tutorial thingy
> After all, a picture is worth five hundred “hello world”s.
 
Not a day goes by where I don't get the urge to slap a Realtek developer in the face.
 
@CᴏɴᴏʀO'Bʀɪᴇɴ ES6, 51 bytes: f=m=>n=>[m,n].map(_=>_/(a=>b=>b?f(b)(a%b):a)(m)(n))
 
10:58 PM
wow, way to curry
 
@CᴏɴᴏʀO'Bʀɪᴇɴ IDK if it works, posted using IE
 
lemme check, and wow
nope
[NaN, NaN]
 
oh wait
 
@orlp shiny
 
f=a=>b=>b?f(b)(a%b):a;g=m=>n=>[m,n].map(_=>_/f(m)(n))
 
11:02 PM
that seems to work
I wonder if uncurrying f makes it shorter
 
@CᴏɴᴏʀO'Bʀɪᴇɴ No, (a,b) vs a=>b
3 bytes vs 2 bytes, and function call is 4 bytes vs 3 bytes
Wait, it's the same length
 
yah
I just worked it out myself XD
f=a=>b=>b?f(b)(a%b):a;g=m=>n=>[m,n].map(_=>_/f(m)(n))
f=(a,b)=>b?f(b)(a%b):a;g=m=>n=>[m,n].map(_=>_/f(m,n))
 
I don't think you need the g=.
 
oh, you don't
 
@mınxomaτ :P Why so?
Stupid internet
 
11:14 PM
@NewMainPosts holy shit cinnamon gum can totally win this challenge
quick to the computer
 
@AlexA. It's like they have a fixed quota of how many bugs they have to put into their hardware and drivers. Their stuff is really inconceivably terrible.
 
What do they make?
 
OEM components like WiFi/BT modules, integrated audio cards etc.
 
0
Q: Can I use jQuery/JS to rotate a canvas image?

Ashwin GuptaSimple question, I'm drawing an image on the canvas using ctx.drawImage(img, 500, 500); I want to rotate this image around its central axis an undetermined degrees measure (somewhere from 0-360). I know that there is a jQuery library called jQuery rotate. However, I looked at the API of this, and...

 
@AlexA. For you: Everything that would be produced by Broadcom in a Mac is Realtek in PCs.
 
11:18 PM
Ah, okay
 
@AshwinGupta USE JS FOR THE LOVE OF GOD
 
@CᴏɴᴏʀO'Bʀɪᴇɴ um excuse me? I am I thought.
 
@AlexA. I never use underscores
 
11:19 PM
ugg why does zopfli take so long
 
Well 1) JQUERRY is written in JS. 2)Why not, a friend recomended it to me?
 
@Doorknob I used to but I switched a long time ago and I forget why
 
less compressing more winning
 
@AlexA. I use asterisks for both, unless I'm writing something that contains visible asterisks, then I use underscores for both to reduce insanity while editing
 
@CᴏɴᴏʀO'Bʀɪᴇɴ so how do i use js to do this?
 
11:20 PM
@AlexA. 𝐓𝐡𝐫𝐨𝐮𝐠𝐡 𝐭𝐡𝐞 𝐦𝐢𝐠𝐡𝐭𝐲 𝑝𝑜𝑤𝑒𝑟 𝑜𝑓 𝑢𝑛𝑖𝑐𝑜𝑑𝑒.
2
 
Reducing insanity is itself an exercise in insanity
@mınxomaτ ._.
 
k
@AlexA. doesn't only #1 work?
hi
 
oh shit.
never knew that.
_whats the escape char?_
k got it.
 
11:21 PM
You can't mix them in a single instance, so you can't use __hi** but you can switch back and for so **hi** __hi__ works
hi** *hi* __hi
 
hi
hi
Putting the strikethrough inside or outside the bold still works
 

Sandbox

Where you can play with chat features (except flagging) and ch...
 
erm, U didn't see that =/
 
@Doorknob Oops. Thanks... :)
 
11:23 PM
 
Dammit, it compressed to 14 bytes. Not short enough.
 
@AshwinGupta Nope
 
yeah just figured that out xD
woop. That was not what I meant to do.
 
@NathanMerrill I think it's a very common practice to have variable names like foo1 and foo2, which would have to be differentiated in another way if names can't have numbers.
 
fooone and footwo
 
11:27 PM
@trichoplax fooo and foot
 
lol that's even worse
 
ugggghhh 15 bytes
 
how about roman numerals.
 
This is exactly the kind of challenge that Cinnamon Gum is for
 
11:28 PM
f_I and f_II
 
but somehow zopfli made it longer and bb96 only compressed the regex by 3 bytes
 
@AshwinGupta ಠ_______________ಠ my answer will be use jquer
 
@Downgoat yeah how....
 
does the canvas rotate function not cut it?
just change the css rotate property
 
it will rotate the whole canvas though?
I have other stuff that can't be rotated.
Like meh aliens and background and stuff.
 
11:30 PM
so you want to rotate just an image?
 
Yeah that's less useful than alert('please tilt your head')
 
missiles, when the aliens fire at angle theta, the missile should be rotated to theta.
 
@AshwinGupta use canvas save and restore then
 
Not a problem for user missiles, they are just fired at 90 every time.
Code?
Idk if I get what you mean.
 
11:31 PM
@AshwinGupta for missiles I'd say to dynamically draw them rather than use bitmaps
 
I wonder how LZString would do on this.
 
first google result:
28
Q: HTML5 Canvas Rotate Image

Max William VitorinojQuery('#carregar').click(function(){ var canvas = document.getElementById('canvas'); var image = document.getElementById('image'); var element = canvas.getContext("2d"); element.clearRect(0, 0, canvas.width, canvas.height); element.drawImage(image, 0, 0, 300, 300); }); jsfiddle.net/braziel/...

 
@trichoplax currently gonna go w/ that if I can't get an answer.
 
lol
 
@quartata LZString uses unicode chars with very high code points too
 
11:32 PM
@Downgoat oh you mean like w/ the code not an image.
 
It compresses to 13 bytes which is a byte shorter.
I should probably add LZString as a compression option.
 
@AshwinGupta yeah
 
context.rotate(degrees*Math.PI/180);
but that rotates the WHOLE canvas^
 
it'll be much easier and faster
 
Not good enough to even beat Pyth though.
urggghhh
 
11:33 PM
@AshwinGupta ... read the rest ...
 
@Downgoat yeah but it will look less cool. Btw, how does that help me if they are dynamic, can I rotate dynamic drawings easier?
 
The first time we get a new kolmogorov complexity challenge that's right up cinnamon gum's alley and the regex is too short to compress well
 
@AshwinGupta yeah
 
@AshwinGupta working on your thing
 
@CᴏɴᴏʀO'Bʀɪᴇɴ oh ok lol ty
@Downgoat mkay.
 
11:34 PM
the best option would be to make this completely out of absolutely positioned HTML elemnts, that would be faster and more flexible & easier imo
 
Than drawing images and shapes on a specific graphics canvas? idk..
maybe for chess or something
 
0
Q: Filter out the non-pi!

Kenny LauYour task is to write a program that will filter out those who do not belong to pi. You may use an estimate to the value of pi if it cannot be done. 355/113 would be a good estimate. Let's say we received the string "123456781234577812345678". We also have a pointer on pi: 314159265... ^ So...

 
Do you know the canvas#rotate method @AshwinGupta?
 
@Dennis Can you pull Cinnamon Gum?
Finally did the escaping correctly lmao
 
yup, thats what downgoat showed me. Problem is, I don't know if that will work yet, I'm checking it out.
 
11:38 PM
if there was ever a situation where that backslash xkcd was relevant now would certainly be it
 
@Downgoat what do you mean by that? You mean the missiles and aliens and stuff?
 
@quartata Pulled.
 
@Dennis Thanks.
 
Dennis is a master of pulling.
 
What the heck it still doesn't work
this is really starting to annoy me
 
11:41 PM
@AshwinGupta pretty much. HTML canvas is an absolute pain to work. With HTML you can take full advantage of CSS and its optimizations
 
Is it just me or is SE really slow?
 
CSS = Crappy Shit Stick?
 
@Adnan just you
 
dammit
 
@Downgoat I supposed I could. Am I able to pos HTML elements by just specifying x & y coords through JS?
 
11:41 PM
@Adnan I'm slow
 
@AlexA. git pull my-finger
 
It should work.
 
@quartata Use Static!
 
@Dennis ( ͡° ͜ʖ ͡°)
 
@quartata he ninja'd you
 
11:42 PM
@AshwinGupta yeah
 
@quartata I choose you!
 
Oh you know what it is
Actually, no
I'm still confused
 
@Downgoat hm, I'll look into it
It shouldn't change any of my logic, just graphics rendering.
 
@AshwinGupta make the elemnents position: absolute and put everything in a position: relative div.
 
and it would certainly make rotation easier =/
 
11:43 PM
then just modify top and left CSS
 
@Downgoat ok 1 tiny problem, IDK html. I just know enough so I can put the script tag into a blank website.
 
@AshwinGupta what are you trying to rotate?
 
@AshwinGupta lemme write up an example document
 
I suppose its time to learn.
@Downgoat sure ty.
@HelkaHomba missiles. Fired at angle theta, it needs to be rotated that much. Issue is, they are images drawn on canvas.
 
11:43 PM
Oh, TIL about re.escape()
 
 <div id="ref">
    <canvas id="render"></canvas>
</div>
 
@Dennis Can you pull again?
 
then do something like this to add elements:
 
@quartata That's when you've broken out once but were recaptured and have to do it again
 
@quartata In a minute.
 
11:44 PM
@Dennis All right
 
@Downgoat if the canvas is the only thing in the div, shouldn't I just directly reference render...?
 
var elem = document.createElement('div');
elem.style.position = "absolute";
// more element configuration
document.getElementById('ref').appendChild(elem);
@AshwinGupta no, because JS doesn't have good insertAfter and insertBefore support
 
Ok ty :D
@Downgoat oh okay.
 
@AshwinGupta does context.rotate not help?
 
@AshwinGupta np, gl on your game.
 
11:45 PM
ty
@HelkaHomba maybe* see previous discussion. I'll look at it.
ok bye gtg finish hw, will be back soon.
 
$ cpm install math
Attempting to install math...
Attempting to install from github.com/cheddar-lang/cheddar-libs/trunk/math/config.ini...

Retrieved package:
math, "Math Library for Cheddar"
\o/ \o/ \o/ Cheddar package manager works
 

« first day (1921 days earlier)