chap has quit [Quit: bb]
elia has quit [Quit: Computer has gone to sleep.]
e_dub has joined #opal
ryanstout has joined #opal
ryanstout has quit [Client Quit]
jurbat has joined #opal
e_dub has quit [Ping timeout: 276 seconds]
e_dub has joined #opal
jurbat has quit [Ping timeout: 246 seconds]
_whitelogger_ has joined #opal
_whitelogger has quit [Remote host closed the connection]
chap has joined #opal
_whitelogger_ has joined #opal
e_dub has quit [Ping timeout: 276 seconds]
e_dub has joined #opal
elia has joined #opal
<meh`> elia, ping
<elia> meh`: here I am
<meh`> elia, do you know anything about the constant lookup stuff in opal?
<elia> I think I saw it trying to port uri from ruby2 stdlib
<meh`> this bug is blocking me on opal-browser
<elia> meh`: have you tried looking for the bug in runtime.js
<elia> i think the core of constants lookup is create_scope…
<meh`> elia, I think it's harder than that
<meh`> and I don't know enough to start looking around
<meh`> it really makes no sense as bug
<meh`> even if I fully scope the name of the constant
<meh`> it says it can't find it
<meh`> but it's definitely there
<meh`> and I wish opal-spec added sourcemaps
<meh`> because it's impossible to backtrace the errors
<elia> got nothing out of the browser debugger?
<meh`> elia, nope, I tried tho
<meh`> for some reasons constants are completely fucked up
<elia> we probably need to import some more constants related specs from rubyspec
<meh`> yeah
<meh`> elia, https://github.com/opal/opal-browser/tree/error if you want to give it a shot
<meh`> uncomment the requires at the end of dom/event.rb
<elia> and maybe try reimplementing from scratch
<elia> I have no time, but if I accidentally discover somthing I'll report back :)
<meh`> roger
kludge` has quit [Ping timeout: 276 seconds]
kludge` has joined #opal
<elia> ouch!
<meh`> I don't even
elia has quit [Ping timeout: 268 seconds]
elia has joined #opal
lupine has quit [Ping timeout: 260 seconds]
e_dub has quit [Ping timeout: 260 seconds]
lupine has joined #opal
e_dub has joined #opal
<meh`> Class#=== seems to be broken
<meh`> a._klass == c
<meh`> true
<meh`> c["$==="](a)
<meh`> false
<meh`> where's adam :(
chap has quit [Quit: bb]
<meh`> lol
<meh`> this bug is huge
<meh`> I think
<meh`> nope, it's proper
<meh`> I'm the retard I guess
GitHub41 has joined #opal
GitHub41 has left #opal [#opal]
<GitHub41> opal/master cf7661b meh: Fix Native.=== on subclasses
<GitHub41> [opal] meh pushed 1 new commit to master: http://git.io/2P1iWA
travis-ci has joined #opal
<travis-ci> [travis-ci] opal/opal#765 (master - cf7661b : meh): The build passed.
travis-ci has left #opal [#opal]
<travis-ci> [travis-ci] Build details : http://travis-ci.org/opal/opal/builds/9605066
GitHub127 has joined #opal
<GitHub127> [opal] meh pushed 1 new commit to master: http://git.io/3DN18Q
GitHub127 has left #opal [#opal]
<GitHub127> opal/master 6c45580 meh: Prohibit instantiation of non derived Native, use Native::Object instead
travis-ci has joined #opal
<travis-ci> [travis-ci] Build details : http://travis-ci.org/opal/opal/builds/9605806
<travis-ci> [travis-ci] opal/opal#766 (master - 6c45580 : meh): The build passed.
travis-ci has left #opal [#opal]
e_dub has quit [Ping timeout: 268 seconds]
e_dub has joined #opal
elia has quit [Ping timeout: 240 seconds]
jurbat has joined #opal
elia has joined #opal
jurbat has quit [Quit: Computer has gone to sleep.]
<meh`> elia, any clue about where the hell adam is?
<meh`> we need our overlord
<elia> nope, yes, try by email
<elia> …maybe he gets them on the smartphone
<meh`> but I need his full capabilities, that constant lookup bug is making me rage
elia has quit [Ping timeout: 264 seconds]
adambeynon has joined #opal
<meh`> adambeynon, finally!
<meh`> adambeynon, ready for some bug fixing? ( ≖‿≖)
<adambeynon> yeahhhhhhhh
<meh`> adambeynon, constants
<meh`> they're broken
<adambeynon> might need a bit more info ;)
<meh`> adambeynon, clone opal-browser
<meh`> then checkout events
<meh`> then bundle exec rake
<meh`> NameError: uninitialized constant Object::Definition
<meh`> start from event.rb and the files it requires at the end
<adambeynon> cloning..
<adambeynon> class Definition < Definition
<meh`> yes, that should work
<adambeynon> wheres the base Definition defined?
<meh`> it's inside a module
<meh`> in event
<meh`> Event::Definition
<meh`> but you're already inside Event
<meh`> so it's in scope
<meh`> but even if you fully scope the constant
<meh`> it says it can't find it
<meh`> I tried
<adambeynon> right, this is why we need some docs on require
<adambeynon> in sprockets
<adambeynon> all requires are added before the source file
<meh`> ah
<adambeynon> so even though you require() afterwards
<meh`> :|
<adambeynon> yeh...
<adambeynon> sprockets limitation
<meh`> and this is why I hate sprockets
<adambeynon> lolz
<meh`> how can I use anything else?
<meh`> or any way to solve it that doesn't suck
<adambeynon> well, you can, but if you dont have it working under sprockets, it would limit it in any rails based build env
<meh`> :(
<meh`> and this is why I hate sprockets²
<adambeynon> what if event.rb just loaded event/base.rb
<adambeynon> whch contained Definition
<adambeynon> then, event/ui.rb etc can all require base.rb
<adambeynon> basically, move all that stuff from event.rb into event/base.rb
<adambeynon> and event.rb just load all the "sub-event" files
<adambeynon> not pleasant, but would work until we can find a better solution
<meh`> fine
<meh`> works
<meh`> thanks
<meh`> I still hate you a bit for chosing sprockets tho
<meh`> now back to work on lissio
<adambeynon> yeh, well, sprockets has its bad points, but makes it reallly easy to get working with rails apps
<adambeynon> which is a huge target for ruby devs
<adambeynon> we can look at a better system to come
<adambeynon> Opal::Builder has good foundations
<adambeynon> which could treat require() as a macro
<adambeynon> "insert the file right here"
elia has joined #opal
<meh`> elia, the problem was sprockets all along
elia has quit [Ping timeout: 240 seconds]
<adambeynon> were there any other constant issues? Im writing up a doc now outlining how opal-sprockets works
<adambeynon> and its limitations
<meh`> adambeynon, I think the other one I reported was caused by the same issue
<e_dub> adambeynon, did you ever fix that issue i had with self.class.constants / Object.constants ?
<meh`> adambeynon, when are we getting a terminal repl again?
<meh`> it would be very useful to me
fkchang has joined #opal
<meh`> adambeynon, is there a way to use racc in an opal gem?
<adambeynon> e_dub: looking at it now
<adambeynon> meh`: we should get a repl soon, just need to decide whether we use therubyracer or nodejs
<adambeynon> meh`: and you can indeed use racc
<adambeynon> our lexer/parser does
<meh`> adambeynon, should I generate the parser and keep the generated parser around?
<meh`> or is there some gem magic?
<adambeynon> meh`: I find it easier to keep the generated parser in lib/
<adambeynon> and git-commit any changes to it
<adambeynon> saves doing it at runtime
<meh`> roger
GitHub13 has joined #opal
<GitHub13> [opal] adambeynon pushed 1 new commit to master: http://git.io/sIquBQ
GitHub13 has left #opal [#opal]
<GitHub13> opal/master 022a6bc Adam Beynon: Fix buggy Class#constants for Object (fixes #304)
<adambeynon> e_dub: turns out the fix was easier than I thought :D
<adambeynon> now on master
<e_dub> awesome, thanks
<meh`> adambeynon, my god, the documentation is written in such a bad english
<adambeynon> for what now
<meh`> adambeynon, sorry, for racc
travis-ci has joined #opal
<travis-ci> [travis-ci] opal/opal#767 (master - 022a6bc : Adam Beynon): The build passed.
travis-ci has left #opal [#opal]
<travis-ci> [travis-ci] Build details : http://travis-ci.org/opal/opal/builds/9617707
<adambeynon> ahh, yeah
<adambeynon> took me ages to start using racc
<adambeynon> due to the docs
<adambeynon> had no idea what was going on
<meh`> I changed my mind
<meh`> I'll write it by hand
<meh`> it's not a complex grammar anyway
<adambeynon> meh`: what was it for?
<meh`> adambeynon, template parser
<meh`> for lissio
<adambeynon> what syntax?
<meh`> mustache inspired
<adambeynon> ah right. yeah, some regexps should be good for that
<adambeynon> dont know if this is any help:
<adambeynon> its not complete, but the lexer/parser side of things work
<adambeynon> actually
<adambeynon> its racc I think
<adambeynon> nvm
<meh`> yeah, I'll make it by hand
<adambeynon> meh`: I think our repl being based on top of node.js makes more sense
<adambeynon> playing with opal-node now
<meh`> adambeynon, no phantomjs? :(
<meh`> but I need browsery to play
<adambeynon> meh`: we cant easily control it
<meh`> I see
<adambeynon> oh
<adambeynon> meh`: have you looked at opal-irb
<adambeynon> you can load that up in any browser
<adambeynon> not phantomjs's weird fake dom
<meh`> adambeynon, I did, but it's useless to me if I have to work on opal itself or on opal-browser :(
<adambeynon> so a page refresh should do the trick
<adambeynon> why? I think it uses opal-sprockets as the build system
<meh`> really?
<meh`> fkchang, I SUMMON THEE
davidboy has quit [Ping timeout: 246 seconds]
<meh`> I know what I'll do now
<meh`> I'll get parslet to work
<meh`> nothing's as good as parslet
<meh`> adambeynon, how do I require a library in a non opal gem?
<adambeynon> inside your config.ru file
<adambeynon> instead of env.append_path
<adambeynon> add a env.use_gem("parslet")
<meh`> adambeynon, I don't have a config.ru
<meh`> is it the same if I add it with the Opal.append_path?
<meh`> because it seems a pain in the ass
<meh`> if I can't put it in the lib/lissio.rb
<adambeynon> ahh, Opal.doesnt have a Opal.use_Gem
<adambeynon> you could do
<adambeynon> Opal.append_path File.join(Gem::Specification.find_by_name("parselet").gem_dir, 'lib')
<meh`> my eyes
<adambeynon> which is long and ugly
<adambeynon> lol
<adambeynon> yeh..
<meh`> can't you add Opal.use_gem? :)
<meh`> I'll go for a smoke, if you can add Opal.use_gem I'll look over the hate of sprockets :P
GitHub141 has joined #opal
<GitHub141> [opal] adambeynon pushed 1 new commit to master: http://git.io/zFk2HA
GitHub141 has left #opal [#opal]
<GitHub141> opal/master 60d3944 Adam Beynon: Add Opal.use_gem helper method
<adambeynon> ^^ boom
<meh`> and now the fun begins
e_dub has quit [Ping timeout: 240 seconds]
GitHub134 has joined #opal
<GitHub134> opal/master afa8cb9 Adam Beynon: A resque body now returns the last expression evaluated (fixes #302)
<GitHub134> [opal] adambeynon pushed 1 new commit to master: http://git.io/kN561g
GitHub134 has left #opal [#opal]
<adambeynon> Im going to try and hammer through some github issues of minor fixes
<adambeynon> there are a few there which keep causing issues
<adambeynon> and hopefully they are just small fixes
<meh`> awesome
<meh`> I'm working on stringio
travis-ci has joined #opal
<travis-ci> [travis-ci] opal/opal#769 (master - afa8cb9 : Adam Beynon): The build passed.
travis-ci has left #opal [#opal]
<travis-ci> [travis-ci] Build details : http://travis-ci.org/opal/opal/builds/9620047
e_dub has joined #opal
GitHub75 has joined #opal
<GitHub75> opal/master cc8e942 Adam Beynon: Allow new lines in chained method invocation (fixes #287)
<GitHub75> [opal] adambeynon pushed 1 new commit to master: http://git.io/FCgJLg
GitHub75 has left #opal [#opal]
<meh`> and now I'd really need a repl
<meh`> or not
travis-ci has joined #opal
<travis-ci> [travis-ci] opal/opal#770 (master - cc8e942 : Adam Beynon): The build passed.
travis-ci has left #opal [#opal]
<travis-ci> [travis-ci] Build details : http://travis-ci.org/opal/opal/builds/9620641
<meh`> adambeynon, do I have to do anything to add another file to corelib?
GitHub173 has joined #opal
<GitHub173> opal/master 97e6c98 Adam Beynon: Allow blocks to accept default arguments (fixes #286)
<GitHub173> [opal] adambeynon pushed 1 new commit to master: http://git.io/p8Qn3A
GitHub173 has left #opal [#opal]
<adambeynon> just require() it from corelib/opal.rb
<adambeynon> what are you thinking of adding?
<meh`> io.rb
<meh`> I need the IO constants in stringio
<meh`> SEEK_*
<meh`> nothing major
<adambeynon> I would probbaly put io.rb into stdlib for now
<adambeynon> we are going to have 2 implementations of io.rb
<meh`> adambeynon, why?
<adambeynon> one for browser
<adambeynon> one for node/phantom
<adambeynon> well
<adambeynon> 3 potentially
<meh`> better reason to have this in core
<meh`> it's just constants
<meh`> common to all
<meh`> adambeynon, are you going to fix the super/splat issue too?
<meh`> that's a pretty huge issue
travis-ci has joined #opal
<travis-ci> [travis-ci] opal/opal#771 (master - 97e6c98 : Adam Beynon): The build passed.
<travis-ci> [travis-ci] Build details : http://travis-ci.org/opal/opal/builds/9621140
travis-ci has left #opal [#opal]
<adambeynon> meh`: have you got a code example of it not working?
<meh`> adambeynon, Struct
<meh`> > bundle exec opal -e 'puts Struct.new(:a, :b, :c).new(1, 2, 3).b.inspect'
<meh`> [2, 3]
<meh`> > bundle exec opal -e 'puts Struct.new(:a, :b, :c).new(1, 2, 3).c.inspect'
<meh`> 3
<meh`> just to be clear it's not Struct being broken :)
_whitelogger has joined #opal
<adambeynon> yeh, I have experienced it myself
<adambeynon> argh
<adambeynon> I cant make a test case for it though
<adambeynon> I must be missing something obvious
<meh`> I think it has to do with super without arguments
<adambeynon> yeh, i have pretty much copied struct.new line for line
<adambeynon> and its woking fine in an isolated spec
<meh`> lol
<meh`> good times
<fkchang> meh`: you summoned?
<meh`> fkchang, yes, how would I go about adding a dep to be used inside opal-irb?
<fkchang> If I follow, add the gem to the Gemfile, Rakefile, require it, the sprockets task that builds the example should pull it in. I've had played withe the idea of a requirejs call that would load a js file runtime, say from a cdn
<fkchang> I do need to extract it so it's easy to add to any page, at some point
<adambeynon> meh`: I could not find a single test case, so I just use the Struct example as the actual test case
GitHub117 has joined #opal
GitHub117 has left #opal [#opal]
<GitHub117> opal/master ad90bb3 Adam Beynon: Fix bug in calling super with no parens/args...
<GitHub117> [opal] adambeynon pushed 1 new commit to master: http://git.io/nF7Atg
<adambeynon> bad practice, but it is testable >_<
<meh`> yeah :P
<adambeynon> and fixable ^^
<adambeynon> Im thinking of adding some hook into our master branch to update opalrb.org/try on every push
<adambeynon> so it reflects master
<meh`> sounds good
<meh`> adambeynon, can you give me a hand?
<meh`> I'm having trouble understanding what the hell is going on
<meh`> adambeynon, in irb or whatever, real Ruby
<meh`> require stringio
<meh`> and do StringIO.ancestors
<meh`> you can see there are IO::writable and IO::readable
<meh`> they're documented, but I don't get how they are reachable
<meh`> IO::writable doesn't work
<adambeynon> meh`: looks like some c magic inside mri internals
<meh`> horrible
<adambeynon> I always thought it inherited from IO
<meh`> yeah, me too
<meh`> it doesn't :D
<meh`> I'm checking how rubinius does it
<adambeynon> a much better way, probably
<adambeynon> s/better/nicer
<meh`> it defines a dummy module
<meh`> there's probably some hidden magic there too
<meh`> or not at all
<meh`> mh
<adambeynon> brixen could be the guy to ask ;)
GitHub54 has joined #opal
GitHub54 has left #opal [#opal]
<GitHub54> opal/master 7e69a43 Adam Beynon: Move rubyspec custom filters into spec/filters...
<GitHub54> [opal] adambeynon pushed 1 new commit to master: http://git.io/Tp94WA
travis-ci has joined #opal
travis-ci has left #opal [#opal]
<travis-ci> [travis-ci] Build details : http://travis-ci.org/opal/opal/builds/9622690
<travis-ci> [travis-ci] opal/opal#773 (master - 7e69a43 : Adam Beynon): The build passed.
<adambeynon> back in a tick
adambeynon has quit [Quit: ["Textual IRC Client: www.textualapp.com"]]
lanael has joined #opal
davidboy has joined #opal
chap has joined #opal
lanael has left #opal [#opal]
GitHub163 has joined #opal
<GitHub163> opal/master 7df6016 meh: Initial StringIO implementation
<GitHub163> [opal] meh pushed 1 new commit to master: http://git.io/dpdm5Q
GitHub163 has left #opal [#opal]
<meh`> lol
<meh`> a parse error
travis-ci has left #opal [#opal]
<travis-ci> [travis-ci] Build details : http://travis-ci.org/opal/opal/builds/9625076
travis-ci has joined #opal
<travis-ci> [travis-ci] opal/opal#774 (master - 7df6016 : meh): The build passed.
e_dub has quit [Quit: Leaving]
e_dub has joined #opal
meh` has quit [Ping timeout: 264 seconds]