amclain has joined #rubinius
havenwood has quit [Remote host closed the connection]
elia has quit [Quit: Computer has gone to sleep.]
havenwood has joined #rubinius
dimday has joined #rubinius
jc00ke has quit [Quit: WeeChat 0.4.2]
jc00ke has joined #rubinius
havenwood has quit []
lbianc has quit [Ping timeout: 240 seconds]
sbryant has quit [K-Lined]
sbryant has joined #rubinius
dzhulk has quit [Read error: Connection reset by peer]
dzhulk has joined #rubinius
JohnBat26 has joined #rubinius
amclain has quit [Quit: Leaving]
dimday has quit [Ping timeout: 240 seconds]
dimday has joined #rubinius
_JohnBat26_ has joined #rubinius
JohnBat26 has quit [Ping timeout: 265 seconds]
diegoviola has quit [Remote host closed the connection]
dzhulk has quit [Quit: Leaving.]
_JohnBat26_ has quit [Quit: KVIrc 4.3.1 Aria http://www.kvirc.net/]
JohnBat26 has joined #rubinius
<yorickpeterse> morning
dimday has quit [Quit: Leaving.]
dzhulk has joined #rubinius
mamantoha has joined #rubinius
benlovell has joined #rubinius
goyox86 has joined #rubinius
goyox86 has quit [Client Quit]
mamantoha has quit [Read error: Connection reset by peer]
mamantoha has joined #rubinius
noop has joined #rubinius
flavio has joined #rubinius
flavio has joined #rubinius
flavio has quit [Ping timeout: 250 seconds]
flavio has joined #rubinius
flavio has joined #rubinius
|jemc| has quit [Ping timeout: 265 seconds]
goyox86 has joined #rubinius
postmodern has quit [Quit: Leaving]
elia has joined #rubinius
lbianc has joined #rubinius
<goyox86> morninig!
<goyox86> yorickpeterse :(
<yorickpeterse> goyox86: ?
<goyox86> yorickpeterse: The lexer thing
benlovell has quit [Ping timeout: 245 seconds]
<yorickpeterse> oh right
<yorickpeterse> well, Rubby just isn't webscale :P
<yorickpeterse> Rbx has a lot to improve though, it runs in about 3,2 seconds
benlovell has joined #rubinius
benlovell has quit [Ping timeout: 272 seconds]
noop has quit [Ping timeout: 240 seconds]
noop has joined #rubinius
meh` has joined #rubinius
benlovell has joined #rubinius
noop has quit [Ping timeout: 264 seconds]
noop has joined #rubinius
lopex has quit [Read error: Connection reset by peer]
alexsuraci has quit [Read error: Connection reset by peer]
lopex has joined #rubinius
chrisseaton has quit [Read error: Connection reset by peer]
cpuguy83 has quit [Write error: Connection reset by peer]
locks has quit [Write error: Connection reset by peer]
guilleiguaran has quit [Write error: Connection reset by peer]
alexsuraci_ has joined #rubinius
|jemc-bot| has quit [Ping timeout: 265 seconds]
chrisseaton has joined #rubinius
cezarsa has quit [Ping timeout: 265 seconds]
cezarsa has joined #rubinius
cpuguy83 has joined #rubinius
machty has quit [Ping timeout: 265 seconds]
machty_ has joined #rubinius
locks has joined #rubinius
guilleiguaran has joined #rubinius
machty_ is now known as machty
|jemc-bot| has joined #rubinius
lbianc has quit [Quit: ChatZilla 0.9.91 [Firefox 24.8.1/20140923194127]]
benlovell has quit [Ping timeout: 250 seconds]
benlovell has joined #rubinius
havenwood has joined #rubinius
sem has joined #rubinius
<sem> Hello, is there someone who can help me to install rubinius 2.2.7 on Ubuntu ? Please. I'm beginner
<yorickpeterse> sem: 2.2.7 is rather outdated, can you install 2.3 instead?
<yorickpeterse> sem: also, are you using a Ruby version manager or not?
<sem> we're trying to fix a bug on this version
<yorickpeterse> What specific bug? It might've already been fixed since
<yorickpeterse> Please try that on 2.3, it could've been resolved since
benlovell has quit [Ping timeout: 256 seconds]
<yorickpeterse> if it's still there there's little point in trying to fix this specifically on 2.2.7
<sem> It's an exercice . We are practicing
<Rotonen> clone source, checkout tag, build the deb, install the deb
<yorickpeterse> sem: you are trying to fix something on an outdated/unsupported version, there's no reason not to use 2.3
noop has quit [Ping timeout: 258 seconds]
<yorickpeterse> if you are using RVM/ruby-install/chruby you can still install it, but I would highly recommend using 2.3 instead
<yorickpeterse> brixen: *cough* *cough* 2.4 *cough*
<sem> oki. We are using rbenv
mbj has joined #rubinius
mbj has quit [Client Quit]
mbj has joined #rubinius
<yorickpeterse> Then you can probably do something like ruby-build install rubinius ....
<yorickpeterse> not sure how to install specific versions using ruby-build/rbenv
<brixen> yorickpeterse: yeah, yeah, working on it :)
<brixen> sem: if you're going to do development on rbx, you need to clone and build
enebo has joined #rubinius
<sem> ok thx a lot for your help !!! By the way we are students in France. And it's the first time we are working on rubinius :-)
<brixen> sem: awesome!
<yorickpeterse> sem: out of curiosity, what school/university (if any) is giving these classes?
<brixen> sem: so, you can build an run rbx in the clone directory
noop has joined #rubinius
<sem> @yorickpeterse check out our school http://simplon.co/. And @brixen : can you explain me more ?
<sem> please
<yorickpeterse> sem: are you familiar with Git?
<yorickpeterse> ha, also a member of EU code week
<sem> yep I
<sem> Yep for git
<sem> I use git
craigp has joined #rubinius
havenwood has quit [Remote host closed the connection]
<yorickpeterse> ok, so here's what you'll need to do to get Rbx going locally for dev:
<yorickpeterse> git clone git@github.com:rubinius/rubinius.git; cd rubinius; bundle install; ./configure --prefix path/to/where/you/want/to/install/rbx; rake install
craigp has quit [Client Quit]
<yorickpeterse> If you know what "clang" is and have it installed, use ./configure --prefix path/to... --cc=clang --cxx=clang++ instead
<sem> oki :-).
havenwood has joined #rubinius
havenwood has quit [Remote host closed the connection]
tenderlove has joined #rubinius
havenwood has joined #rubinius
noop has quit [Ping timeout: 240 seconds]
benlovell has joined #rubinius
benlovell has quit [Ping timeout: 264 seconds]
<sem> @yorickpeterse. We've installed rubinius :-).
<sem> we will try to reproduce the bug
<sem> again th
<sem> thx
mbj has left #rubinius [#rubinius]
<yorickpeterse> grats, and good luck
geekbri has joined #rubinius
mamantoha has quit [Ping timeout: 250 seconds]
benlovell has joined #rubinius
|jemc| has joined #rubinius
goyox86 has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
flavio has quit [Quit: WeeChat 1.0]
benlovell has quit [Ping timeout: 255 seconds]
goyox86 has joined #rubinius
<|jemc|> brixen: what is your workflow for using a local version of one of the rubinius-* runtime gems?
<brixen> using?
<yorickpeterse> |jemc|: RUBYLIB=lib mspec ....
<|jemc|> and I had a process working for getting the rubinius build to install my local gem but I think I'm doing too much work
<yorickpeterse> also you should be able to just Gem install them locally
<|jemc|> yorickpeterse: even for the $RBX/runtime/gems?
<yorickpeterse> Not 100% sure if we still have that hack in place where we always load the bundled versions
<brixen> |jemc|: you can clone into runtime
dzhulk has quit [Quit: Leaving.]
<|jemc|> my process last night was: clone rubinius to a clean directory, start rake build, interrupt it after it downloads melbourne and replace the downloaded gem, then continue with build
<|jemc|> brixen: so yes, that sounds much easier :)
<brixen> the setup is done with configure
<|jemc|> do I need to RBC them somehow first, or is that unnecessary?
<brixen> after that, you can swap things
<brixen> the build system will build what's there
<|jemc|> well, I was getting confused about the order of build operations and what caches I had to replace
<brixen> configure sets up everything
<|jemc|> there's the ./vendor/cache, the ./runtime and the ./staging
<brixen> 'rake build' builds it
<brixen> you shouldn't configure to install if you're doing dev
<brixen> so, there shouldn't be any staging in the mix
<brixen> ./runtime is set up by configure
<|jemc|> brixen: when you say I shouldn't configure to install, you mean, just don't run 'rake install' right? Not any special configure options?
<brixen> I mean, only use './configure' and then 'rake build'
<|jemc|> yep, okay
<brixen> if you really need to run you dev build elsewhere, use chruby
<brixen> it's exquisitely simple :)
<|jemc|> thanks for the breakdown
<yorickpeterse> brixen: we still don't allow manually installed rubinius-* Gems to be used during runtime right?
<brixen> otherwise, PATH=path/to/clone/bin:/path/to/clone/gems/bin:PATH and go
<yorickpeterse> That is, Gems installed _after_ Rbx is built
<brixen> there's no simple mechanism now, you'd have to build them manually so the .rbc files can be loaded
<brixen> but all that is changing asap
<yorickpeterse> Ah yes
<brixen> so I can kill Ruby as a build dep
<yorickpeterse> what isn't changing by this point :P
<brixen> we're still stuck with Encoding :P
<brixen> although adding a switch for a single code set at runtime :)
<yorickpeterse> but imagine the applications of being able to use KOI-8R for Ruby
<yorickpeterse> err KOI8-R
goyox86 has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
<brixen> you can
<yorickpeterse> brixen: other subject: metrics. Am I correct in thinking that "memory.large.objects.total" is the total amount of allocated objects, ever?
<brixen> yes
<brixen> it's a "total"
<brixen> not a "current"
<yorickpeterse> Yeah that's what I need, the total amount "ever"
<yorickpeterse> And "gc.immix.count" is the major/mature GC right?
<brixen> it's the immix count
goyox86 has joined #rubinius
<brixen> the large object is also "mature"
<yorickpeterse> Hm
<brixen> and basically, symbols would be, too, once those are collected
<yorickpeterse> So reason for asking, there's this: https://github.com/newrelic/rpm/pull/197. New Relic has basically two GC graphs: minor and major
<yorickpeterse> So I was wondering what I can map that to, right now major is mapped to immix
<yorickpeterse> apparently that PR made the rouns on RubyConf
<yorickpeterse> * rounds
<yorickpeterse> at least between NR devs
<brixen> this is the reason NR (and any other similar) approach to this sucks
<yorickpeterse> Oh yeah, normalization has its downsides
<brixen> not just downsides, it's basically wrong
<yorickpeterse> But considering MRI is like 90% of the userbase I can't really blame them
<yorickpeterse> But I'll have to see if I can persuade them to at least include JIT metrics in APM
<yorickpeterse> e.g. it would be cool if I could see JIT activity over time and what effect it has on other parts
<yorickpeterse> Either way, I'll then rebase this PR and have it merged int
<yorickpeterse> * in
<brixen> we need to work with NR on this
<brixen> for example, if they are not counting the concurrent GC as concurrent, they are displaying erroneous data
<brixen> period
<yorickpeterse> euh, I don't think they even have metrics for that
<yorickpeterse> They basically have: total GC time, major and minor
<brixen> wrong data is wrong, not partially useful
<brixen> that can only map to any stop the world time in rbx
<brixen> but then that's misleading, because you won't see the actual work load on the concurrent JIT
<brixen> er concurrent GC
<brixen> but similar for the concurrent JIT
<yorickpeterse> Yeah I suspected something like that since the GC graphs were _very_ low
<yorickpeterse> that is, rarely would there be GC activity
<yorickpeterse> though that changed since making Immix non-concurrent
<brixen> but that's correct, in terms of impact to available computation for the mutator threads
<brixen> unless the process is actually CPU bound
goyox86 has quit [Quit: Textual IRC Client: www.textualapp.com]
mamantoha has joined #rubinius
<brixen> the set of metrics we're going to emit from Rubinius::Metrics is the minimum set
<brixen> it can't be summarized or subsetted
<yorickpeterse> I think for NR wise the only metric we're missing is....
<yorickpeterse> how many free heap slots we have
<yorickpeterse> if that even applies to Rbx
<brixen> it doesn't
<yorickpeterse> Right, so we always reclaim/free them when we no longer need them?
<brixen> not necessarily, immix allocates into holes
geekbri has quit []
<brixen> but what fits in those depends on the allocation
<yorickpeterse> euh, so we we-use whenever possible and only allocate what we need on top of that?
<yorickpeterse> (not sure why MRI has free heap slots to begin with, seems a bit of a waste to keep them around unused)
<brixen> mapping any of these ideas to MRI's GC is wrong
<brixen> I can't say it any more simply
<brixen> NR needs to just stop doing that
<yorickpeterse> Oh that part I got, I'm curious as to why we don't have this idea of "free heap slots"
<brixen> it's an implementation detail
|jemc| has quit [Quit: WeeChat 1.0.1]
|jemc| has joined #rubinius
mamantoha has quit [Quit: No Ping reply in 180 seconds.]
<yorickpeterse> bbl, train
mamantoha_ has joined #rubinius
<|jemc|> brixen: cloning into $rubinius_source_root/runtime works like a charm, thanks :)
<|jemc|> and much less of a hassle than I was going through last night
<brixen> |jemc|: sweet :)
<brixen> looking at rubocop spec failures
<brixen> "RuboCop::Formatter::BaseFormatter how the API methods are invoked #finished when RuboCop finished inspecting all files normally the passed files paths is frozen"
<brixen> who even knows...
amsi has joined #rubinius
mamantoha_ has quit [Ping timeout: 250 seconds]
goyox86 has joined #rubinius
benlovell has joined #rubinius
benlovell has quit [Ping timeout: 240 seconds]
<headius> yorickpeterse: MRI, like most GCed VMs, allocates memory in large chunks and then bites off pieces of that as objects are needed, rather than doing a malloc for every new object
<headius> I believe the heap slots are the open slots in those chunks
elia has quit [Quit: Computer has gone to sleep.]
pietr0 has joined #rubinius
<cremes> |jemc|: if you have a chance after figuring out your workflow, pls update the rubinius docs to include your steps. if you don’t want to, at least write something simple up and send it to me and i’ll add it to the docs. thanks!
noop has joined #rubinius
goyox86 has quit [Ping timeout: 245 seconds]
dzhulk has joined #rubinius
sem has quit [Quit: http://www.kiwiirc.com/ - A hand crafted IRC client]
<yorickpeterse> $HOME sweet $HOME
<yorickpeterse> headius: ah right
<yorickpeterse> brixen: random train thought: does our JIT optimize literal strings, if not, would that be possible?
<yorickpeterse> brixen: e.g. for something like `while true; "foo"; end` it would optimize it to only allocate once
<yorickpeterse> MRI can do this given you call #freeze on everything, which is kinda stupid
mamantoha_ has joined #rubinius
<headius> yorickpeterse: you'd have to know the string is never mutated...that case might be on example, but it's basically dead code too
<yorickpeterse> headius: True, that's the tricky part I bumped into while thinking about it
<chrisseaton> yorickpeterse: you also have to know that nobody modifies that string via ObjectSpace from another thread
<brixen> yorickpeterse: yes, it's possible but the JIT doesn't do it right now
<brixen> it will be a moot point with immutable String, though
<yorickpeterse> well yeah, if only Ruby had those
<yorickpeterse> oh wait GC'd symbols
<yorickpeterse> :P
<|jemc|> cremes: was thinking the same thing :) - will do!
<yorickpeterse> I wonder what the CPU usage % is of those systems
<yorickpeterse> (hint: there's sarcasm involved in that question :P)
diegoviola has joined #rubinius
havenwood has quit [Remote host closed the connection]
tenderlove has quit [Remote host closed the connection]
noop has quit [Ping timeout: 245 seconds]
goyox86 has joined #rubinius
mamantoha_ has quit [Ping timeout: 258 seconds]
mamantoha_ has joined #rubinius
josh-k has joined #rubinius
elia has joined #rubinius
havenwood has joined #rubinius
amsi has quit [Ping timeout: 255 seconds]
josh-k_ has joined #rubinius
elia has quit [Quit: Computer has gone to sleep.]
josh-k has quit [Ping timeout: 265 seconds]
elia has joined #rubinius
tenderlove has joined #rubinius
JohnBat26 has quit [Ping timeout: 272 seconds]
<|jemc|> I can't figure out how the heck rubinius-melbourne is passing on travis
<|jemc|> When I try to run the specs I see the same path-ing issue as noted in https://github.com/rubinius/rubinius-melbourne/issues/8
<|jemc|> seems like what is really needed here is require_relative but that would break 1.8 melbourne
<|jemc|> does mspec do some kind of $LOAD_PATH magic that is working on travis and not working right on my machine or the machines of those others who in the linked issue?
goyox86 has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
<|jemc|> I've seen that mspec has the -I option but it doesn't seem to actually affect the $LOAD_PATH
dzhulk has quit [Quit: Leaving.]
goyox86 has joined #rubinius
amsi has joined #rubinius
goyox86 has quit [Ping timeout: 250 seconds]
tenderlove has quit [Remote host closed the connection]
<|jemc|> yorickpeterse: you're right, that's why it works
<|jemc|> seems like that should be moved to the spec rake task though
<yorickpeterse> How so?
<yorickpeterse> (I'd rather see require_relative of sorts here)
<yorickpeterse> 1.8 shouldn't be a problem since there's a 1.0 branch for that
<|jemc|> yorickpeterse: I'd prefer require_relative as well
<|jemc|> or even a $LOAD_PATH hack in default.mspec
<|jemc|> but require_relative is obviously better if we're not going to cause 1.8 problems
<|jemc|> I ran into this because I'm intending to add some specs for things like op_cdecl and preexe
mamantoha_ has quit [Ping timeout: 265 seconds]
havenwood has quit [Remote host closed the connection]
josh-k_ has quit [Remote host closed the connection]
josh-k has joined #rubinius
josh-k has quit [Ping timeout: 265 seconds]
havenwood has joined #rubinius