awsteele has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
Bwild has joined #rubinius
awsteele has joined #rubinius
pietr0 has quit [Quit: pietr0]
yipstar has joined #rubinius
|jemc| has quit [Ping timeout: 240 seconds]
awsteele has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
Bwild has quit [Ping timeout: 265 seconds]
Bwild has joined #rubinius
awsteele has joined #rubinius
amsi has quit [Quit: Leaving]
|jemc| has joined #rubinius
amclain has joined #rubinius
havenwood has quit [Remote host closed the connection]
tenderlove has quit [Quit: Leaving...]
awsteele has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
awsteele has joined #rubinius
GitHub107 has joined #rubinius
<GitHub107> [rubinius] brixen pushed 3 new commits to master: http://git.io/tPz10A
<GitHub107> rubinius/master 22e73a2 Brian Shirai: Fetching bundler after bundling messes with cached gems.
<GitHub107> rubinius/master 6689a8f Brian Shirai: Only install not-installed gems.
<GitHub107> rubinius/master 3fbcc3d Brian Shirai: Removed unnecessary multiple assignment in kernel. Closes #3222.
GitHub107 has left #rubinius [#rubinius]
awsteele has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
travis-ci has joined #rubinius
<travis-ci> rubinius/rubinius/master (3fbcc3d - Brian Shirai): http://travis-ci.org/rubinius/rubinius/builds/48136559: The build was broken.
travis-ci has left #rubinius [#rubinius]
diegoviola has quit [Quit: WeeChat 1.1]
GitHub108 has joined #rubinius
<GitHub108> [rubinius] brixen pushed 1 new commit to master: http://git.io/XfHyug
<GitHub108> rubinius/master 705a3d5 Brian Shirai: Added spec for a = b = m 1. Closes #3266.
GitHub108 has left #rubinius [#rubinius]
travis-ci has joined #rubinius
<travis-ci> rubinius/rubinius/master (3fbcc3d - Brian Shirai): http://travis-ci.org/rubinius/rubinius/builds/48136559: The build passed.
travis-ci has left #rubinius [#rubinius]
meh` has quit [Ping timeout: 245 seconds]
travis-ci has joined #rubinius
<travis-ci> rubinius/rubinius/master (705a3d5 - Brian Shirai): http://travis-ci.org/rubinius/rubinius/builds/48138015: The build passed.
travis-ci has left #rubinius [#rubinius]
amclain has quit [Quit: Leaving]
JohnBat26 has joined #rubinius
JohnBat26 has quit [Client Quit]
yipstar has quit [Ping timeout: 246 seconds]
johnmuhl has quit [Quit: Connection closed for inactivity]
[spoiler] has quit [Remote host closed the connection]
[spoiler] has joined #rubinius
Thijsc has joined #rubinius
goyox86 has joined #rubinius
goyox86_ has joined #rubinius
goyox86_ has quit [Read error: Connection reset by peer]
goyox86_ has joined #rubinius
goyox86_ has quit [Read error: Connection reset by peer]
goyox86_ has joined #rubinius
goyox86_ has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
goyox86 has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
larstobi has quit [Ping timeout: 244 seconds]
larstobi has joined #rubinius
yxhuvud has quit [Ping timeout: 264 seconds]
<yopp> mroning
<yopp> •morning
yxhuvud has joined #rubinius
<yopp> About mmap'ed files: is it possible to map memory directly to rbx primitives?
goyox86 has joined #rubinius
<yopp> To avoid copying data from this page to rbx heap
goyox86 has quit [Read error: Connection reset by peer]
goyox86 has joined #rubinius
goyox86 has quit [Read error: Connection reset by peer]
goyox86 has joined #rubinius
goyox86 has quit [Client Quit]
goyox86 has joined #rubinius
goyox86 has quit [Read error: Connection reset by peer]
<cremes> yopp: not yet. i am working on supporting that.
goyox86 has joined #rubinius
<cremes> well, supporting mapping to ByteArrays (which are the backing storage for Strings). if you wanted to map data to a C-like structure that’s a different story.
goyox86 has quit [Read error: Connection reset by peer]
goyox86 has joined #rubinius
goyox86 has quit [Read error: Connection reset by peer]
goyox86 has joined #rubinius
goyox86 has quit [Client Quit]
goyox86 has joined #rubinius
goyox86 has quit [Quit: Textual IRC Client: www.textualapp.com]
<yopp> cremes, so pretty much the same as in java NIO?
Bwild has quit [Quit: leaving]
<yopp> cremes, and if want to map to C-like structure then it will much harder, right? To properly reflect it in ruby world?
<cremes> yopp: i don’t know the difficulty. i have a bunch of IO to refactor before i can really tackle the mmap stuff. once i do i’ll understand the problem space a bit better.
<cremes> as for java NIO, i don’t know anything about that so i can’t comment.
johnmuhl has joined #rubinius
<cremes> why do we have File::Stat instead of IO::Stat? am i alone in thinking that doesn’t make any sense?
<yxhuvud> because that is how MRI does it
Thijsc has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
goyox86 has joined #rubinius
goyox86 has quit [Quit: Textual IRC Client: www.textualapp.com]
<cremes> yxhuvud: sure, but does it make any sense? IMO, no.
<yopp> cremes, in your impl, how you're see the use-case for ByteArray?
<cremes> yopp: i’m not to the point where i’m ready to implement that code yet, but looking forward i can see mapping a portion of a file into a ByteArray without requiring any allocations (no malloc or free to worry about).
<cremes> since ByteArray backs String, we could then offer a zero-copy String for File.
<yopp> with binary encoding?
<cremes> yes, by definition showing the raw bytes would imply “ASCII-8BIT” encoding
<cremes> if you needed a different encoding, you can String#force_encode at will.
<yopp> It will be possible to map files greater than memory?
<cremes> as long as the OS #mmap can do so, then yes
<yopp> yay!
<cremes> i’m really only targeting 64-bit architectures, so if you are on 32-bit it may not work the same.
<yopp> I don't care about 32-bit either :)
<cremes> ha
<cremes> i’m probably 2+ weeks away from having any mmap code done. i’m still struggling to yank out all of the C++ code that backs rbx’s current IO object and replacing it with Ruby + FFI.
<cremes> i post pretty frequently here about it, so keep an eye on the status and help me test it when it is further along.
<yopp> Sure. I'm playing with my db experiment, and mmap will help like a lot
<cremes> yopp: there is already a mmap gem that you could play around with.
<cremes> it’s a C extension and has been around for years.
GitHub106 has joined #rubinius
<GitHub106> [rubinius] bneumeier opened pull request #3294: fix build failure when RUBYGEMS_GEMDEPS is set to - (master...prevent-gemdeps-breakage) http://git.io/IusXTg
GitHub106 has left #rubinius [#rubinius]
<yopp> cremes, it fails to build on modern rubies
GitHub173 has joined #rubinius
<GitHub173> [rubinius] brixen closed pull request #3294: fix build failure when RUBYGEMS_GEMDEPS is set to - (master...prevent-gemdeps-breakage) http://git.io/IusXTg
GitHub173 has left #rubinius [#rubinius]
GitHub136 has joined #rubinius
<GitHub136> rubinius/master af7eb1b Brian Shirai: Merge pull request #3294 from bneumeier/prevent-gemdeps-breakage...
<GitHub136> rubinius/master efd4478 Brett Neumeier: fix build failure when RUBYGEMS_GEMDEPS is set to -
<GitHub136> [rubinius] brixen pushed 2 new commits to master: http://git.io/oPv4gA
GitHub136 has left #rubinius [#rubinius]
<yorickpeterse> right, too much C for the day
<yorickpeterse> Time to buy socks and then actually prepare my FOSDEM talk
<yorickpeterse> 18 funny slides is not nearly enough to make people weep in a corner
<brixen> yorickpeterse: keep in mind that no one will think they are funny but you :p
<yorickpeterse> there's that too
<yorickpeterse> but surely a slide showing MRI test code is going to make people laugh out of joy
<brixen> alternatively, anyone who does is probably someone to talk to about helping with rbx :)
<yorickpeterse> or the slide showing where I broke Rails :P
<brixen> yes, lots of joy there, I'm sure
<yorickpeterse> or the one where grep shows 0 tests for absolute_path
<yorickpeterse> or the Backtrace class in general
<brixen> oh, there's a few
<yorickpeterse> They don't test Backtrace itself, they test only #to_s
<yorickpeterse> and they do it via caller_locations
<brixen> heh
<brixen> you don't have to convince me
<yorickpeterse> :P
<brixen> been there, done that, have the tshirt and scars :)
<brixen> good luck with the slides and talk though
<yorickpeterse> I have to add a few more (basically need a decent ending), then I need to start prep talking it
<brixen> I'm gonna look at releasing with Travis, distributing rbx with Atom, and maybe kickstarting this Console thing
<yorickpeterse> Atom as in the editor?
<brixen> oh, and adding README.md :)
<yorickpeterse> ooooooooh
<yorickpeterse> wait
<yorickpeterse> we're adding a markdown readme?
<yorickpeterse> Are you ok?
<|jemc|> lol
<brixen> someone explained that github prefers the .md, but we can still include the README for non-githubbers
<brixen> like all those packagers
<yorickpeterse> well, you can use Markdown minus all the GH crap
<brixen> so GitHub will display our pretty links and badges and people who need to actually read text will have it
<yorickpeterse> Then it's basically just as readable as plain text
<yorickpeterse> and meh badges
<yorickpeterse> READMEs don't need to be geocities websites :P
<brixen> indeed
<brixen> in fact, if you're not on geocities, they *shouldn't* be geocities websites
<yopp> geocities is dead bady, geocities is dead.
<brixen> which is why I haven't been ok with *replacing* README with a .md
<brixen> yopp: there's a pretty sweet replacement by kyle drake
<yorickpeterse> But r distributing, do you mean the editor?
<yorickpeterse> Or is there some service called Atom?
<brixen> yopp: https://neocities.org/
<yopp> oh lol
<brixen> yorickpeterse: I mean the editor
<brixen> yorickpeterse: there are console plugins
<brixen> I'm going to create one that bundles rbx and hides it away, but makes it available in the console
<brixen> so people can very easily test out rbx
<yorickpeterse> ah right
<brixen> without dealing with the hell of RVM/rbenv/chruby/ruby-build/ruby-install/brew etc
<|jemc|> interesting
<brixen> I bet you it'll be the most used way of trying out rbx
<brixen> by summer (in the northern hemisphere)
<brixen> I suppose I should spiff that up a bit
<yopp> brixen, but it's not flashing and moving!
<brixen> yopp: I know!
<brixen> that's what I'm saying, it needs some spiff
<yopp> marquee with pink text on black bakckground
<yopp> •backgroun
<yopp> grr
<yorickpeterse> hmpf, seems I'll have to spend some quality time with the rbx CAPI
<yorickpeterse> it could use some webscale by the looks of it
<brixen> yopp: I added <blink>Wow</blink> but it's not doing anything
<brixen> yopp: could you help me debug it? :p
<yopp> :D
<yorickpeterse> * { text-decoration: blink; }
<brixen> yorickpeterse: where by quality time you mean, spend time replacing it, right?
<yopp> blink { text-decoration: blink };
<|jemc|> @brixen soon that will be easier to debug with the Rubinius::Console
<yorickpeterse> brixen: :<
<yopp> ah
<yopp> webkit did not support blinking
<yopp> that's sad
<yorickpeterse> welp, on MRI my C code is 1,7x the speed of Racc, but on Rbx it's 3,2x
<yorickpeterse> and 4,15x the pure Ruby code
<brixen> yorickpeterse: you mean faster? or slower?
<yorickpeterse> faster
<brixen> oh, good
<brixen> so what issue are you seeing with C-API?
<brixen> man, I keep forgetting about jsfiddle
<brixen> that's some cool shit
<brixen> ugh, too many things to do
<yorickpeterse> brixen: the same C code in MRI is 3,05x faster than Rbx
<brixen> 5 websites to update, 10 github orgs to delete
<yorickpeterse> so I have to see why that is
<brixen> yorickpeterse: yes, please do see
<brixen> also, if you can give me some simple code, I can look at it
<yorickpeterse> sure, sec
<yorickpeterse> "simple" :P
<brixen> I'm guessing it's either caching (if you're using Array) or symbol shit
<brixen> hmm, maybe I should spike more of the parser bytecode
travis-ci has joined #rubinius
<travis-ci> rubinius/rubinius/master (af7eb1b - Brian Shirai): http://travis-ci.org/rubinius/rubinius/builds/48168773: The build passed.
travis-ci has left #rubinius [#rubinius]
<brixen> I need one of those spinner things to pick what to work on
<yopp> what the faster way to do a popcount on a string in rbx?
<brixen> popcount?
<yopp> brixen, count the number of bits set
<brixen> yorickpeterse: so, Arrays?
<|jemc|> @brixen: MCJIT :D
<|jemc|> I can be your spinner if you like
<yorickpeterse> brixen: removed Racc stuff to simplify it a bit
<brixen> yopp: we have a primitive to do it with a Fixnum now
<yorickpeterse> brixen: the C code doesn't use Arrays other than building one for method call arguments
<brixen> yopp: I'm going to make that an instruction
<brixen> yopp: I suppose I could make a version of it that takes a byte sequence
<yorickpeterse> brb, socks
<yopp> brixen, it uses cpu instruction when it available on hardware, I hope? :)
<brixen> yopp: it can use the cpu insn
<yopp> yay. yeah, that would be great
<brixen> yopp: it's been a while but pretty sure when I was implementing it I tested the insn vs explicit code and the code was about as fast
<brixen> but I could be mistaken
<yopp> is there a method on fixnum to do that?
<brixen> yorickpeterse: I can't run your 2_test.rb
<brixen> yopp: look at the hash_hamt.rb
<brixen> that's what uses it right now
<brixen> I hacked it in quickly to implement HAMT
<brixen> but I'm going to make it proper instructions soon
<yopp> um, can't find it
<pwh> I'm trying to benchmark a rails app running on rbx 2.4.0, but after a few hundred requests I get hit with this: https://gist.github.com/pH14/0d5f2aa69366ad1ae071
<brixen> pwh: use 2.5.0
<pwh> @brixen is there a specific issue with 2.4.0 that would cause this?
<brixen> pwh: yes
<pwh> I've been working on some changes based around 2.4.0 so I'd like to compare it directly
<pwh> ah
<brixen> that's why 2.4.1 and 2.5.0 are released
<pwh> okay
<brixen> always use the latest release
<yopp> item index? :)
<brixen> yopp: are you actually looking at code?
<yopp> yep
<brixen> ok
<yopp> item index did not sound like it count something :)
<brixen> yopp: in HAMT, you get the index in the trie by a popcount on the bitmap for that trie
<brixen> which is where the array-mapped-trie part comes from in hash-array-mapped-trie
<brixen> yopp: like I mentioned, I hacked this in pretty quickly :p
<brixen> yorickpeterse: when you have time, if you could make or doc a repo for looking at perf on ll, I'll do that
<brixen> yorickpeterse: but I don't have patience to try to make this thing work
<brixen> I suppose I should at least at a C macro for omitting the Array C-API caching for well-behaved C-exts
<brixen> yopp: so tell me more about your use case for the pop count on a string
<brixen> yopp: do you mean String per se or just that's all MRI has
<brixen> yopp: IOW, if you could pop count an arbitrary vector of bytes, and that's available on ByteArray, is that sufficient?
<yopp> my usecase it working with bitmaps as well
<brixen> yopp: but you need to generalize to a sequences of bytes?
<yopp> to address page from bitmap, I need to count the index of current bit in bitmap, to get and index of page address in a page map
<yopp> brr, not and index in bitmap, but a number of a bit set before that bit
<brixen> yopp: so is that a "yes" or "no"? :p
johnmuhl has quit [Quit: Connection closed for inactivity]
<yopp> yes :)
<brixen> ok
<brixen> unix process creation, agonizingly terrible since forever
<yorickpeterse> brixen: huh, how does it not work?
<brixen> yorickpeterse: doesn't load ll
<yorickpeterse> did you drop it in the root directory of the repository?
<brixen> yep
<yorickpeterse> what error do you get?
<brixen> require_relative failed to load
JohnBat26 has joined #rubinius
<brixen> if I changed it to adding path to $: and require, lexer fails to load
<yorickpeterse> what the
<brixen> I want to clone, bundle, run a command
<brixen> if you can show me how to do that
<yorickpeterse> The steps in 1_setup.txt should be enough :/
<yorickpeterse> lemme try
<yorickpeterse> argh
<yorickpeterse> derp
<yorickpeterse> brixen: run `rake generate clean compile`
<yorickpeterse> I forgot the lexer is separate from the compilation process
<yorickpeterse> errr
<yorickpeterse> rake clean generate compile
<yorickpeterse> actually just `rake clean generate` should be enough
<brixen> what directory am I in to run 2_test.rb ?
<yorickpeterse> root directory of the repo
larstobi has quit [Ping timeout: 272 seconds]
<yopp> brixen, also, it will be nice to be able to do this without copying
<brixen> yopp: copying what?
<yopp> data from ByteArray
<yopp> since cremes is working to providing access to mapped memory via ByteArray, it will be nice to do it like buffer.count_bits(offset, count)
larstobi has joined #rubinius
<yopp> tr/count/length/
<brixen> yopp: of course, you wouldn't copy to do that
<yopp> niiice. :)
havenwood has joined #rubinius
<yopp> btw, I can't get 2.5.0 with ruby-install: Could not find daedalus-core-0.2.0 in any of the sources (Bundler::GemNotFound)
<cremes> brixen: does ffi2-generator support generating nested structs? do you recall offhand? i wrote some code with a nested struct but it doesn’t output correctly. curious if it’s my problem or just unsupported in ffi2-generator.
<brixen> cremes: I don't know
<cremes> ok, i’ll bang on it.
<brixen> yopp: that gem is in the rubinius-2.5.0 release tarball, vendor/cache dir
<brixen> yopp: so dunno
<brixen> I think I cannot go another week without killing Ruby from our build deps
<brixen> drives me absolutely fucking crazy
pchalupa has quit [Ping timeout: 240 seconds]
pchalupa has joined #rubinius
<cremes> brixen: i have some updates for ffi2-generators. should i send a pull request to the ffi2-generators project or just commit to rubinius?
<brixen> cremes: we use the gem, no?
<cremes> brixen: i guess we do.
<cremes> i’ll send a pull request later this weekend after i confirm that i have everything working. thanks for this cool tool.
<brixen> cremes: you should have commit on that repo
Thijsc has joined #rubinius
<yorickpeterse> ugh, finding a way to start your talk is hard
<yorickpeterse> beyond the "Hi my name is Yorick and I complain a lot"
Thijsc has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
pchalupa has quit [Quit: Leaving]
<cremes> brixen: ah yes, so i do. i’ll commit directly.
<cremes> yorickpeterse: if you want to practice your talk with me over skype, i’ll be happy to heckle you and throw trout.
djellemah has joined #rubinius
<yorickpeterse> hehe
meh` has joined #rubinius
pwh has quit []
JohnBat26 has quit [Quit: KVIrc 4.3.1 Aria http://www.kvirc.net/]
JohnBat26 has joined #rubinius
JohnBat26 has quit [Client Quit]
djellemah has quit [Quit: Leaving]
Thijsc has joined #rubinius
pwh has joined #rubinius
Bwild has joined #rubinius
frzng has quit [Quit: frzng]
Thijsc has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
heroux has quit [Ping timeout: 255 seconds]
heroux has joined #rubinius
awsteele has joined #rubinius
Bwild has quit [Ping timeout: 245 seconds]
Bwild has joined #rubinius
flavorjones has quit []
flavorjones has joined #rubinius