meh` has quit [Quit: I don't want to live on this planet anymore.]
rubys has quit [Quit: Leaving.]
lectrick has quit [Ping timeout: 256 seconds]
denysonique has quit [Ping timeout: 260 seconds]
davidboy has quit [Ping timeout: 260 seconds]
e_dub has joined #opal
fkchang has quit [Ping timeout: 240 seconds]
e_dub has quit [Ping timeout: 264 seconds]
e_dub has joined #opal
lectrick has joined #opal
davidboy has joined #opal
denysonique has joined #opal
davidboy has quit [Read error: Operation timed out]
lectrick has quit [Ping timeout: 260 seconds]
denysonique has quit [Ping timeout: 264 seconds]
fkchang has joined #opal
fkchang has quit [Ping timeout: 260 seconds]
e_dub has quit [Ping timeout: 246 seconds]
e_dub has joined #opal
e_dub has quit [Read error: Connection reset by peer]
lectrick has joined #opal
davidboy has joined #opal
denysonique has joined #opal
DouweM has joined #opal
adambeynon has joined #opal
adambeynon has quit [Quit: Textual IRC Client: www.textualapp.com]
DouweM has quit [Read error: Connection reset by peer]
DouweM has joined #opal
DouweM has quit [Read error: Connection reset by peer]
DouweM has joined #opal
adambeynon has joined #opal
GitHub141 has joined #opal
<GitHub141> opal/master a74ba83 Adam Beynon: Merge pull request #375 from DouweM/fix-hash-has_key...
<GitHub141> [opal] adambeynon pushed 2 new commits to master: http://git.io/r1zR1A
<GitHub141> opal/master adce8ed Douwe Maan: Fix Hash#has_key? to only return true for properties of its own.
GitHub141 has left #opal [#opal]
travis-ci has joined #opal
<travis-ci> [travis-ci] Build details : http://travis-ci.org/opal/opal/builds/11586258
<travis-ci> [travis-ci] opal/opal#937 (master - a74ba83 : Adam Beynon): The build passed.
travis-ci has left #opal [#opal]
elia has joined #opal
DouweM has quit [Read error: Connection reset by peer]
GitHub70 has joined #opal
<GitHub70> [opal] adambeynon pushed 1 new commit to master: http://git.io/7OxdNA
<GitHub70> opal/master fc58796 Adam Beynon: Initial delegate (stdlib) implementation
GitHub70 has left #opal [#opal]
travis-ci has joined #opal
<travis-ci> [travis-ci] opal/opal#938 (master - fc58796 : Adam Beynon): The build passed.
travis-ci has left #opal [#opal]
<travis-ci> [travis-ci] Build details : http://travis-ci.org/opal/opal/builds/11586953
kludge` has quit [Ping timeout: 240 seconds]
kludge` has joined #opal
GitHub180 has joined #opal
<GitHub180> [opal] adambeynon pushed 1 new commit to master: http://git.io/z8Ncjw
GitHub180 has left #opal [#opal]
<GitHub180> opal/master eafbb58 Adam Beynon: Support 'redo' keyword inside blocks/iters
travis-ci has joined #opal
<travis-ci> [travis-ci] Build details : http://travis-ci.org/opal/opal/builds/11587635
travis-ci has left #opal [#opal]
<travis-ci> [travis-ci] opal/opal#939 (master - eafbb58 : Adam Beynon): The build passed.
GitHub49 has joined #opal
<GitHub49> [opal] adambeynon pushed 1 new commit to master: http://git.io/Mos9ng
GitHub49 has left #opal [#opal]
<GitHub49> opal/master ed94fc4 Adam Beynon: Enable 2 more rubyspecs for redo inside block
travis-ci has joined #opal
<travis-ci> [travis-ci] opal/opal#940 (master - ed94fc4 : Adam Beynon): The build passed.
<travis-ci> [travis-ci] Build details : http://travis-ci.org/opal/opal/builds/11587893
travis-ci has left #opal [#opal]
DouweM has joined #opal
GitHub39 has joined #opal
<GitHub39> [opal] adambeynon pushed 1 new commit to master: http://git.io/DerJRg
GitHub39 has left #opal [#opal]
<GitHub39> opal/master b5f907c Adam Beynon: Raise ArgumentError if count given to Array#first is negative
GitHub188 has joined #opal
GitHub188 has left #opal [#opal]
<GitHub188> [opal] adambeynon pushed 1 new commit to master: http://git.io/dqwl8g
<GitHub188> opal/master e80a425 Adam Beynon: Array#fetch now gives precedence to default block over default argument...
travis-ci has joined #opal
travis-ci has left #opal [#opal]
<travis-ci> [travis-ci] Build details : http://travis-ci.org/opal/opal/builds/11588009
<travis-ci> [travis-ci] opal/opal#941 (master - b5f907c : Adam Beynon): The build passed.
travis-ci has joined #opal
<travis-ci> [travis-ci] Build details : http://travis-ci.org/opal/opal/builds/11588052
travis-ci has left #opal [#opal]
<travis-ci> [travis-ci] opal/opal#942 (master - e80a425 : Adam Beynon): The build passed.
GitHub13 has joined #opal
<GitHub13> [opal] adambeynon pushed 1 new commit to master: http://git.io/dTRM7A
<GitHub13> opal/master 5ec2bdf Adam Beynon: Fix bug in Array#rindex that broke 2 rubyspecs
GitHub13 has left #opal [#opal]
<DouweM> how complete are the current rubyspecs and those bug filters?
travis-ci has joined #opal
travis-ci has left #opal [#opal]
<travis-ci> [travis-ci] Build details : http://travis-ci.org/opal/opal/builds/11588237
<travis-ci> [travis-ci] opal/opal#943 (master - 5ec2bdf : Adam Beynon): The build passed.
<DouweM> I'm asking because, for example, Array#[]= isn't implemented right either, and there's no rubyspecs or bug filters for that one
<adambeynon> DouweM: Im working today to add as many as possible. Up until now, its been a case of adding methods/specs as I have needed them
<adambeynon> the plan would be to link against rubyspec directly
<adambeynon> and have a load of filters that are a guide to what works, and what doesnt
<DouweM> right
<adambeynon> also, we are splitting them into "bugs" and "unsupported"
<adambeynon> we wont ever support threads, for example
<adambeynon> DouweM: also, we have been bad sometimes at adding methods with no specs at all
<adambeynon> really, any new methods should only be added with the relevant specs from rubyspec
<DouweM> so the new plan is to add all of the rubyspecs, label them as not_implemented, bug or unsupported, and slowly go about removing the not_implemented and bug labels?
<DouweM> by implementing/fixing them of course
<adambeynon> exactly that
<DouweM> cool
<adambeynon> it is also fair to say that quite a few filters can be removed, as they have been fixed and not updated
<DouweM> which answers my question that I don't need to file an issue about Array#[]= now because it'll be caught by the rubyspecs anyway
<adambeynon> well, im working on Array specs now, so I will check out #[]= now to get that working as expected
<DouweM> all right
<DouweM> how are you implementing most of these anyway? going off the rubyspecs, the docs, the MRI implementation, the Rubinius implementation, or a combination of those?
<adambeynon> mostly just implement the basic structure of a method based on my knowledge of how it works, and then usually the rubyspecs highlight any corner cases which are broken
<adambeynon> rubinius is sometimes useful for more complex alogorithms
<adambeynon> rubyspec is very good though at covering the entire workings of a method
<DouweM> yeah, rubyspecs are grea
<DouweM> t
<adambeynon> oh wow, I see what you mean about Array#[]=
DouweM has quit [Read error: Connection reset by peer]
DouweM has joined #opal
meh` has joined #opal
<meh`> adambeynon, yo
<adambeynon> meh`: morning!
<meh`> what's up?
<adambeynon> bug fixing day!
<meh`> nice
<meh`> will you try to fix the blankslate stuff too?
<adambeynon> well, it requires needing a way to enable/disable method_added
DouweM has quit [Read error: Connection reset by peer]
<meh`> it should be on by default tho, right?
<meh`> I mean, you shouldn't be defining methods in a loop or something
<adambeynon> meh`: well, we cant have it turned on in corelib, as it won't have been defined by then
<meh`> adambeynon, yeah, I meant for user code
GitHub161 has joined #opal
<GitHub161> opal/master 087cc6a Adam Beynon: Fix rubyspecs for Array#[]= accepting index or index, size
<GitHub161> [opal] adambeynon pushed 1 new commit to master: http://git.io/eqhvvQ
GitHub161 has left #opal [#opal]
<adambeynon> meh`: yeap, but the parser (currently) treats corelib just as any other code, so we need a way to turn certain features on and off
<meh`> pragmas? :)
<adambeynon> ;)
<meh`> oh, nice
<meh`> the more you know™
travis-ci has joined #opal
<travis-ci> [travis-ci] opal/opal#944 (master - 087cc6a : Adam Beynon): The build passed.
<travis-ci> [travis-ci] Build details : http://travis-ci.org/opal/opal/builds/11589786
travis-ci has left #opal [#opal]
DouweM has joined #opal
<adambeynon> that enables options on a per file basis
<adambeynon> so, every file in corelib would need certain options
<adambeynon> e.g.
<adambeynon> no_method_added
<DouweM> adambeynon: supporting ranges in Array#[]= shouldn't too hard either, I think, most of it could just be copied from #[]
<DouweM> adambeynon: and I don't think the if (extra._isArray) { check is necessary, [index, value].concat(extra) works fine with extra isn't an array
<adambeynon> DouweM: good catch
<adambeynon> fixed
GitHub88 has joined #opal
<GitHub88> [opal] adambeynon pushed 1 new commit to master: http://git.io/OCxnpw
<GitHub88> opal/master 2651a89 Adam Beynon: Remove unnecessary isArray check in Array#[]=
GitHub88 has left #opal [#opal]
travis-ci has joined #opal
<travis-ci> [travis-ci] opal/opal#945 (master - 2651a89 : Adam Beynon): The build passed.
<travis-ci> [travis-ci] Build details : http://travis-ci.org/opal/opal/builds/11590065
travis-ci has left #opal [#opal]
GitHub158 has joined #opal
<GitHub158> [opal] adambeynon pushed 1 new commit to master: http://git.io/PvrK-A
<GitHub158> opal/master 9067f70 Adam Beynon: Enable Array#[]= to accept a range (with fixed specs)
GitHub158 has left #opal [#opal]
travis-ci has joined #opal
travis-ci has left #opal [#opal]
<travis-ci> [travis-ci] opal/opal#946 (master - 9067f70 : Adam Beynon): The build passed.
<travis-ci> [travis-ci] Build details : http://travis-ci.org/opal/opal/builds/11590717
DouweM_ has joined #opal
DouweM has quit [Ping timeout: 260 seconds]
<meh`> shit
<meh`> and this is where having Symbol and String classes is vital :(
<DouweM_> hmm?
DouweM has joined #opal
DouweM_ has quit [Read error: Connection reset by peer]
<meh`> DouweM_, in Opal Symbol == String
<DouweM> I know, I might've missed some messages, but I don't see what "this" is referring to ;)
<meh`> DouweM, oh, nothing
<meh`> I was mostly talking by myself ◕ ◡ ◔
<DouweM> which is why I wondered what caused your frustration ;)
<meh`> DouweM, DOM builder
<meh`> I wanted i.icon(:legal) to convert to <i class="icon-legal">
<meh`> but i.icon "something" should convert to <i class="icon">something</i>
<DouweM> ah, right
<meh`> I'll go with i.icon [:legal]
<meh`> DouweM, unless you have a better looking idea
<DouweM> hmm, using methods for classes seems wrong to me anyway
<meh`> DouweM, that's what markaby does
<meh`> it makes for a good DSL
<meh`> guess I need a smoke to think about it
<DouweM> Ah, I don't have experience with markaby
GitHub38 has joined #opal
GitHub38 has left #opal [#opal]
<GitHub38> opal/master 2f175bc Adam Beynon: Add initial support for rubyspec as git submodule
<GitHub38> [opal] adambeynon pushed 1 new commit to master: http://git.io/sJ0lcw
<meh`> adambeynon, :D
<adambeynon> meh`: a long time coming..
<meh`> indeed
<adambeynon> we opt in to specs to run (spec/rubyspecs) until we are a lot more mature
<adambeynon> plan is to remove all current rubyspecs from our repo
<meh`> adambeynon, yeah
<adambeynon> 7 days is probably a good timeframe
<meh`> sounds good
travis-ci has joined #opal
travis-ci has left #opal [#opal]
<travis-ci> [travis-ci] opal/opal#947 (master - 2f175bc : Adam Beynon): The build passed.
<travis-ci> [travis-ci] Build details : http://travis-ci.org/opal/opal/builds/11592389
<adambeynon> \o/
<DouweM> adambeynon: opting out rather than opting in makes sure the not_yet_implemented/bug lists are complete
<DouweM> adambeynon: which makes it easier to just look through those files and start fixing stuff
<meh`> that is true
<DouweM> it also makes it easier for you guys to check that every pull request that says it fixes something also removes one or more lines from those tag files
<adambeynon> true, but there is a huge amount of specs that we dont currently attempt to pass
<adambeynon> a load of stdlib stuff
<meh`> adambeynon, I think it's worth it
<meh`> we can tag those specs as "doesntmakeanysense" or something :P
<meh`> so people know what to expect and what to not expect
<adambeynon> I suppose we can opt-out on whole files as well then..
<adambeynon> and directories
<meh`> yeah
<DouweM> adambeynon: sure
<DouweM> Does mspec support tags on the describe blocks, like RSpec does? then doing`describe Thread, unsupported: true do ... end` would exclude that entire suite
<adambeynon> I *think* it does it on the entire spec name
<adambeynon> describe_name + it_name
<adambeynon> well, that is how our filters work
<adambeynon> and it was the only way I could see
<adambeynon> but, I could well be wrong...
<DouweM> adambeynon: yeah, that's your filters. but adding unsupported: true and broken: true to individual describe/it blocks is also supported in RSpec at least
<DouweM> although
<DouweM> that won't work with the imported submodule
<DouweM> so just disregard that
<meh`> http://sprunge.us/MEED?rb fuck yeah DSLs
<adambeynon> oh, sorry, I see what you mean
<adambeynon> meh`: niceeeeeeeeeee
<DouweM> hah, that's neat
<meh`> and both DOM and CSS builders are in opal-browser
<meh`> well, CSS builder I'm still writing
<meh`> but it will be there in a few
<adambeynon> meh`, DouweM : looking at rubinius, they opt into specs
<brixen> yeah, there are two methods to exclude specs
<brixen> exclude the whole file in your config
<brixen> or exclude the describe + it
<brixen> you can match a bunch of specs and exclude them without running by using a combination of -e and --all --dry-run
<brixen> then as you fix them one by one, you untag
DouweM has quit [Read error: Connection reset by peer]
<brixen> eg mspec tag --add unstable --dry-run --all -e '<partial string to match>'
DouweM has joined #opal
<adambeynon> brixen: good to know, thanks
<brixen> adambeynon: no problem, ping me whenever :)
<brixen> sounds like y'all are kickin' butt
<brixen> saw the RC talk in the schedule
<adambeynon> yeh, looking forward to that. Now that we have some "real world" apps using opal, we are getting some momentum
<meh`> adambeynon, how long till the submodule stuff is working?
<meh`> I need to fix StringIO
<adambeynon> meh`: it is working now, but it currently only includes 1 spec from rubyspec, Array#allocate
<adambeynon> im making it load all array specs now
<adambeynon> and deleting our old ones
<meh`> adambeynon, roger
<meh`> adambeynon, when you're done with that can you tell me how to load other specs?
<adambeynon> meh`: sure thing
<meh`> also, when are we getting an irb back?
<meh`> debugging with bundle exec opal -e is a pain in the ass
GitHub92 has joined #opal
<GitHub92> opal/master ddd0778 meh: Fix StringIO#write
<GitHub92> [opal] meh pushed 1 new commit to master: http://git.io/rkfezw
GitHub92 has left #opal [#opal]
<DouweM> yeah, an irb with multiline support is a must. I've been using opalrb.org/try to look for bugs, which obviously doesn't have my modified code and which has some problems of its own to boot
<meh`> DouweM, we used to have one
GitHub142 has joined #opal
<GitHub142> opal/master aebb1f8 meh: Fix StringIO#read
GitHub142 has left #opal [#opal]
<GitHub142> [opal] meh pushed 1 new commit to master: http://git.io/UuzwaQ
<meh`> I don't know why adambeynon removed it
travis-ci has joined #opal
<travis-ci> [travis-ci] Build details : http://travis-ci.org/opal/opal/builds/11594194
<travis-ci> [travis-ci] opal/opal#948 (master - ddd0778 : meh): The build passed.
travis-ci has left #opal [#opal]
travis-ci has joined #opal
<travis-ci> [travis-ci] Build details : http://travis-ci.org/opal/opal/builds/11594228
<travis-ci> [travis-ci] opal/opal#949 (master - aebb1f8 : meh): The build passed.
travis-ci has left #opal [#opal]
<meh`> aaand it works
<meh`> CSS and DOM builders :D
<meh`> adambeynon, http://sprunge.us/fAia?rb like it?
<adambeynon> meh`, I do
<meh`> I'm going a different way with lissio
<adambeynon> Component.. thats like a view, yeh?
<meh`> it won't be much of an MVC
<meh`> adambeynon, somewhat :)
<adambeynon> meh`: what else will be different?
<meh`> the approach mostly
<meh`> there will be models and components
<meh`> you can see components like views
<meh`> but they're more like view + controller
<meh`> you have a top level component which is called an application
<meh`> and you combine components and render them
<meh`> so a Menu will be a component as a Tooltip is a component
<meh`> the logic and the view is tightly coupled within the component
<meh`> let's say you have a MenuItem component
<meh`> it can have a tooltip doing something like @tooltip = Tooltip.new(self)
<meh`> and it can be activated, so it will be rendered when hovered or whatever
<meh`> I'll see how it goes
<elia> meh`: tabs ftw
<DouweM> meh`: I don't really see the difference with Views in Backbone's interpretation
<meh`> DouweM, not much, except more magic will be going on and they aren't really views
<meh`> DouweM, I mostly disagree with calling them views
<DouweM> :)
<meh`> because then you wouldn't see a tooltip as a view
<meh`> so what do you make of it?
<meh`> but yeah, bikeshedding
<adambeynon> meh`: does a component relate 1:1 with a dom element?
<DouweM> well, if a view is an element with related logic, a tooltip is still a view
<DouweM> I have a PopoverView in Backbone
<meh`> adambeynon, yes, a component has always a root dom element
<DouweM> that's different of course from views in Rails (which are just templates) or views in, say, iOS, which don't wrap logic, but views in the Backbone interpretation seem to be what you call components
<meh`> DouweM, yes, it's just weird to call them views when they're also controllers
<DouweM> meh`: sure
DouweM has quit [Read error: Connection reset by peer]
DouweM has joined #opal
GitHub183 has joined #opal
<GitHub183> [opal] adambeynon pushed 3 new commits to master: http://git.io/t16GoA
<GitHub183> opal/master c1de15a Adam Beynon: Convert some core/array specs to use rubyspec
<GitHub183> opal/master 366b109 Adam Beynon: Merge branch 'master' of github.com:opal/opal
GitHub183 has left #opal [#opal]
<GitHub183> opal/master 996e877 Adam Beynon: Move most of Array specs over to rubyspec
travis-ci has joined #opal
<travis-ci> [travis-ci] opal/opal#950 (master - 996e877 : Adam Beynon): The build passed.
<travis-ci> [travis-ci] Build details : http://travis-ci.org/opal/opal/builds/11595941
travis-ci has left #opal [#opal]
DouweM has quit [Read error: Connection reset by peer]
GitHub152 has joined #opal
<GitHub152> opal/master 047b8ef Adam Beynon: Use true, false and nil specs from rubyspec
GitHub152 has left #opal [#opal]
<GitHub152> [opal] adambeynon pushed 1 new commit to master: http://git.io/Ito41w
DouweM has joined #opal
fkchang has joined #opal
<DouweM> adambeynon: couldn't you just say core/array/**/* and have spec/ospec/main.rb parse it using Dir ?
<adambeynon> DouweM: we are currently only loading about half the files from core/array
<DouweM> ah, okay
<adambeynon> eventually yes
travis-ci has joined #opal
travis-ci has left #opal [#opal]
<travis-ci> [travis-ci] Build details : http://travis-ci.org/opal/opal/builds/11596583
<travis-ci> [travis-ci] opal/opal#951 (master - 047b8ef : Adam Beynon): The build passed.
<DouweM> and we're not loading the other half becaues they don't work at all? too much work to add filters for all of them?
<adambeynon> DouweM: a mixture, 50/50. some need a very small fix to get them working, and others we might not have implenented at all
<DouweM> I understand, but you say "we are currently only loading about half the files from core/array", why don't we load the other half as well (because we want to support it at some point) and then just add fails filters?
<DouweM> and in that case, we could just use core/array/**/*
<meh`> I agree with DouweM
<DouweM> :P
<adambeynon> thats the next step. I need to check up on how to block entire describe blocks to save adding 10 - 20 fails for each method we dont implement
<DouweM> adambeynon: ah, right
<adambeynon> but yes, hopefully by tonight we will just have `core/array/**.*`
<adambeynon> well
<DouweM> perfect
<adambeynon> if I had typed it right, anyway
<DouweM> hah. what timezone are you guys in anyway?
<adambeynon> BST (not that it feels very much like summer here...)
<meh`> DouweM, UTC+1:00
<fkchang> adambeynon: how do u turn on line numbers in comments?
<fkchang> adambeynon: so do I have to wrap all js objects in Native() now? My use of codemirror is also broken
<fkchang> @editor = %x|
<fkchang> editor = CodeMirror.fromTextArea(document.getElementById("multi_line_input"),
<fkchang> {mode: "ruby",
<fkchang> lineNumbers: true,
<fkchang> matchBrackets: true,
<fkchang> extraKeys: {
<fkchang> "Ctrl-Enter": function(cm) { $(".ui-dialog-buttonset").find("button:eq(0)").trigger("click"); } // submit on ctrl-enter
<fkchang> },
<fkchang> keyMap: "emacs",
<fkchang> theme: "default"
<meh`> fkchang, yes, seamless bridging has been removed
<fkchang> });
<DouweM> fkchang: for the sake of readability, could you use gist or pastie or similar for that code?
<fkchang>
<fkchang> and I can't call methods off of @editor
<fkchang> meh`: seamless bridging removed? I think that was one of the key selling points of opal
<meh`> fkchang, it was slow and clumsy
<meh`> and we couldn't support seamless null/undefined to nil
<meh`> the approach now is to either write a wrapper or use Native() and #to_n
<meh`> you got non-rubyesque stuff using the seamless bridging anyway
<adambeynon> seamless bridging also made it almost impossible to debug
<adambeynon> so much crap was being generated
<adambeynon> ($a = ($b = ($c = ($d = self … ) … ) … ) … )
<fkchang> adambeynon: so how do I put line numbers as comments back into the compile? Lots to debug
<adambeynon> fkchang: let me just check
DouweM has quit [Read error: Connection reset by peer]
DouweM_ has joined #opal
<elia> fkchang: btw just saw how awesome the talk description is
<elia> kudos :)
<meh`> elia, link?
<elia> enjoy
<DouweM_> elia: fwiw, it was your lightning talk at euruko that got me interested in opal ;)
<elia> DouweM_: really happy to hear this!
GitHub10 has joined #opal
GitHub10 has left #opal [#opal]
<GitHub10> opal/master d15a61a Adam Beynon: Use Enumerable specs entirely from rubyspec
<GitHub10> [opal] adambeynon pushed 1 new commit to master: http://git.io/bwCExw
<elia> DouweM_: you were at euruko?
<DouweM_> yeah
travis-ci has joined #opal
travis-ci has left #opal [#opal]
<travis-ci> [travis-ci] Build details : http://travis-ci.org/opal/opal/builds/11598925
<travis-ci> [travis-ci] opal/opal#952 (master - d15a61a : Adam Beynon): The build passed.
<elia> cool
elia has quit [Ping timeout: 248 seconds]
<meh`> what the heck
<adambeynon> meh`: what happened?
<meh`> adambeynon, nothing, incomprehensible issues with the specs
<meh`> then I realized I was being dumb
elia has joined #opal
<meh`> when I add an if else to something
<meh`> I always write the else part false
<meh`> so I leave the stuff that should be in the else in the if
<meh`> and if I go do something else instead of finishing that it remains there
GitHub173 has joined #opal
<GitHub173> opal/master 5968caa Adam Beynon: Group all Enumerable filters together
GitHub173 has left #opal [#opal]
<GitHub173> [opal] adambeynon pushed 1 new commit to master: http://git.io/jksxvg
<elia> meh`: adambeynon: any better name for "Module#native_alias" and "Class.native_class!" ? https://gist.github.com/elia/6639956
<elia> also should they be in core or std lib?
<adambeynon> oh
<elia> adambeynon: yeah :)
<meh`> what's the difference?
<meh`> what is going on here?
<meh`> ◕ ◡ ◔
<elia> expose ruby stuff to legacy js
DouweM_ has quit [Read error: Connection reset by peer]
DouweM has joined #opal
travis-ci has joined #opal
travis-ci has left #opal [#opal]
<travis-ci> [travis-ci] opal/opal#953 (master - 5968caa : Adam Beynon): The build passed.
<travis-ci> [travis-ci] Build details : http://travis-ci.org/opal/opal/builds/11600184
<elia> leaving, i'll read answers on http://irclog.whitequark.org/opal
<adambeynon> elia: sure, I'll have a think :)
<adambeynon> nice idea though
<adambeynon> useful
GitHub147 has joined #opal
<GitHub147> [opal] adambeynon pushed 1 new commit to master: http://git.io/07b9LQ
GitHub147 has left #opal [#opal]
<GitHub147> opal/master 2b7d694 Adam Beynon: Fix Enumerable#take and enable all specs for it
<meh`> adambeynon, how does it fix it?
<meh`> I'm confused
<meh`> ah
<meh`> first has it optional
<meh`> right
elia has quit [Ping timeout: 256 seconds]
<adambeynon> I never knew that they were so close :)
GitHub55 has joined #opal
<GitHub55> opal/master 1f1b40a Adam Beynon: Fix Enumerable#find_index when not given object or block
GitHub55 has left #opal [#opal]
<GitHub55> [opal] adambeynon pushed 1 new commit to master: http://git.io/wuNqHg
<meh`> adambeynon, I'd prefer following the rest in #find_index
<meh`> an early return
<meh`> return enum_for :find_index unless obj || block
<adambeynon> it is possible that obj could be nil
<adambeynon> or false
travis-ci has joined #opal
<travis-ci> [travis-ci] opal/opal#954 (master - 2b7d694 : Adam Beynon): The build passed.
<travis-ci> [travis-ci] Build details : http://travis-ci.org/opal/opal/builds/11600527
travis-ci has left #opal [#opal]
<meh`> I s ee
<meh`> well then
<meh`> leave it be :)
<adambeynon> lol, yeh.. I think rubinius has something similar to "Undefined" for optional method args
elia has joined #opal
<brixen> yep
<brixen> it's impossible to implement Ruby API's with just nil
<meh`> adambeynon, then we could use undefined
<brixen> because sometimes it's a value and sometimes it's "nothing"
<meh`> we already have it
travis-ci has joined #opal
<travis-ci> [travis-ci] Build details : http://travis-ci.org/opal/opal/builds/11600633
<travis-ci> [travis-ci] opal/opal#955 (master - 1f1b40a : Adam Beynon): The build passed.
travis-ci has left #opal [#opal]
<meh`> the good side of not having seamless null/undefined mapping to nil :P
<adambeynon> meh`: it did cause us some problems, and we had to resort to arguments.length, eeek..
GitHub36 has joined #opal
<GitHub36> opal/master 0e8a98a Adam Beynon: Return enumerators in various Enumerable methods to fix some specs
GitHub36 has left #opal [#opal]
<GitHub36> [opal] adambeynon pushed 1 new commit to master: http://git.io/ZRkMag
GitHub84 has joined #opal
<GitHub84> [opal] elia created native-exposure (+1 new commit): http://git.io/KqcbuA
<GitHub84> opal/native-exposure 841006c Elia Schito: Expose classes, modules and methods to js
GitHub84 has left #opal [#opal]
<meh`> I don't get how jQuery does the selector delegation
<meh`> adambeynon, do you have any clue?
travis-ci has joined #opal
travis-ci has left #opal [#opal]
<travis-ci> [travis-ci] opal/opal#956 (master - 0e8a98a : Adam Beynon): The build passed.
<travis-ci> [travis-ci] Build details : http://travis-ci.org/opal/opal/builds/11600886
<DouweM> elia: native_class makes an Opal class a native class, native_alias makes a native method an Opal method. they do opposite things but have the same name.
travis-ci has joined #opal
<travis-ci> [travis-ci] opal/opal#957 (native-exposure - 841006c : Elia Schito): The build passed.
travis-ci has left #opal [#opal]
<travis-ci> [travis-ci] Change view : https://github.com/opal/opal/commit/841006cf0574
<travis-ci> [travis-ci] Build details : http://travis-ci.org/opal/opal/builds/11600918
<DouweM> elia: how about alias_native instead, like alias_method ?
<DouweM> alias_native :has_class? :hasClass looks nice to me
<DouweM> alias_*method* :x, :y makes x an alias of the *method* y, alias_*native* :x, :y makes x an alias of the *native (method)* y. the more I think about it, the more sense it makes to me
<meh`> DouweM, we already have alias_native
<DouweM> ooh
<meh`> both in Module and Native::Base
<DouweM> oh shit
<DouweM> native_alias actually does the opposite of what I thought it did
<DouweM> so it's already named correcrtly
<meh`> yeah, it was confusing to me too :)
<DouweM> carry on folks :P
<DouweM> elia: in that case, why isn't there a bang at the end of native_alias?
<DouweM> only now do I see that mere lines above the native_alias there is the alias_native I was thinking of :P
elia has quit [Ping timeout: 264 seconds]
<DouweM> bye elia
<meh`> adambeynon, ping
<adambeynon> ping pong
<meh`> adambeynon, if I do a toplevel return it will work properly, right?
<meh`> or maybe it doesn't even work in ruby
<meh`> maybe break
<adambeynon> in ruby it raises a LocalJumpError
<meh`> nope
<DouweM> doesn't work in ruby, from IRB anyway
<meh`> I don't want to wrap it in an if :(
<adambeynon> whats wrong with if? :)
<meh`> nothing
<meh`> fucking requires
<meh`> FUCKING REQUIRES
<meh`> adambeynon, fix this shit :((((
<meh`> the order always fucks with me
<DouweM> fucking requires stamina?
<adambeynon> its going to be tricky, probably not possible with sprockets
<meh`> adambeynon, it's a must
<meh`> for real
<meh`> most gems will fail
<meh`> we don't want that
<meh`> do we?
DouweM has quit [Read error: Connection reset by peer]
DouweM has joined #opal
<meh`> oh they joy of cross-browser compatibility
<meh`> adambeynon, `/MSIE|WebKit|Presto|Gecko/.exec(navigator.userAgent)[0]`.downcase rescue :unknown
<meh`> Uncaught Error: NoMethodError: undefined method `shift' for nil:NilClass
<fkchang> adambeynon: did I miss ur answer to line number comments?
<adambeynon> fkchang: sorry, yeh. It doesnt generate them any more. do you still need them?
<adambeynon> yay, browser prefixes!
<meh`> at least the compatibility layer will be clean
<meh`> one file per method
<meh`> "clean"
<meh`> cleaner than the javascript messes
<adambeynon> yep
<fkchang> adambeynon: if it's possible, I thought it was an option, it makes it easier to go back to the opal code in question, though I'll say the generated js looks better than when I last looked at it alot
<adambeynon> and then we can have nice dom programming
<adambeynon> fkchang: we can add it back I suppose, but I felt the new js is easier to read
<adambeynon> but
<adambeynon> if you find it useful
<adambeynon> I did think about adding the line comments at the start of each line
<adambeynon> /*1*/ $opal.class('foo', …)
<adambeynon> /*2*/ def.$foo ...
<adambeynon> etc
<adambeynon> instead of all intermingled in the actual javascript
<adambeynon> or maybe at the end
<meh`> I vote for the end
<meh`> no
<meh`> I vote for the beginning
<adambeynon> sure? :P
<meh`> yes
<meh`> I want to feel like I'm reading FORTRAN again
<adambeynon> vintage
GitHub171 has joined #opal
<GitHub171> [opal] adambeynon pushed 1 new commit to master: http://git.io/5X-ZFg
GitHub171 has left #opal [#opal]
<GitHub171> opal/master 5244182 Adam Beynon: Cleanup more filters for array and enumerable
<adambeynon> ok, we are getting a handle on our rubyspecs now
DouweM has quit [Read error: Connection reset by peer]
travis-ci has joined #opal
<travis-ci> [travis-ci] Build details : http://travis-ci.org/opal/opal/builds/11603298
<travis-ci> [travis-ci] opal/opal#958 (master - 5244182 : Adam Beynon): The build passed.
travis-ci has left #opal [#opal]
DouweM has joined #opal
<adambeynon> off out for a bit, but I will be back later on
adambeynon has quit [Quit: ["Textual IRC Client: www.textualapp.com"]]
DouweM has quit [Read error: Connection reset by peer]
DouweM has joined #opal
<meh`> and we have event registration deferral
DouweM has quit [Read error: Connection reset by peer]
DouweM has joined #opal
fkchang has quit [Ping timeout: 248 seconds]
DouweM has quit [Read error: Connection reset by peer]
DouweM has joined #opal
DouweM has quit [Ping timeout: 260 seconds]
DouweM has joined #opal
DouweM has quit [Read error: Connection reset by peer]
fkchang has joined #opal
<meh`> fkchang, hey
<fkchang> meh`: ?
<meh`> fkchang, http://sprunge.us/QXSI?rb (it works)
<meh`> like it?
<meh`> fkchang, http://sprunge.us/JUED?rb an updated one
<meh`> nested rules like scss :D
<fkchang> meh`: I do like it. The ability to do it all in ruby is compelling
<fkchang> though css and html modes can be pretty nice
<meh`> the css and html calls are just wrappers for the CSS::Builder and DOM::Builder in opal-browser
<fkchang> nice
<meh`> I also added support for deferred event registration like jquery does
<meh`> I couldn't understand how jquery did it tho
<meh`> so I did mine with MutationObserver
<fkchang> how ready is Lissio for use outside of you
<meh`> not ready at all
<meh`> I'm working in tandem on the project and lissio, and opal-browser
<meh`> but it will all be ironed out before rubyconf
<fkchang> The code looks good, it'd make some pretty compelling slides for rubyconf, esp. if I can do some live mucking w/the code
<meh`> now that you say that
<meh`> it gives me a good idea
<fkchang> what's that?
<meh`> just minor details, right now if you call css twice, it just adds the css, twice
<meh`> I'm making it so it deletes the previous style
<meh`> also on/offing on the component events too
<fkchang> it's my intent w/opal-inspector to be able to modify stuff like that live in the browser and see the changes right there
<meh`> yeah, I'll keep an eye on making it seamless with lissio
<fkchang> how much work do you think lissio needs before someone else can use it? I want to re do opal-inspect w/some sort of dom builder
<meh`> lissio just leverages opal-browser
<meh`> but not much work I think, most of it goes in opal-browser
<meh`> mostly ironing out what Component might need, and then work on Model
<meh`> but yeah, this weekend I'll write documentation for opal-browser
<meh`> it has a lot of good stuff
<meh`> fkchang, if you replace `css &block` with `CSS &block` you get the same thing
<meh`> it's automatically added to the tree tho
<fkchang> maybe I'll start w/opal browser and refactor to lissio, though I have to get opal-irb all working w/more recent versions of opal
<fkchang> removal of seamless bridging will hit me
<meh`> html is the same thing basically
<meh`> DOM { div.home { i.icon[:home] } } would give you back the DOM
<meh`> it doesn't add it anywhere in that case
<meh`> fkchang, in what timezone are you?
<fkchang> Pacific time
<fkchang> GMT+9
<fkchang> GMT+8
<fkchang> man, everytime I'm away from opal and come back, everything's broken. My specs don't run, and I forget what I did last time to get everything working
<meh`> the fun of living on the edge
<meh`> fkchang, expect less breakage in the future, if you didn't notice adam started the move to a rubyspec submodule
<meh`> it'll be waaaay easier to check for broken specs and fix them
<fkchang> I figure w/1.0 it'll be more stable
<meh`> if it won't be we'll just beat up adam :P
<meh`> mh