« first day (1944 days earlier)      last day (2896 days later) » 

12:03 AM
@LeakyNun *F-PQ2
 
Chat mini-challenge: In a string, replace pairs of consecutive consonants with consonant+next vowel (e.g. KM -> KO, BB -> BE etc.).
Vowels: AEIOUY. Wrap around at Z.
 
500MB of solid B-files
 
@mınxomaτ did you change your avatar?
 
Yes
 
@LegionMammal978 what are B-files?
 
J mini challenge: Given a function f is defined and returns 1 or 0, find the shortest code to find the first number in a list X that has 1 = f X.
 
Do you want us to make a dyadic verb that takes f and X?
 
no, assume f is defined. and X is the element, not the list
 
If they're defined it's just {.1=fX I think
Oh, wait. Der.
I'm stupid.
I meant {.fX#X
 
   X =: 5 4 3 2 1
   {. (2&|) X # X
1
 
12:46 AM
@CᴏɴᴏʀO'Bʀɪᴇɴ Mathematica, 22 bytes: FirstCase[X,a_/;f@a>0]
 
0
Q: Classify that conic!

A Nerd - IDepending on how you cut a double cone with a plane, you can form a circle, non-circular ellipse, parabola or a hyperbola, as well as some other equations. The goal of this challenge is to take as input the equation of a graph on the plane and classify which of the above it is. The input equation...

 
@CᴏɴᴏʀO'Bʀɪᴇɴ Huh. Maybe the fX#X needs to be in parens?
 
Does anyone know the answer to:
0
Q: Word count in Google Slides?

DowngoatI have a presentation on Google Slides and I'd like to find the word count of all the words (or even just space delimited sections of text). It doesn't appear that there is any straight-forward way to do this, but surely there must be some way/hack to find this information out approximately.

 
1:03 AM
hello
 
Monring
 
@Quill evening.
 
@mınxomaτ changed his avatar?
I like it better.
 
1:19 AM
Has been my GitHub avatar for quite some time.
 
@mınxomaτ so are you a deer now?
 
@Downgoat It reminds me of the thing that Will fantasizes about in Hannibal
 
@mınxomaτ well, welcome to the bovid family!
> Programming language based on ECMAScript 4
@mınxomaτ +1
 
@Downgoat Well, I didn't invent it. I maintain it. I like ES4 (which is high level OOP language in contrast to ES 3 and ES 5) and .NET. At some point I'm going to need more people to collaborate. My goal is the re-integration in Mono.
 
1:29 AM
Why ES4 over ES3/ES5?
 
@mınxomaτ ES4 === ES6/7 === babel
babel reigns supreme once again.
 
Wait so from ES4 came ES5 which has less features?
 
that reminds me, should Cheddar have generators?
@CᴏɴᴏʀO'Bʀɪᴇɴ ES4 was abandoned
 
I'm not competing with the upstream ES here. This is strictly a compiled .NET language, with the focus on Mono compatibility. If you wanted, you could replace a library written C#, F# or VB with Turbo code.
 
1:31 AM
And yes it should
 
wat. ES7 has operator overloading ._.
 
:O GIMMEE
And goodnight
 
^^
@CᴏɴᴏʀO'Bʀɪᴇɴ night!
Oh, are you feeling better?
 
@CᴏɴᴏʀO'Bʀɪᴇɴ night!
@EᴀsᴛᴇʀʟʏIʀᴋ @CᴏɴᴏʀO'Bʀɪᴇɴ what happened, did you get sick?
 
1:33 AM
And the practical implication is that .NET teams can now integrate JS dev's into their backend (server stack or even desktop software) workflow with virtually no "learning" overhead :-)
 
@Downgoat A infection.
 
:O ES7 will be optionally typed
 
Here's a nice overview of many features already present in Turbo. OOP starts at line 567.
 
0
A: Javascript left-pad golf

DowngoatJavaScript ES7, 27 bytes (a,b,c="")=>a.padStart(b,c) built-ins ftw! Only works on Firefox 48 and above. Valid as this feature was added March 12.

\o/ JavaScript actually had a built-in for something!
 
Solid ad work. https://t.co/pqqawsZtur
 
1:41 AM
>_> would be 16 bytes: ''.padLeft.bind is I didn't have to handle presetting the second arg to 16
 
@Downgoat I thought es5 had operator overloading
 
@Quill no?
\o/ \o/ \o/ \o/ 16 bytes is actually valid:
0
A: Javascript left-pad golf

DowngoatJavaScript ES7, 16 bytes ''.padStart.bind built-ins ftw! Only works on Firefox 48 and above. Valid as this feature was added March 12. This takes input like: (''.padStart.bind)(arg1)(arg2,arg3)

 
@Quill pls giv line number(s)
 
You link to lines numbers, you know?
 
1:46 AM
Mobile doesn't have line numbers
 
;_; why do matl built-in answers get upvoted but not my js one
 
Because js
 
O_O what did mozilla do to firefox in v48
@Quill ಠ_ಠ for not upvoting despite my three attempts to beg for them
 
oh thank god they have a dark theme now
 
@RenderSettings still, the UI feels very laggy
 
1:51 AM
they said that the devtools.theme would apply to the entire chrome for a while now, but now it actually does? :D
 
> ...whereas an entity query for a movie like “Interstellar” can result in content grouped around that entity to encourage deeper exploration, such as showing critic review...
Very elaborate pun Google...
 
I gtg to bed.
Bye!
@Downgoat done
@Downgoat s/firefox/waterfox/
 
@RenderSettings chrome dev tools has a dark theme
@EᴀsᴛᴇʀʟʏIʀᴋ night!
Irkerly East
 
@EᴀsᴛᴇʀʟʏIʀᴋ :D :D :D :D :D \o/
@EᴀsᴛᴇʀʟʏIʀᴋ bai!
 
2:23 AM
well I figured out why my code was infinite looping... I also figured out how to break c9
 
@Quill ...
BAI!!
 
@EᴀsᴛᴇʀʟʏIʀᴋ BAI (again)
 
@Downgoat o_O what you do
 
idk, it sohuld be working
 
what is it supposed to do?
 
2:25 AM
tokenizer cheddar
 
oh, this._jumpComment() was returning true incorrectly
>_> An error occurred erroring the error loading the error for the error text.
 
back
dinner has been consumed
@Downgoat ._.
 
halp, how add array of tokens in cheddar tokenizer
 
yuo tri juic?
 
2:38 AM
i haevnt tri juic, i hav no avocad lfet
 
$ sudo update-grub
Found Windows Vista (loader) on /dev/sdb1
Wat
It runs Win10
 
._.
@Downgoat no, juic token
 
< console.log(this.Code[this.Index]);
> ";"
< console.log(this.Code[this.Index] !== ";");
> true
wat
@EᴀsᴛᴇʀʟʏIʀᴋ how juic tokin
im not profeshinl juicr
 
@user46049 pls halp juic
 
u cal in profeshinl juicr? wat if he owt uv juicng muteriul
Cheddar:T_REPL> var a := 2
CheddarTokenize {
  Index: 10,
  _Tokens:
   [ 'var',
     CheddarVariableToken { Index: 5, _Tokens: [Object] },
     CheddarExpressionToken { Index: 10, _Tokens: [Object] } ] }
\o/ \o/ \o/ \o/ \o/
i juicd tokin!!1!11!!!
 
2:45 AM
@Downgoat different unicode ";"'s?
like we do in underhanded stuff
 
@Maltysen nope but i figured it out
 
what was it
 
idk, i just recompiled and it worked
 
._.
^ both to that answer, and the horrendous typos
 
2:57 AM
can anybody explain the hype around Dependency Injection?
 
@NathanMerrill yay dependency injection \o/
 
I mean, I get the fact that you should accept dependencies in your constructor, but I don't get the need for all of these fancy frameworks
 
3:10 AM
8/10 could use more dubstep
@Downgoat :DDDDD
pls email recipe
 
3:27 AM
@PhiNotPi waaaay to soft
as in volume
can't hear most of it at max volume
 
check your soundcloud volume
@PhiNotPi really nice on autoplay
 
@EᴀsᴛᴇʀʟʏIʀᴋ oh not sure when they added that
it was pretty hidden
 
lol
did it fix it?
 
ye
 
@PhiNotPi -1 not a Trump quote dubstep remix
 
3:30 AM
@PhiNotPi same criticism as before though, nice instrumentation, but it's still lacking in harmony structure
the middle section does this fine
(around 1:20)
 
0
A: Sandbox for Proposed Challenges

Roger DahlWhen would the following shell command be useful in Bash under Linux? $ cd $PWD

 
but most of it afterwards and before that is lacking
 
@NewSandboxedPosts wat
 
3:31 AM
@Quill What if it's Trump quotes being spoken at such a high frequency that your ears interpret them as pitches?
 
screenshotted for posterity
uploading to gems from stack exchange
 
Question- how is my newest challenge a duplicate of @Mego 's challenge with the same goal but different starting point?
 
@PhiNotPi that the harpsichord is in the background is fine, but when it has a solo it should increase in volume
@PhiNotPi to be a bit more specific about harmony structure, I feel that most of the time you're entirely lacking a bass
 
@orlp Unfortunately there appears to a software limitation with that: the only way I've been able to change harpsichord volume is through changing its MIDI channel volume. Normal dynamics do not seem to be applied.
 
that's correct
a harpsichord does not have individual dynamics
it works in plateaus
and you have to change the channel volume
 
3:35 AM
@EᴀsᴛᴇʀʟʏIʀᴋ i wouldn't really say it's gem-worthy but ok
 
(this models the actual harpsichord closely)
 
@Downgoat eh, kinda funny
 
@orlp TIL more about harpsichords
 
@PhiNotPi if you still have the project file for that song, as an exercise try identify the ground note in each section and add a string/brass bass to it
 
@ANerd-I Seems kinda like a deriative to me.
 
3:37 AM
@orlp I don't know how to change the channel volume halfway through a piece.
 
I don't know what soft/hardware you're using
 
should this be valid syntax:
 
yes
 
1+1;
   ;
(as in a semicolon but nothing before it)
 
wtf
I can't type the same message twice in a row (tried to respond 'yes')
test
 
3:39 AM
@Downgoat no
 
@orlp yeah, it does that
 
that makes me want to cry salty tears of XML
 
@Downgoat yes.
 
@EᴀsᴛᴇʀʟʏIʀᴋ How so? Mine has a different thing being inputted altogether and does more than just classify the conic (possibility of it being a line, plus degenerate)
 
just add a spcae at the beginning
 
3:39 AM
@orlp you can edit though.
 
@EᴀsᴛᴇʀʟʏIʀᴋ k
 
@EᴀsᴛᴇʀʟʏIʀᴋ what if I want to respond yes twice?
 
@ANerd-I Can't you calculate the equation from the points?
 
it's a stupid 'helpful' thing
if I send the same message twice, it should let me
 
@orlp You say "yeah", or say "avocad" and edit to "yes".
like this
like this
 
3:40 AM
@orlp Finale with Garritan sounds
 
@EᴀsᴛᴇʀʟʏIʀᴋ Yes, but it's not 100% necessary. Also, you can't check for degeneracy from points alone.
 
@orlp that's what happens when you have a chat system that works off a race condition
 
TBH, I don't really know how to write base lines.
 
If I turned off duplicate content packets in my terminal script there would be two of most things
 
3:41 AM
But, I also don't really know what one would sound like.
 
@Downgoat by the way, the standalone semicolon has a legit purpose
Python has pass for that purpose
 
like?
 
@orlp python pass is redundant, if python was made properly, it wouldn't need to exist
 
damnit
so many people ninja you to the xkcd
 
3:42 AM
@EᴀsᴛᴇʀʟʏIʀᴋ ;_; I don't get this one
 
@Downgoat me neither. :(
 
you're like three days late @EᴀsᴛᴇʀʟʏIʀᴋ
 
@EᴀsᴛᴇʀʟʏIʀᴋ ohh
 
perks of a XKCD feed
 
3:44 AM
damnit
 
it's like Photoshops healing-brush/patch tool compared to GNU patch which is like a merge thing
 
pls star for ht egoodness of quitupile rnainbo
6
 
@EᴀsᴛᴇʀʟʏIʀᴋ you've been ninja'd to that too
 
@EᴀsᴛᴇʀʟʏIʀᴋ r u tieping wit avocad or sumtin?
 
3:45 AM
I just killed a kitten in Nethack....
 
actually my cat's paw, but whatever
@Quill :(
 
@Quill ;_: y u do dis
 
was it your pet?
 
no, I just attacked it
it would've got me first
 
if not, then it had been turned by Moloch away from the goodness of avocad
 
3:46 AM
@PhiNotPi I don't know that
 
 
don't feel bad then
 
it seems you're using music notation software instead of music production software though
 
@Quill are you playing on a server?
 
no
 
3:46 AM
 
I got killed by a bug because I had no stamina <_<
this game is strange
 
>_>
wait, stamina?
 
@EᴀsᴛᴇʀʟʏIʀᴋ Ninja'd
 
damnit nathan
 
3:48 AM
@Quill you should stop playing nethack and play get outgolfed by dennis you only have 369 ppcg rep
 
oh, I had a language design idea
often times you want to get both the dividend and the remainder of a number
 
Either you get FGITW'd to easy questions or you need a PhD in CS to understand the other questions
 
a, b = c some_op d
what should some_op be?
 
@NathanMerrill not really
 
:|:
 
3:51 AM
@orlp It is music notation software, everything is in the format of sheet music for various instruments.
 
I don't see what's wrong with integer division + modulo
 
nothing, its simply combining the two into a single operator
 
@NathanMerrill this is pretty much always called divmod
 
@Downgoat here's an example I ran to recently. I wanted to slice a list into groups of N
 
@NathanMerrill Must it be a symbol or are you doing word ops?
 
3:52 AM
Python has divmod
 
@orlp oooh, thanks
 
>>> divmod(134, 5)
(26, 4)
 
@Downgoat both. I think divmod is the ideal choice here
maybe
 
@NathanMerrill Have then, like Math.divmod(foo, bar)
I think divmod is to specific to be an operator. And I don't feel global functions are a good idea
 
@Downgoat foo and bar are exceptionally bad variable name choices here
 
3:53 AM
@orlp why? They are just placeholders
 
hmmm, you may be right
I'll think about it
 
@Downgoat because if brevity is important, divmod(n, M) would already explain the order of the parameters better, and otherwise you can write divmod(number, modulus)
 
What blocks should Cheddar have? At the moment I have ifs fors and whiles
 
I really like do .. while in some way
 
ew, do .. while
what is wrong with:
 
4:00 AM
I'm not necessarily proposing that syntax
I'm just saying, I like a while loop that waits with it's first check until after the first body
without explicitly encoding that with flags and stuff
or duplicating code
 
var f := () -> { /* asdf */ }
f()
while(condition) f();
 
because that's an abuse of functions
not every while body deserves its own function
 
ok, fine I'll do do..whiles
but I'll do them later
because my grammar engine will blow up if I make a code-block (the do part) optional.
and they are no lookaheads either...
 
I don't understand
you don't need lookahead
if you encounter a do, then you parse the .. while
the do .. is not an optional part of the while
that's totally backwards
 
but invalid syntax will be a problem
if I do:
 
4:06 AM
heh, do
 
do {
WU8ER*(#WUN%*#(@)NRDU#&8YrdycenyW&(387383590
} while
my interpreter will waste a lot of time trying to parse the WU8ER*(#WUN%*#(@)NRDU#&8YrdycenyW&(387383590
what should do { foo } while (bar) { baz } do?
 
and this is a problem why?
@Downgoat depends on whether you require semicolons or not
 
because I don't want my interpreter to be super slow
 
it won't be
@Downgoat your argument can be applied to anything that has something in the middle though
consider your function syntax
() -> {
    WU8ER*(#WUN%*#(@)NRDU#&8YrdycenyW&(387383590
// no closing semicolon
this is not any different than some part of the while missing
 
while -> "do" <codeblock> "while" <expr>
while -> "do" <codeblock> "while" "(" <expr> ")"
while -> "while" "(" <expr> ")" <codeblock>
while -> "while" <expr> <codeblock>
is that what it should be?
 
4:10 AM
you haven't answered my question
2 mins ago, by orlp
@Downgoat depends on whether you require semicolons or not
 
no,s semcolons are optional
 
then it seems fine
although one thing
please don't mandate brackets around conditions
if x < 5 {
 
oh, yeah, I forgot I was going to do that
 
not if (x < 5) {
 
though now it will need to reparse the "do" <codeblock>
my grammar engine doesn't support ORs more than one token
 
4:14 AM
no
you made it more complicated than you needed to
<expr> already includes parenthesis
 
how?
oh
:|
should braces be required around code blocks?
 
@Downgoat depends on how you define code block
 
by code-block I mean the part after the if <condition>
should if 5 === 5 print "yes, 5 == 5" be valid?
 
that's a matter of style
I don't think so
 
ok, then I guess I should make a ternary
halp, how make ternary
 
4:20 AM
here's how I handled expressions/statements/codeblocks in my language
onl = optional newline
nl = newline
stmt_list ::= stmt.
stmt_list ::= stmt_list SEMICOLON onl stmt.
stmt_list ::= stmt_list nl stmt.
compound_stmt ::= OPEN_BRACE onl CLOSE_BRACE.
compound_stmt ::= OPEN_BRACE onl stmt_list onl CLOSE_BRACE.
compound_stmt ::= OPEN_BRACE onl stmt_list SEMICOLON onl CLOSE_BRACE.
 
what is onl?
 
stmt ::= compound_stmt.
stmt ::= if_stmt.
stmt ::= expr.
@Downgoat scroll up a couple lines
 
oh :|
stmt_list ::= stmt_list SEMICOLON onl stmt.
o no, left recursion
 
if_stmt ::= IF expr compound_stmt
@Downgoat yes, this grammar was for LALR
which prefers left recursion
sorry
it can handle right recursion, it's just less efficient
but by now you should be able to convert between left/right recursion
 
@orlp yeah, but that required me to grab some paper to work out and I have no paper anywhere near me
 
4:45 AM
another question: What if a func b is shorthand for a.func(b)?
 
 Cheddar:T_REPL> var a := 1; a := a + 1;
CheddarTokenize {
  Index: 23,
  _Tokens:
   [ StatementAssign { Index: 10, _Tokens: [Object] },
     StatementExpression { Index: 22, _Tokens: [Object] } ] }
\o/ \o/ \o/
 
one parameter functions only
 
@NathanMerrill what's the use of this
 
readability
so, in my previous example, divmod would be a function on Integer
 
I'd say for people coming from other languages a.func(b) would be more clear.
 
4:46 AM
4.divmod(6)
both would be valid
but you could also write 4 divmod 6
 
a func b would also get conflicts if you decided to use word operators
 
hmmm, I do
good point
won't do it
actually, no
it wouldn't conflict
because word operators are implemented using their respective functions
I'd already planned for a add b to be equivalent to a.add(b)
 
that's kinda like what ruby does for operators I guess
1 + 2 is the same as 1.+(2)
 
yeah
oooh, order of operations
a add b div c
even if it wasn't basic math, it still is unclear
 
you can add precedence to the function definition :P
 
4:55 AM
ick
then you deal with cross-object definitions, and issues if multiple functions have the same precedence
yeah, spaces aren't the way to go unless you are in postfix or prefix notation
 

« first day (1944 days earlier)      last day (2896 days later) »