<TheNotary>
.each is fine in jQuery too. I wonder where I picked up this myth..
<whitequark>
1.8?
<TheNotary>
where ever it came from it's now washed from my mind =)
yankeefan04 has quit [Remote host closed the connection]
torrieri has quit [Quit: Leaving...]
marr has quit [Ping timeout: 252 seconds]
ruby-lang479 has joined #ruby-lang
ruby-lang479 has left #ruby-lang [#ruby-lang]
ootoovak has quit [Quit: ootoovak]
krohrbaugh has joined #ruby-lang
mwjcomputing has joined #ruby-lang
bzalasky has joined #ruby-lang
krohrbaugh has quit [Ping timeout: 256 seconds]
idkazuma has quit [Remote host closed the connection]
bzalasky has quit [Remote host closed the connection]
Guest51459 has joined #ruby-lang
soknee has joined #ruby-lang
mistym has joined #ruby-lang
mistym has quit [Changing host]
mistym has joined #ruby-lang
nXqd has quit [Ping timeout: 252 seconds]
soknee has quit [Client Quit]
wmoxam has joined #ruby-lang
ootoovak has joined #ruby-lang
torrieri has joined #ruby-lang
Guest51459 has quit [Quit: leaving]
Bosox20051 has joined #ruby-lang
dingus_khan has joined #ruby-lang
ykk` has quit [Remote host closed the connection]
ykk` has joined #ruby-lang
Andromeda has joined #ruby-lang
amerine has quit [Quit: Computer has gone to sleep.]
amerine has joined #ruby-lang
amerine has quit [Client Quit]
Swimming_Bird has quit [Quit: Computer has gone to sleep.]
torrieri has quit [Quit: Leaving...]
soknee has joined #ruby-lang
soknee has quit [Client Quit]
mytrile has quit [Remote host closed the connection]
benanne has quit [Quit: kbai]
soknee has joined #ruby-lang
baba has quit [Ping timeout: 245 seconds]
megha has joined #ruby-lang
Erlkoenig has quit [Quit: Leaving.]
<dingus_khan>
I'm sorry for what is probably a really stupid question, but I'm in that head space where I can't tell up from left: when defining a method, is it alright to have separate single-condition if statements (no elsif's), each exiting the method if their condition is met, and then methods below those that continue to evaluate the arguments passed in?
ykk` has quit [Remote host closed the connection]
<whitequark>
mbj: ping
<micaeked>
dingus_khan: Yes.
soknee has quit [Quit: Leaving.]
<dingus_khan>
whew, thanks, lol. also, right on about the for loops up above--I first programmed in C++ a long time ago, so I got kinda use to them, but it seems like "idiomatic" ruby is more important over slight performance gains, and I'll admit I like it when it's readable, lol
<micaeked>
dingus_khan: Yep. Also, no performance gains.
<dingus_khan>
oh word? I thought someone mentioned that--I've no idea one way or another, just that each-do looks better, hah. now I just have to stop putting parens everywhere, apparently!
krohrbaugh has joined #ruby-lang
<micaeked>
dingus_khan: I actually use parens. I like it better that way.
<whitequark>
dingus_khan: each..do is actually marginally faster.
<whitequark>
by a few %
<dingus_khan>
well good then, I'll take your word for it! the parens though, aren't there cases where they're a bad thing?
<whitequark>
dingus_khan: what are you talking about?
r0bglees0n has quit [Ping timeout: 260 seconds]
krohrbaugh has quit [Ping timeout: 246 seconds]
<micaeked>
dingus_khan: I have not found any yet. Personally, they make reading code much easier.
r0bby has quit [Read error: Connection reset by peer]
r0bby has joined #ruby-lang
<dingus_khan>
whoops, nevermind, I had that backwards--yes on parens more often than not, according to Eloquent Ruby.
zachlatta has quit [Ping timeout: 245 seconds]
woollyams has joined #ruby-lang
r0bgleeson has joined #ruby-lang
crynix has joined #ruby-lang
Fantaz has joined #ruby-lang
crynix has quit [Remote host closed the connection]
tylersmith has joined #ruby-lang
wmoxam has quit [Ping timeout: 248 seconds]
wmoxam has joined #ruby-lang
mchang has joined #ruby-lang
symm- has quit [Ping timeout: 245 seconds]
<mchang>
howdy - anyone here to help me with a quick ruby regexp question? (har har)
<Gaelan>
mchang: What's wrong?
<mchang>
input string, one line: <aresponse><bresponse><cresponse>
vlad_starkov has quit [Remote host closed the connection]
srbaker has quit [Quit: Computer has gone to sleep.]
<yorickpeterse>
you mean your code is drunk
<yorickpeterse>
and in ther words, you
<yorickpeterse>
* other
mbj has joined #ruby-lang
Gaelan has quit [Ping timeout: 248 seconds]
<whitequark>
no it got drunk by itself
<whitequark>
like, totally on its own
<yorickpeterse>
suuure
<charliesome>
how could would it be to be able to un-include modules
<whitequark>
yorickpeterse: also. remember that time I spent half a hour incorporating precise location reporting for tNLs?
<whitequark>
LOL
<charliesome>
s/could/good/
krohrbaugh has quit [Ping timeout: 252 seconds]
sanjeev_ has quit [Remote host closed the connection]
Gaelan has joined #ruby-lang
vlad_starkov has joined #ruby-lang
slick has joined #ruby-lang
slick has quit [Remote host closed the connection]
chessguy has joined #ruby-lang
sanjeev has joined #ruby-lang
wmoxam has joined #ruby-lang
Gaelan has quit [Ping timeout: 260 seconds]
<r0bgleeson>
charliesome: you can do that in pure Ruby core but there's also C extensions to do it as well. I donno how useful it is. I've needed to do it only once.
<r0bgleeson>
the pure Ruby version I found very hard to make thread safe
sanjeev has quit [Remote host closed the connection]
<whitequark>
judofyr: 60% faster than RP, can parse itself
<judofyr>
nice
<whitequark>
now checking against 1.8 stdlib
<whitequark>
RP fails :D
<mbj>
whitequark: I also found lots of stuff I forgot about outside the stdlib in "rails" ;)
<mbj>
whitequark: So check also against rails if you have the time.
<mbj>
whitequark: Interesting RBX bug
<whitequark>
omg I totally fail 1.8 stdlib
<judofyr>
haha
<judofyr>
how far away is 1.9 support?
<whitequark>
judofyr: a day?
<judofyr>
not bad
<whitequark>
I just have to begin and end writing it
<judofyr>
:)
<whitequark>
srsly, 1.9 isn't that complex when you already have the lexer
<whitequark>
and bison rules
<judofyr>
I heard the massign got more complex
<whitequark>
judofyr: more general
<whitequark>
I dunno why rbx fails it that much
<judofyr>
whitequark: has zenspider responded to your PR?
<whitequark>
judofyr: nope yet
JohnBat26 has joined #ruby-lang
<whitequark>
hmmm
<whitequark>
(string):159:28: error: unexpected token tOP_ASGN if words.find{|x| x =~ /=/} then words.join('&') else words.join('+') end
<whitequark>
so I misparse =~ /=/ as =~ divide_and_equal
<bougyman>
funny, vim used to do the same
<whitequark>
my parser is totally powered by vimscript
<judofyr>
whitequark: anything I could do on parser?
<whitequark>
judofyr: oh, yes
<whitequark>
first you can look at the code and say where it could be better
<whitequark>
second you can check out branch ruby19 and port some rules over from ruby18.y
<whitequark>
they're like 80% same
<whitequark>
*rule actions
<whitequark>
heh, my bin/benchmark has P (parser) and RP (ruby_parser)
<whitequark>
the P=RP problem :D
<mbj>
whitequark: lol
<whitequark>
fixed 3 failures in stdlib due to "class<<self" being treated as heredoc
<whitequark>
as opposed to "class <<self"
<whitequark>
(don't ask)
<whitequark>
judofyr: I've just rebased ruby19 on master, btw
CorpusCallosum has joined #ruby-lang
<whitequark>
some helpful hints: if you wanna look at the parsing process, or smth fails and you have no idea why
<whitequark>
$ ./bin/explain-parse file.rb
<judofyr>
whitequark: what do you store in Source::Map?
<whitequark>
judofyr: please refer to the AST_FORMAT.md file. all nodes should ideally have a Source::Map or its subclass
<whitequark>
for example, array's Source::Map subclass should have #expression, which covers the entire node, and #begin and #end, which point to the starting and ending token
<judofyr>
ah, right
<whitequark>
also a possible target for hacking on :3
<judofyr>
you use classes instead of a Hash?
MaddinXx has joined #ruby-lang
<whitequark>
yes. memory consumption.
<whitequark>
I aim to have as little overhead as possible and optimize for clever runtimes (Rbx, jruby) which compactify stable ivar layouts
MaddinXx has quit [Remote host closed the connection]
tbuehlmann has quit [Remote host closed the connection]
<whitequark>
it's still going to be pretty fat, but I have some optimizations in mind if that becomes a problem
<judofyr>
whitequark: there's no source map that includes "begin"/"end" yet?
<whitequark>
judofyr: yep
<whitequark>
I haven't had any time to hack on source maps yet.
<whitequark>
all the infrastructure is there, you should just add the relevant stuff to the node composition in builders/default.rb
<whitequark>
I think it contains a single example
idkazuma has joined #ruby-lang
<whitequark>
ah, no, not anymore
<judofyr>
`def t` adds a source map
idkazuma has quit [Remote host closed the connection]
<whitequark>
well, the point is that for a composite node, you get the relevant range--for an array that would be either lparen..rparen, or elems[0]..elems[-1], and do the #join on the Source::Range's
<judofyr>
whitequark: but the attributes in the AST is still stored as a Hash? or do you use a subclass for that too? *checks*
<whitequark>
judofyr: a subclass
<whitequark>
Parser::AST::Node
<whitequark>
it's just assigned thru a hash and I'm going to fix that
<whitequark>
that's some useless byte shuffling
ruby-lang966 has joined #ruby-lang
<judofyr>
whitequark: have you done any diag work? are the classes used?
<whitequark>
judofyr: absolutely, see assert_diagnoses in test_parser.rb
<whitequark>
I have 100% coverage for parser diagnostics and a few of lexer ones are covered too
<charliesome>
whitequark: mri also has some smarts when it comes to looking up ivars vs. looking up keys in a hash
<whitequark>
charliesome: yeah
<judofyr>
whitequark: I'll port some ruby18 to ruby19 then
<whitequark>
judofyr: awesome, thanks!
<whitequark>
tip: fix compstmt at the begin of .y, then begin from the end of file
<ddd>
ok i really do NOT understand wtf is going on suddenly. my tmux is overwriting the last line of channel text until I change to a different win and then back (this happens when the window is full and it would have to scroll to display the text)
kbouwser has left #ruby-lang [#ruby-lang]
<ddd>
sorry, said that in a diff channel and accidently reposted here
security is now known as fire
Rich_Morin has joined #ruby-lang
jxie has quit [Quit: leaving]
<whitequark>
>18:56 -!- security is now known as fire
<whitequark>
lol.
mrfelix has joined #ruby-lang
<fire>
whitequark: :P
chessguy has quit [Read error: Connection reset by peer]
chessguy has joined #ruby-lang
* whitequark
headdesks
chessguy has quit [Read error: Connection reset by peer]
<whitequark>
I just did the following testcase and was wondering why doesn't it work. On consecutive lines:
<whitequark>
foo %=bar
<whitequark>
foo /bar/
<whitequark>
... and /bar/ is suddenly tDIVIDE, tIDENTIFIER, etc
jxie has joined #ruby-lang
chessguy has joined #ruby-lang
<whitequark>
whoever invented that snooping must be shot.
<whitequark>
also: 11 failures on 1.8 stdlib.
ddd has quit [Quit: ok restarting with no tmux. just means I will disconnect when done]
ddd has joined #ruby-lang
maxmanders has joined #ruby-lang
tbuehlmann has joined #ruby-lang
Rich_Morin has left #ruby-lang [#ruby-lang]
a3li has quit [Ping timeout: 246 seconds]
srbaker has quit [Quit: Computer has gone to sleep.]
<judofyr>
whitequark: I'm seeing a lot of `{ result = self.lexer.lineno }` which are then passed in as `line` later. is this needed with the Ragel-lexer?
<whitequark>
judofyr: nope they're handled in builder
<whitequark>
as you can see there are no such statements in ruby18.y
<whitequark>
also note that {} appears as a token in the val array
<whitequark>
so you should remove it if it's empty but don't forget about indexes
a3li has joined #ruby-lang
* whitequark
thinks about writing an automated testcase reduction tool
<whitequark>
aka 'bugpoint' in llvm
<whitequark>
it does exactly that: points you at bugs.
<whitequark>
basically it performs binary search of the bug in the supplied code
cored has joined #ruby-lang
cored has quit [Changing host]
cored has joined #ruby-lang
dhruvasagar has joined #ruby-lang
<mbj>
git bisect like on the source level
<whitequark>
bugpoint is useful for proactively finding bugs in LLVM. Invoking bugpoint with the -find-bugs option will cause the list of specified optimizations to be randomized and applied to the program. This process will repeat until a bug is found or the user kills bugpoint.
<whitequark>
<3
<whitequark>
for gcc that would be "until a bug is found."
<whitequark>
ok, a bug with ?. now only to check which one of EIGHT overloads in the grammar has handled that ?.
<mbj>
whitequark: I'm very happy with parsers progress!
<mbj>
I love the future, when I can drop the RBX ast ;)
<mbj>
whitequark: And again big sorry there is no real contribution from my side. Had some indeterministic business issues here.
<whitequark>
mbj: happens, yeah :/
<whitequark>
omg a bug I missed because my editor strips trailing spaces
krohrbaugh has quit [Ping timeout: 264 seconds]
maxmanders has quit [Quit: Computer has gone to sleep.]
maxmanders has joined #ruby-lang
sush24 has joined #ruby-lang
<whitequark>
4
<mbj>
whitequark: BTW IMHO your parser is build with the deepest level of attention, unit-specs coverage etc. No other ruby parser does have these quality proving properties?
<whitequark>
mbj: yep.
<whitequark>
well, there's only one other ruby parser :)
<mbj>
whitequark: nice, you already talked to some rbx guys if they'd like to adapt yours?
<whitequark>
the MRI one. everyone else just translated it into their respective language
<whitequark>
dbussink said that ruby_parser didn't cut it (OMG I'M SO SURPRISED) and it'd be nice to look how parser would work here
<mbj>
whitequark: And I thought running mutant against rails is fun
Mon_Ouie has quit [Read error: Operation timed out]
jet4fire has left #ruby-lang [#ruby-lang]
<judofyr>
whitequark: dinner now. going to continue working on it later. I'll probably send a PR tonight.
<whitequark>
judofyr: thanks:)
ruby-lang966 has quit [Ping timeout: 245 seconds]
ddd has quit [Quit: Lost terminal]
swav has quit [Remote host closed the connection]
<whitequark>
>> self*other.conjugate/other.abs2
<eval-in>
whitequark => /tmp/execpad-1ff1e0f45b40/source-1ff1e0f45b40:2:in `<main>': undefined local variable or method `other' for main:Object (NameError) (http://eval.in/15307)
<eval-in>
whitequark => /tmp/execpad-9cbca93131e0/source-9cbca93131e0:2:in `<main>': undefined local variable or method `a' for main:Object (NameError) (http://eval.in/15310)
nXqd has quit [Ping timeout: 245 seconds]
Andromeda has quit [Remote host closed the connection]
heftig has joined #ruby-lang
<whitequark>
>> a/1
<eval-in>
whitequark => /tmp/execpad-05b938649859/source-05b938649859:2:in `<main>': undefined local variable or method `a' for main:Object (NameError) (http://eval.in/15311)
<whitequark>
does that make sense to anyone?..
<whitequark>
2!
a3li has joined #ruby-lang
a3li has quit [Ping timeout: 246 seconds]
cored has quit [Ping timeout: 252 seconds]
a3li has joined #ruby-lang
<whitequark>
hm
<whitequark>
I might've found a bug in Ragel
randalla1ordon has left #ruby-lang [#ruby-lang]
<whitequark>
no I just screwed up
aef_ has quit [Remote host closed the connection]
dhruvasagar has quit [Ping timeout: 264 seconds]
workmad3 has quit [Ping timeout: 245 seconds]
tomzx_mac has joined #ruby-lang
aef has joined #ruby-lang
apeiros has quit [Remote host closed the connection]
beiter has joined #ruby-lang
soknee has joined #ruby-lang
nXqd has joined #ruby-lang
a3li has quit [Ping timeout: 248 seconds]
cored has joined #ruby-lang
aef has quit [Remote host closed the connection]
skade has quit [Quit: Computer has gone to sleep.]
bzalasky has quit [Remote host closed the connection]
<whitequark>
what the hell...
<judofyr>
whitequark: in ruby19.y there is no longer an `open_args`. instead `command_args` uses `call_args` directly. there's a bunch of code that unpacks `begin_t, args, end_t` from `command_args`, but I can't see where that information is now
<whitequark>
judofyr: the idea behind that unpacking is to propagate the tokens of tLPAREN2 tRPAREN from their respective rules to the call site of @builder.call_method
<whitequark>
I guess it should be clear now?
chao has left #ruby-lang [#ruby-lang]
<whitequark>
if there are parens in call_args, pack them into the array and return it from call_args
<whitequark>
if not, pack nils there
<whitequark>
if call_args delegates parens to something else, repeat
<whitequark>
protip: don't use pry when debugging weird whitespace issues. http://eval.in/15315
<mbj>
whitequark: congratz on 1.8 stdlib parsing!
chimkan_ has quit [Quit: chimkan_]
Luwe has joined #ruby-lang
<whitequark>
mbj: thanks! :)
<mbj>
whitequark: Once we have a generator lets reproduce the stdlib and run tests ;)
<mbj>
whitequark: Did this with veritas an captured some bugs in to_source this way
io_syl has joined #ruby-lang
<judofyr>
f_args O_o
<judofyr>
whitequark: thanks, I think I'll figure it out
fire has quit [Ping timeout: 245 seconds]
<whitequark>
judofyr: what's about f_args?
baba has joined #ruby-lang
<judofyr>
whitequark: it was just a bit funky :P
<whitequark>
... what in parse.y isn't?
mwjcomputing has joined #ruby-lang
<judofyr>
touché
<judofyr>
whitequark: I've discovered some tests that are actually (correct) syntax errors in 1.9. what should I do with those?
<whitequark>
judofyr: add the fourth argument %w(1.8) and add the 1.9 counterpart, if applicable
<whitequark>
(to assert_parses)
<whitequark>
man
<whitequark>
please don't make me add a special case for %-strings with \n as delimiter to handle a case where <<'HEREDOC' is terminated by a bare backslash, newline, and HEREDOC
<judofyr>
whitequark: thanks. is there a way to "trace" the parser? I want to figure out what calls this non-terminal
<judofyr>
(in this test case)
<whitequark>
export RACC_DEBUG=1; rake regenerate; call the parser
<whitequark>
ie ./bin/parse foo.rb
<judofyr>
and down the rabbit we go
kgrz has joined #ruby-lang
tenderlove has quit [Remote host closed the connection]
tenderlove has joined #ruby-lang
tenderlove has quit [Remote host closed the connection]
<judofyr>
59 now
Swimming_Bird has joined #ruby-lang
<whitequark>
hah, fixed that heredoc bullshit
setmeaway has quit [Quit: Leaving]
Luwe has quit [Quit: leaving]
Luwe has joined #ruby-lang
riotbit has joined #ruby-lang
<whitequark>
huh, 2.0's optionparse has support for creating bash and zsh completion files
srbaker has quit [Quit: Computer has gone to sleep.]
MaddinXx_ has joined #ruby-lang
Guest35746 has quit [Read error: Connection reset by peer]
Guest35746 has joined #ruby-lang
anildigital_work has quit [Ping timeout: 246 seconds]
cored has quit [Ping timeout: 246 seconds]
cored has joined #ruby-lang
cored has quit [Changing host]
cored has joined #ruby-lang
kgrz has quit [Quit: Computer has gone to sleep.]
<whitequark>
judofyr: btw you might want to rebase
<whitequark>
HEAD should handle everything you'll encounter in stdlib
meise has joined #ruby-lang
<judofyr>
whitequark: done. at 49 now.
setmeaway has joined #ruby-lang
MaddinXx_ has quit [Remote host closed the connection]
Luwe has quit [Ping timeout: 260 seconds]
jvrmaia has joined #ruby-lang
jvrmaia has quit [Remote host closed the connection]
meise has quit [Quit: leaving]
meise has joined #ruby-lang
<judofyr>
whitequark: is it okay to just do `result = val`, or do you prefer re-packing it?
<whitequark>
judofyr: result = val is fine, *val is not
<whitequark>
(the latter produces bugs plentifully)
<whitequark>
judofyr: also note the 1.8 compat
<whitequark>
you can't do [ *a, b ]
workmad3 has joined #ruby-lang
srbaker has joined #ruby-lang
soknee has quit [Quit: Leaving.]
srbaker has quit [Client Quit]
bzalasky has joined #ruby-lang
Luwe has joined #ruby-lang
realDAB has joined #ruby-lang
Luwe has quit [Client Quit]
benanne has quit [Quit: kbai]
toretore has joined #ruby-lang
workmad3 has quit [Ping timeout: 252 seconds]
ryez has quit [Ping timeout: 245 seconds]
krohrbaugh has joined #ruby-lang
<whitequark>
judofyr: btw, when you finish with 1.9, wanna do the same with 2.0? :)
<whitequark>
it's basically `cp ruby19.y ruby20.y` and porting rules from the diff on RXR
<whitequark>
I've took care of the lexer already
<judofyr>
whitequark: maybe. I need to do all the new 1.9 syntax too. are there already tests for that?
<whitequark>
judofyr: I think there are tests for everything except stabby lambda and postargs in formal args / masgn
<whitequark>
the coverage tools will tell you which rules are untested
<judofyr>
whitequark: in 1.9 it appears that `break()` is parsed as `break` + compstmt. this causes the AST to be (break (nil)) because `()` is returns `(nil)`. is this okay?
<whitequark>
judofyr: no, it isn't, but there's nothing you can do
<whitequark>
I need to refactor the Builder quite badly
wmoxam has joined #ruby-lang
dc5ala has quit [Quit: Ex-Chat]
<judofyr>
whitequark: how are you going to fix that without refactoring the grammar?
realDAB has quit [Quit: realDAB]
<whitequark>
judofyr: short answer: this grammar produces correct results in ruby
krohrbaugh has quit [Ping timeout: 252 seconds]
<whitequark>
long answer: there are things like arg_value, primary_value, etc. currently they are no-ops. they are needed for various evil hacks (begin end while, for one) and are vastly different in 1.8, 1.9 *and* 2.0
<whitequark>
but the way they're handled in MRI and RP is unsatisfying
<whitequark>
so I have to find a better one
<judofyr>
okay. I'm not touching it then.
<judofyr>
for now
sv is now known as discopig
<whitequark>
yup...
setmeaway has quit [Ping timeout: 256 seconds]
<judofyr>
whitequark: odd, fun(foo, :foo => 1, *bar) is valid in 1.8, but not 1.9
<eval-in>
whitequark => /tmp/execpad-c496e193e84f/source-c496e193e84f:2: undefined local variable or method `foo' for main:Object (NameError) (http://eval.in/15318)
<whitequark>
odd.
adambeynon has joined #ruby-lang
apeiros has quit [Read error: Connection reset by peer]
wmoxam has quit [Ping timeout: 255 seconds]
<judofyr>
whitequark: also: chmod +x bin/parse
apeiros has joined #ruby-lang
<whitequark>
judofyr: already
<judofyr>
oh
<whitequark>
d'aww, zenspider's thing is not working again :(
<whitequark>
this time it's gem gauntlet
<whitequark>
wtf man
vlad_starkov has quit [Remote host closed the connection]
workmad3 has joined #ruby-lang
jhn has joined #ruby-lang
nertzy2 has joined #ruby-lang
tbuehlmann has quit [Remote host closed the connection]
<eval-in>
whitequark => /tmp/execpad-cc391d4048de/source-cc391d4048de:2: warning: don't put space before argument parentheses ... (http://eval.in/15322)
<whitequark>
huh
<whitequark>
judofyr: also, on a second thought that break() behavior isn't a bug
<judofyr>
whitequark: oh?
<whitequark>
it's actually how it should work. the existing tests are valid for 1.8 and your behavior is valid for 1.9
<whitequark>
yeah
<whitequark>
break() = break ()
<whitequark>
in 1.8 that's different, in 1.9 it's the same, itseems
<whitequark>
can you verify that it results in the same parse tree?
<whitequark>
(basically: same reductions)
<judofyr>
whitequark: yes
<whitequark>
also as a tribute to TDD and test coverage
<whitequark>
despite having 100% cov on the relevant pieces of code I just discovered a very intricate bug
<whitequark>
I *think* that 100% SC/CC would detect it but with the ragel generated code that would be an insane amount of work
<whitequark>
maybe a fuzzer could do that :D
<whitequark>
also it still epically fails on windows line endings and that When shit
<whitequark>
When /^I get all flags$/ do
omeichim_ has joined #ruby-lang
realDAB has joined #ruby-lang
<whitequark>
also when mbj makes his unparser gem, I think I'll write an SC/CC coverage tool for ruby
<eval-in>
whitequark => /tmp/execpad-285f70af2dc4/source-285f70af2dc4:2: duplicated argument name ... (http://eval.in/15329)
<whitequark>
>> foo { |a;a| }
<eval-in>
whitequark => /tmp/execpad-9516e4a6ac8a/source-9516e4a6ac8a:2: duplicated argument name ... (http://eval.in/15330)
soknee has quit [Quit: Leaving.]
<whitequark>
>> BEGIN { a = 1 }; a
<eval-in>
whitequark => /tmp/execpad-f54d27e0658c/source-f54d27e0658c:2: BEGIN is permitted only at toplevel ... (http://eval.in/15331)
j3r1ch0 has quit [Ping timeout: 264 seconds]
realDAB has quit [Quit: realDAB]
torrieri has quit [Quit: Leaving...]
realDAB has joined #ruby-lang
zastern has joined #ruby-lang
mytrile has joined #ruby-lang
rippa has quit [Ping timeout: 240 seconds]
thisirs has quit [Remote host closed the connection]
realDAB has quit [Quit: realDAB]
torrieri has joined #ruby-lang
workmad3 has quit [Ping timeout: 252 seconds]
mytrile has quit [Ping timeout: 252 seconds]
jg_ has quit [Ping timeout: 264 seconds]
crackity_jones has joined #ruby-lang
Swimming_Bird has quit [Quit: Computer has gone to sleep.]
micaeked has quit [Quit: WeeChat 0.4.0]
mytrile has joined #ruby-lang
wallerdev has joined #ruby-lang
mytrile has quit [Remote host closed the connection]
beiter has quit [Quit: beiter]
Burgestrand has quit [Quit: Burgestrand]
krohrbaugh has joined #ruby-lang
sepp2k has quit [Quit: Leaving.]
MehLaptop has quit [Remote host closed the connection]
Burgestrand has joined #ruby-lang
torrieri has quit [Quit: Leaving...]
torrieri has joined #ruby-lang
krohrbaugh has quit [Ping timeout: 252 seconds]
zastern has quit [Remote host closed the connection]
zastern has joined #ruby-lang
dingus_khan has joined #ruby-lang
benanne has joined #ruby-lang
maxmanders has quit [Quit: Computer has gone to sleep.]
<mbj>
whitequark: Have to stop for today, no work on parser was possible, but I did lots of other opensource stuff in the dm2 namespace
<mbj>
whitequark: That stuff I need tomorrow for my commercial foo ;)
<mbj>
whitequark: Also I need a better mutant, soon and your parser is the key ;)
<whitequark>
heh ok
mbj has quit [Quit: leaving]
symm- has quit [Read error: Operation timed out]
plains has joined #ruby-lang
chendo_ has quit [Quit: Computer has gone to sleep.]
apeiros has quit [Remote host closed the connection]
Burgestrand has quit [Quit: Burgestrand]
glebm has quit [Ping timeout: 260 seconds]
glebm has joined #ruby-lang
nXqd has quit [Ping timeout: 256 seconds]
Swimming_Bird has joined #ruby-lang
looneydoodle has quit [Quit: Leaving.]
cored has quit [Ping timeout: 252 seconds]
lele has quit [Ping timeout: 246 seconds]
zastern has quit [Remote host closed the connection]
cored has joined #ruby-lang
looneydoodle has joined #ruby-lang
lele has joined #ruby-lang
chessguy has joined #ruby-lang
blacktulip has quit [Remote host closed the connection]
Averna has joined #ruby-lang
zastern has joined #ruby-lang
torrieri has quit [Quit: Leaving...]
TheNotary has joined #ruby-lang
lcdhoffman has joined #ruby-lang
toretore has quit [Quit: Leaving]
<TheNotary>
So, you can do `Benchmark.measure { time_intensive_function }` right? but in benchmark.rb, I don't see any methods like `def self.measure` only `def measure` what's the deal with that?
postmodern has joined #ruby-lang
Mon_Ouie has joined #ruby-lang
Mon_Ouie has quit [Changing host]
Mon_Ouie has joined #ruby-lang
jonahR_ has joined #ruby-lang
jonahR has quit [Ping timeout: 276 seconds]
jonahR_ is now known as jonahR
Averna has quit [Quit: Leaving.]
<dingus_khan>
how bad is it if I don't actually understand how the array.count method works, but I've used it to solve a problem?
idkazuma has joined #ruby-lang
scottschecter has joined #ruby-lang
solars has quit [Ping timeout: 245 seconds]
Swimming_Bird has quit [Quit: Computer has gone to sleep.]
<ddd>
i promise there will be LOTS of stuff that you don't know HOW it works, just THAT it works.
<ddd>
And as long as you can use it appropriately (according to the docs for that method, etc) it shouldn't be a problem
<ddd>
when you're ready and you have more experience you can always revisit stuff and dig deeper
scottschecter has quit [Quit: WeeChat 0.4.0]
crynix has joined #ruby-lang
cirenyc has joined #ruby-lang
idkazuma has quit [Remote host closed the connection]
crackity_jones has quit [Quit: Computer has gone to sleep.]
torrieri has joined #ruby-lang
Swimming_Bird has joined #ruby-lang
<r0bgleeson>
TheNotary: there's probably an 'extend self' somewhere in there.
<TheNotary>
I can't find any references to extend, but I came across this curious line `module_function :benchmark, :measure, :realtime, :bm, :bmbm`
fosky has joined #ruby-lang
<r0bgleeson>
TheNotary: ah, so that's why.
havenwood has quit [Remote host closed the connection]
<TheNotary>
now the problem I'm faced with writing this banal IDE feature is, writing a parser to pick up on that and then niavely rewrite the file (in memory) to be `def self.blah` for everything mentioned in the module_function line... and making sure I'm not in a weird sub module.
<TheNotary>
I can see why this feature didn't exist already, it's WAY more work than it's worth
scottschecter has joined #ruby-lang
chessguy has quit [Ping timeout: 252 seconds]
crackity_jones has joined #ruby-lang
scottschecter has quit [Client Quit]
glebm has quit [Ping timeout: 252 seconds]
glebm has joined #ruby-lang
krohrbaugh has joined #ruby-lang
narya has quit [Ping timeout: 245 seconds]
narya has joined #ruby-lang
lsegal has quit [Quit: Quit: Quit: Quit: Stack Overflow.]
tsion has quit [Quit: Leaving]
jerrytgarcia has joined #ruby-lang
fosky has quit [Remote host closed the connection]