havenwood has joined #rubinius
havenwood has quit [Remote host closed the connection]
havenwood has joined #rubinius
digitalextremist has quit [Ping timeout: 255 seconds]
decentrality has joined #rubinius
decentrality has quit [Client Quit]
elia has quit [Quit: Computer has gone to sleep.]
dimday has joined #rubinius
havenwood has quit []
lbianc has quit [Ping timeout: 272 seconds]
dimday has quit [Ping timeout: 265 seconds]
dimday has joined #rubinius
dimday has quit [Ping timeout: 265 seconds]
diegoviola has quit [Remote host closed the connection]
havenwood has joined #rubinius
dimday has joined #rubinius
dzhulk has joined #rubinius
dzhulk has quit [Quit: Leaving.]
havenwood has quit [Remote host closed the connection]
meh` has quit [Ping timeout: 240 seconds]
noop has joined #rubinius
dzhulk has joined #rubinius
dzhulk has quit [Quit: Leaving.]
dimday has quit [Remote host closed the connection]
dzhulk has joined #rubinius
flavio has joined #rubinius
flavio has joined #rubinius
buzz0763 has joined #rubinius
flavio has quit [Quit: WeeChat 0.4.1]
flavio has joined #rubinius
flavio has joined #rubinius
JohnBat26 has joined #rubinius
heroux_ has quit [Ping timeout: 245 seconds]
heroux has quit [Ping timeout: 244 seconds]
flavio has quit [Quit: WeeChat 0.4.1]
17WAAC1SG has joined #rubinius
21WAACVC4 has joined #rubinius
21WAACVC4 has quit [Remote host closed the connection]
17WAAC1SG has quit [Remote host closed the connection]
flavio has joined #rubinius
flavio has joined #rubinius
heroux has joined #rubinius
heroux_ has joined #rubinius
benlovell has joined #rubinius
elia has joined #rubinius
lbianc has joined #rubinius
postmodern has quit [Quit: Leaving]
<yorickpeterse> morning
craigp has joined #rubinius
benlovell has quit [Ping timeout: 260 seconds]
benlovell has joined #rubinius
craigp has quit [Remote host closed the connection]
craigp has joined #rubinius
craigp has quit [Remote host closed the connection]
craigp has joined #rubinius
craigp has quit [Remote host closed the connection]
craigp has joined #rubinius
craigp has quit [Remote host closed the connection]
craigp has joined #rubinius
craigp has quit [Remote host closed the connection]
craigp has joined #rubinius
benlovell has quit [Ping timeout: 244 seconds]
benlovell has joined #rubinius
lbianc_ has joined #rubinius
lbianc has quit [Ping timeout: 272 seconds]
lbianc_ is now known as lbianc
lbianc has quit [Client Quit]
craigp has quit []
lbianc has joined #rubinius
<Rotonen> brixen: https://labs.runabove.com/power8/ <- i suppose bugging them for free credits for testing / benchmarking rbx is not a bad thought? POWER8 hardware as a cloud service
JohnBat26 has quit [Quit: KVIrc 4.3.1 Aria http://www.kvirc.net/]
max96at|off is now known as max96at
meh` has joined #rubinius
benlovell has quit [Ping timeout: 260 seconds]
JohnBat26 has joined #rubinius
elia has quit [Quit: (IRC Client: textualapp.com)]
<johnmuhl> anyone else having trouble building on OS X 10.10?
elia has joined #rubinius
<Rotonen> johnmuhl: http://pastebin.com/xmbPvcZn the same?
<johnmuhl> Rotonen: no mine is something about llvm…let me try again and gist the output
<Rotonen> at least rvm seems to have a phase of simply cannot rbx currently
<Rotonen> ruby-build works for me
<Rotonen> so does compiling from git
<johnmuhl> seems unable to find a prebuilt llvm for 10.10 but pointing it at a brew installed version seems to get past that
benlovell has joined #rubinius
<johnmuhl> dies at rake install now: https://gist.github.com/johnmuhl/4c07a9fd852970c98b17
havenwood has joined #rubinius
tenderlove has joined #rubinius
cypher23 has quit [Read error: Connection reset by peer]
enebo has joined #rubinius
cypher23 has joined #rubinius
benlovell has quit [Ping timeout: 272 seconds]
elia has quit [Ping timeout: 255 seconds]
benlovell has joined #rubinius
elia has joined #rubinius
meh` has quit [Ping timeout: 244 seconds]
|jemc| has joined #rubinius
dzhulk has quit [Quit: Leaving.]
dzhulk has joined #rubinius
elia has quit [Quit: (IRC Client: textualapp.com)]
elia has joined #rubinius
max96at is now known as max96at|off
flavio has quit [Quit: WeeChat 0.4.1]
tenderlove has quit [Quit: Leaving...]
havenwood has quit [Ping timeout: 246 seconds]
havenwood has joined #rubinius
tenderlove has joined #rubinius
diegoviola has joined #rubinius
benlovell has quit [Ping timeout: 258 seconds]
max96at|off is now known as max96at
JohnBat26 has quit [Quit: KVIrc 4.3.1 Aria http://www.kvirc.net/]
amsi has joined #rubinius
elia has quit [Quit: Computer has gone to sleep.]
benlovell has joined #rubinius
benlovell has quit [Ping timeout: 265 seconds]
<brixen> johnmuhl: dies where? I don't see an error in your gist
<johnmuhl> brixen: it was just a generic "rake aborted" error; I’ll try again.
<johnmuhl> brixen: https://gist.github.com/johnmuhl/4945cb22bf476150586b I don’t see anything interesting there though
<johnmuhl> except that error :)
dzhulk1 has joined #rubinius
dzhulk has quit [Ping timeout: 265 seconds]
<brixen> johnmuhl: what ruby are you building with?
<johnmuhl> 2.1.3/4
<brixen> johnmuhl: how much memory do you have?
<brixen> and are you using gcc?
<johnmuhl> 8gb memory. How can I figure out the gcc version?
<brixen> chrisseaton: perhaps you should stop writing about what Rubinius can and can't do, since you don't actually work on the project
<chrisseaton> brixen: I'd welcome any clarifications, but when you publish an academic paper (this blog post is a summary of a paper) you must do a literature review of how other people tackle the same problem - it's not optional
<brixen> you should then be extremely careful about assertions you make about something you don't actually work on
<headius> brixen: is there a specific assertion that's not correct?
<brixen> johnmuhl: looks like it's using clang, not gcc
<headius> the only assertions I see about Rubinius are that you can't expose a specialized array (e.g. int[]) to C exts, and that C extensions prevent some optimizations (e.g. inlining)
<brixen> johnmuhl: could you run with --trace?
<brixen> chrisseaton: what are the sources you used for your "literature review" for Rubinius?
<chrisseaton> brixen: there is no peer reviewed literature describing rubinius that I could find - so I concentrated on running it to get performance results, and I studied how it was implemented. But as headius says, I don't really say much about rubinius at all. I concentrated on what I knew well - JRuby.
benlovell has joined #rubinius
<brixen> chrisseaton: you should consider changing "can't" do "does not" or "is not currently implemented", etc when talking about Rubinius
<brixen> chrisseaton: saying "can't" suggests capability, not current implementation
<chrisseaton> brixen: that's reasonable - I will do exactly that, right now
<brixen> chrisseaton: you can be much more precise
<brixen> chrisseaton: thanks
<brixen> chrisseaton: also, Rubinius is not "implemented in a native language, C++"
<brixen> parts of Rubinius are in C++
<brixen> by no means all or necessarily the most important parts
<brixen> and again, it's "currently" not "can be", etc
<enebo> chrisseaton: You could add can’t for JRuby on cext since we removed support for it :)
<brixen> chrisseaton: it's also possible to interpret C/C++ with clang machinery
<chrisseaton> brixen: indeed it is - someone should give it a go for Ruby C extensions
stormwin1 is now known as stormwind
<brixen> how do you know we're not ;)
<chrisseaton> are you?
<brixen> evan and I have talked about it for years actually
<chrisseaton> great - write a paper about it when it works
<brixen> I'll probably be doing something more pressing :)
<yorickpeterse> Does the truffle stuff already run C?
<brixen> chrisseaton: again, the point is not to suggest whether things are possible or not
<chrisseaton> yorickpeterse: yeah the C interpreter is generic - one use is Ruby C extensions but it can run arbitrary C code
<yorickpeterse> chrisseaton: what I meant was more along the lines of "is it publicly available somewhere?"
<yorickpeterse> and up to what point it's capable of running C exts
<chrisseaton> yorickpeterse: sorry, not at the moment - but I'll happily demo it and show the source code to anyone who can find me in person somewhere like RubyConf
<chrisseaton> yorickpeterse: it can run two real C extensions, but we've only implemented what we needed for those - so it won't work on a random gem at the moment
<yorickpeterse> Ah
<yorickpeterse> In unrelated news, in about 3 weeks I'll have my first production app processing 5-10k XML documents a day using Oga :D
<brixen> yorickpeterse: woot!
<enebo> yorickpeterse: cool. Did you get your parser problem figured out from last week?
<yorickpeterse> 2015 might be the year of the Rubinius-at-yorick's-place-desktop
<yorickpeterse> enebo: yes
<enebo> yorickpeterse: great
<yorickpeterse> enebo: I redid the grammar from scratch, it's now conflict free and does what I want
<headius> yorickpeterse: time to optimize yet? :-D
<|jemc|> yorickpeterse: fif you need the "lexer hack" for it?
benlovell has quit [Ping timeout: 272 seconds]
<|jemc|> s/fif/did
<enebo> yorickpeterse: I was wondering if there was a reason you could not translate the CSS2.1 grammar from the spec directly (I know it uses some higher level constructs to describe it)
<yorickpeterse> |jemc|: yes
<yorickpeterse> headius: No not yet, I actually made the lexer a bit slower with recent changes for better streaming support
<headius> ok
<yorickpeterse> enebo: I used it as a reference, but it assumes a parser that has support for * and + for recursion
<yorickpeterse> the problem was translating that to Ragel produced conflicts in the initial gramar
<yorickpeterse> * gramar
<yorickpeterse> DANG IT
<yorickpeterse> * grammar
<enebo> yeah I see.
<yorickpeterse> I'm currently fighting :nth-child() support, because even Ruby is better specified than this crap
<yorickpeterse> the W3 spec literally leaves out half of it
<yorickpeterse> getting this puppy to perform well is going to be an exciting adventure too
<|jemc|> I would think performance of the CSS selector / XPath parser wouldn't matter too much compared to the parsing of the actual content
stass has quit [Ping timeout: 255 seconds]
<yorickpeterse> Oh no, XPath/CSS overhead is much lower
<yorickpeterse> But I was referring to Oga in general
<|jemc|> ah, my mistake
<yorickpeterse> also, XPath/CSS can be cached so that you don't re-parse it when running in a loop
<|jemc|> yeah, I was thinking that same thing if perf was a problem for it
<yorickpeterse> My goal is to get the lexer running at ~25MB/sec (right now it's around 16MB/sec)
<yorickpeterse> Then I need to unfuck the parser so it doesn't cut that in 3
stass has joined #rubinius
johnmuhl has quit [Ping timeout: 272 seconds]
johnmuhl_ has joined #rubinius
locks has quit [Ping timeout: 244 seconds]
mjc_ has quit [Ping timeout: 272 seconds]
lopex has quit [Ping timeout: 272 seconds]
locks_ has joined #rubinius
lopex has joined #rubinius
mjc_ has joined #rubinius
<yorickpeterse> I wonder though, if the W3 is basically paid to write specifications, but sucks so hard at it, what did they spend the money on
<yorickpeterse> (besides cocaine)
<|jemc|> yorickpeterse: if #{country}'s parliament is basically paid to write legislation, but sucks so hard at it, what did they spend the money on?
<yorickpeterse> roundabouts
postmodern has joined #rubinius
noop has quit [Ping timeout: 244 seconds]
meh` has joined #rubinius
jnh has joined #rubinius
stass has quit [Ping timeout: 245 seconds]
<yorickpeterse> ha wtf, nth-child is really fucking crazy
stass has joined #rubinius
<yorickpeterse> when using the form :nth-child(2n+SOME_POSITIVE_INTEGER) it applies every 2nd element, with offset SOME_POSITIVE_INTEGER
<yorickpeterse> but when using :nth-child(2n-SOME_POSITIVE_INTEGER) it seems to apply a modulo to SOME_POSITIVE_INTEGER
<yorickpeterse> so there it seems to apply only when SOME_POSITIVE_INTEGER % 2 == 0
<yorickpeterse> Which nokogiri's source code seems to confirm (funny how I'm using that as a reference)
<yorickpeterse> also funny how I had to write JS to figure that out
johnmuhl_ has quit [Ping timeout: 244 seconds]
chrisseaton has quit [Ping timeout: 244 seconds]
johnmuhl_ has joined #rubinius
chrisseaton has joined #rubinius
stass has quit [Read error: Connection reset by peer]
dlackty has quit [Ping timeout: 272 seconds]
guilleiguaran___ has quit [Ping timeout: 272 seconds]
dlackty has joined #rubinius
guilleiguaran___ has joined #rubinius
<jnh> hola
<yorickpeterse> except when apparently using stuff like 4n-5 or 4n-7, where the behaviour is totally different
<yorickpeterse> argh
stass has joined #rubinius
<|jemc|> jnh: holaback
<Gibheer> yorickpeterse: that sounds like someone was very drunk
<yorickpeterse> Gibheer: sounds like Ruby
<yorickpeterse> :D
<yorickpeterse> but yes, this is really weird
<yorickpeterse> but I'm trying to understand _why_ that's there in the first place
<yorickpeterse> That is, what assumption/specification it's based on
<yorickpeterse> that doesn't explain why/how though
<yorickpeterse> as an example, there's this: http://css-tricks.com/how-nth-child-works/
<yorickpeterse> "The trick is understanding the "n" and algebraic expression that represents. Think of "n" as starting at zero and then a set of all positive integers"
<brixen> johnmuhl_: sorry, got interrupted
<yorickpeterse> ^ I've seen that multiple times now, but never do they explain why they pick 0 to 10
<yorickpeterse> and not 45 - 98
<yorickpeterse> oh ffs, even https://developer.mozilla.org/en-US/docs/Web/CSS/:nth-child ignores the negative range
<johnmuhl_> brixen: any idea how I can fix that?
<brixen> johnmuhl_: I'll push a fix
<yopp> chrisseaton, about cext, I'm not quite sure that I'm getting this right: you will compile C extensions with some ruby environment specific optimizations?
<johnmuhl_> brixen: thanks!
<chrisseaton> yopp: we JIT the C extension source code, like we do Ruby or JS - there's no ahead of time compilation
<chrisseaton> yopp: very enthusiastic to talk but shall we take it into #jruby?
<yopp> sure
benlovell has joined #rubinius
<yorickpeterse> https://gist.github.com/YorickPeterse/e34e2b77a7cbdad1ea0b (╯°□°)╯︵ ┻━┻
<yorickpeterse> I literally can't find a pattern here
benlovell has quit [Ping timeout: 265 seconds]
<yorickpeterse> Gibheer: I can't seem to confirm that using Chromium's CSS engine
<yorickpeterse> e.g. for 4n-7 that would be 7 % 4
<yorickpeterse> which is 3
<yorickpeterse> but 4n+3 yields different nodes
<yorickpeterse> Also, the resulting XPath Nokogiri spits out contains no mention of "3" in this case
<yorickpeterse> 4n-7 => //*[((count(preceding-sibling::*) + 1) >= 1) and ((((count(preceding-sibling::*) + 1)-1) mod 4) = 0)]
<yorickpeterse> щ(゚д゚щ)
<yorickpeterse> Judging by my Google Fu it seems almost nobody understands how this works
<Gibheer> oh man, that is really confusing
<yorickpeterse> when using 2n-X then it _is_ X % 2
<yorickpeterse> so 2n-4 is the same as 2n-(4%2) == 2n-0 == 2n
<Gibheer> yeah, they got #201 wrong
<yorickpeterse> #201 ?
<yorickpeterse> oh, the line
<Gibheer> yeah
<yorickpeterse> I'm not sure tbh, lemme see what Noko spits out
<Gibheer> I mean, if yours is right, then substracting % X from a is just wrong
nirvdrum has joined #rubinius
<yorickpeterse> Nokogiri's XPath is correct
<yorickpeterse> matches Chromium's behaviour
<yorickpeterse> also lol at all these websites trying to explain nth-child but none of them covering the above cases
<yorickpeterse> They all cover even, odd, Xn, Xn+y and that's about it
<yorickpeterse> none so far covered Xn-Y
<yorickpeterse> even CSS tricks glosses over it
<Gibheer> tbh, I didn't even think negative values would work
<Gibheer> maybe no one ever tried, apart from the one guy who put it into nokogiri
<yorickpeterse> there's literally 1 line in the W3 spec on it
<yorickpeterse> http://www.w3.org/TR/css3-selectors/#nth-child-pseudo search for ":nth-child(10n+-1)"
<yorickpeterse> errr
<yorickpeterse> 2 lines above that one
<yorickpeterse> but yeah, still 1 line
elia has joined #rubinius
<Gibheer> yeah, just found it
<Gibheer> and then the code makes sense
<yorickpeterse> It does for that one example, as 10n-1 is easy to grok
<Gibheer> it turns negative values to positive ones, as the spec more or less says it is the same
<yorickpeterse> but 4n-3 makes zero fucking sense
<yorickpeterse> 4n-3 would match 1, 5, 9, 13
<headius> I remember having some problem getting nth child to do what I expected
<headius> I had to write an XSL stylesheet to turn an XML doc into fixed-width three-column output for a mainframe
<yorickpeterse> so far I've read 67 articles on this
<yorickpeterse> _none_ explained what I need
<headius> wrestled with nth child for a good day at least
<enebo> headius: mode is your friend for column output
<headius> enebo: no idea if I looked at that or if it was available in 2004
<headius> whatever I used it ended up being so ungodly slow I just wrote a small program instead
<headius> like 1000x faster than the xsl version
stass has quit [Ping timeout: 265 seconds]
stass has joined #rubinius
max96at is now known as max96at|off
havenwood has quit [Remote host closed the connection]
havenwood has joined #rubinius
elia has quit [Ping timeout: 272 seconds]
elia has joined #rubinius
elia has quit [Read error: Connection reset by peer]
elia has joined #rubinius
elia has quit [Read error: Connection reset by peer]
elia has joined #rubinius
dzhulk1 has quit [Quit: Leaving.]
benlovell has joined #rubinius
_elia has joined #rubinius
elia has quit [Ping timeout: 250 seconds]
benlovell has quit [Ping timeout: 255 seconds]
_elia has quit [Ping timeout: 265 seconds]
elia has joined #rubinius
_elia has joined #rubinius
elia has quit [Ping timeout: 258 seconds]
elia has joined #rubinius
_elia has quit [Read error: Connection reset by peer]
elia has quit [Ping timeout: 245 seconds]
elia has joined #rubinius
nirvdrum has quit [Ping timeout: 265 seconds]
elia has quit [Ping timeout: 256 seconds]
_elia has joined #rubinius
_elia has quit [Quit: Computer has gone to sleep.]
elia has joined #rubinius
locks_ is now known as locks
whatasunnyday has joined #rubinius
elia has quit [Quit: Computer has gone to sleep.]
|jemc| has quit [Ping timeout: 245 seconds]
enebo has quit [Quit: enebo]
whatasunnyday has quit [Quit: whatasunnyday]
benlovell has joined #rubinius