00:00
travis-ci has joined #opal
00:00
<
travis-ci >
[travis-ci] opal/opal#1235 (master - 1174f5b : meh): The build was broken.
00:00
travis-ci has left #opal [#opal]
00:01
<
meh` >
they pass here
00:29
fkchang has quit [Ping timeout: 248 seconds]
01:12
meh` has quit [Ping timeout: 256 seconds]
05:05
eventualbuddha has quit [Ping timeout: 240 seconds]
07:39
DouweM has quit [Ping timeout: 260 seconds]
08:22
adambeynon has joined #opal
08:48
fntzr has joined #opal
08:49
GitHub99 has joined #opal
08:49
GitHub99 has left #opal [#opal]
08:49
<
GitHub99 >
opal/master 302ded2 Adam Beynon: Keep all corelib globals in relevant files
08:53
travis-ci has joined #opal
08:53
<
travis-ci >
[travis-ci] opal/opal#1236 (master - 302ded2 : Adam Beynon): The build was fixed.
08:53
travis-ci has left #opal [#opal]
09:09
GitHub116 has joined #opal
09:09
GitHub116 has left #opal [#opal]
09:09
<
GitHub116 >
opal/master b225ee6 Adam Beynon: Move spec runners into tasks/mspec.rake
09:14
travis-ci has joined #opal
09:14
<
travis-ci >
[travis-ci] opal/opal#1237 (master - b225ee6 : Adam Beynon): The build passed.
09:14
travis-ci has left #opal [#opal]
09:18
GitHub179 has joined #opal
09:19
<
GitHub179 >
opal/master bbf284e Adam Beynon: Update to mspec 1.5.20 (latest) for running rubyspecs
09:19
GitHub179 has left #opal [#opal]
09:23
travis-ci has joined #opal
09:23
travis-ci has left #opal [#opal]
09:23
<
travis-ci >
[travis-ci] opal/opal#1238 (master - bbf284e : Adam Beynon): The build passed.
09:30
GitHub98 has joined #opal
09:30
<
GitHub98 >
opal/master 1ffe037 Adam Beynon: Group opal specs and rubyspec specs together when running mspec
09:30
GitHub98 has left #opal [#opal]
09:32
kludge` has quit [Ping timeout: 272 seconds]
09:33
travis-ci has joined #opal
09:33
<
travis-ci >
[travis-ci] opal/opal#1239 (master - 1ffe037 : Adam Beynon): The build passed.
09:33
travis-ci has left #opal [#opal]
09:33
kludge` has joined #opal
09:58
GitHub82 has joined #opal
09:58
<
GitHub82 >
opal/master 966c655 Adam Beynon: Cleanup mspec/ospec runner to use a single array of files
09:58
GitHub82 has left #opal [#opal]
10:03
travis-ci has joined #opal
10:03
<
travis-ci >
[travis-ci] opal/opal#1240 (master - 966c655 : Adam Beynon): The build was broken.
10:03
travis-ci has left #opal [#opal]
10:06
travis-ci has joined #opal
10:06
<
travis-ci >
[travis-ci] opal/opal#1240 (master - 966c655 : Adam Beynon): The build passed.
10:06
travis-ci has left #opal [#opal]
11:22
GitHub174 has joined #opal
11:22
<
GitHub174 >
opal/master 04f480d Adam Beynon: Implement StringScanner#bol? and StringScanner#terminate with specs
11:22
GitHub174 has left #opal [#opal]
11:33
GitHub133 has joined #opal
11:33
GitHub133 has left #opal [#opal]
11:33
<
GitHub133 >
opal/master 36c74a6 Adam Beynon: Support a stack of StringScanner in parser
11:36
travis-ci has joined #opal
11:36
<
travis-ci >
[travis-ci] opal/opal#1242 (master - 36c74a6 : Adam Beynon): The build passed.
11:36
travis-ci has left #opal [#opal]
12:15
DouweM has joined #opal
12:26
meh` has joined #opal
12:28
<
meh` >
adambeynon, yo
12:29
<
adambeynon >
hi meh`
12:29
<
meh` >
sorry for the 1.8 specs breakage
12:29
<
meh` >
but I didn't know how to fix it
12:34
<
adambeynon >
meh`: I dont think they broke - sometimes travis just fails
12:34
<
adambeynon >
timeouts etc
12:35
GitHub147 has joined #opal
12:35
GitHub147 has left #opal [#opal]
12:35
<
GitHub147 >
opal/master f4a7848 Adam Beynon: Reorganize lexer/parser in lib
12:39
<
adambeynon >
meh`: lunch, back in 20
12:39
GitHub24 has joined #opal
12:39
GitHub24 has left #opal [#opal]
12:39
<
GitHub24 >
opal/master e3a4d0e Adam Beynon: Fix rake task to point to correct racc file location
12:40
travis-ci has joined #opal
12:40
<
travis-ci >
[travis-ci] opal/opal#1243 (master - f4a7848 : Adam Beynon): The build passed.
12:40
travis-ci has left #opal [#opal]
12:43
travis-ci has joined #opal
12:43
<
travis-ci >
[travis-ci] opal/opal#1244 (master - e3a4d0e : Adam Beynon): The build passed.
12:43
travis-ci has left #opal [#opal]
12:55
meh` has quit [Quit: reboot]
12:59
meh` has joined #opal
13:26
<
meh` >
adambeynon, is there a way to only run a set of specs?
13:26
<
meh` >
it takes forever to run them all
13:32
<
adambeynon >
meh`: not with the rubyspecs
13:32
<
adambeynon >
well, there is
13:32
<
adambeynon >
but I dont know if it still works
13:32
<
adambeynon >
rake mspec
13:33
<
adambeynon >
that will run just the runtime specs
13:33
<
adambeynon >
and ignore mri_specs
13:52
<
meh` >
I can't fucking believe this
13:53
<
meh` >
they removed my "retarded" gem because of this asshole
14:18
<
meh` >
all these mentally challenged social justice retards are going to destroy everything
14:18
<
meh` >
those are real words with a real meaning
14:19
<
meh` >
he doesn't even know the meaning of English words
14:37
GitHub61 has joined #opal
14:37
GitHub61 has left #opal [#opal]
14:37
<
GitHub61 >
opal/master 1c61665 Adam Beynon: Use keyword table for processing keywords and identifiers
14:39
GitHub113 has joined #opal
14:39
<
GitHub113 >
opal/master f269fcd Adam Beynon: Remove debug line
14:39
GitHub113 has left #opal [#opal]
14:47
travis-ci has joined #opal
14:47
<
travis-ci >
[travis-ci] opal/opal#1245 (master - 1c61665 : Adam Beynon): The build passed.
14:47
travis-ci has left #opal [#opal]
14:50
GitHub22 has joined #opal
14:50
<
GitHub22 >
opal/master 3c35036 Adam Beynon: Add :UNLESS to list of parser reswords
14:50
GitHub22 has left #opal [#opal]
14:55
eventualbuddha has joined #opal
14:56
travis-ci has joined #opal
14:56
<
travis-ci >
[travis-ci] opal/opal#1247 (master - 3c35036 : Adam Beynon): The build passed.
14:56
travis-ci has left #opal [#opal]
14:58
fkchang has joined #opal
15:02
eventualbuddha has quit [Ping timeout: 272 seconds]
15:16
fntzr has quit [Read error: Operation timed out]
15:19
GitHub85 has joined #opal
15:19
GitHub85 has left #opal [#opal]
15:19
<
GitHub85 >
opal/master a7cf83a Adam Beynon: Add support for parsing ruby code after heredoc identifier
15:21
<
meh` >
adambeynon, so it works now? :D
15:22
<
meh` >
adambeynon, man, this Array#fill stuff is awful
15:22
<
meh` >
I keep going out of memory because of something
15:30
fntzr has joined #opal
15:30
fntzr has quit [Client Quit]
15:31
fntzr has joined #opal
15:33
<
adambeynon >
meh`: it does indeed
15:33
<
adambeynon >
heredoc are still buggy with parsing the end of string marker though
15:57
<
meh` >
this spec here
16:32
<
adambeynon >
which spec?
16:33
<
meh` >
adambeynon, Array#fill
16:33
<
meh` >
it has so many edge cases
16:33
<
meh` >
I've been wasting all day on it
16:33
<
meh` >
but it has become personal
16:34
fntzr has quit [Ping timeout: 248 seconds]
16:34
GitHub182 has joined #opal
16:34
<
GitHub182 >
opal/master 97c062e Adam Beynon: start cleaning up string parsing
16:34
GitHub182 has left #opal [#opal]
16:34
<
meh` >
7. Array#fill with (filler, range) replaces elements between the (-m)th to the last and the (n+1)th from the first if given an range m..n where m < 0 and n >= 0
16:34
<
meh` >
Array#fill with (filler, range) replaces elements between the (-m)th and (-n)th to the last if given an range m..n where m < 0 and n < 0
16:35
eventualbuddha has joined #opal
16:39
travis-ci has joined #opal
16:39
<
travis-ci >
[travis-ci] opal/opal#1249 (master - 97c062e : Adam Beynon): The build passed.
16:39
travis-ci has left #opal [#opal]
16:46
DrShoggoth has joined #opal
16:46
DouweM_ has joined #opal
16:48
douwemaan has joined #opal
16:48
DouweM has quit [Ping timeout: 245 seconds]
16:50
ryanstout has joined #opal
16:51
DrShoggoth has quit [Remote host closed the connection]
16:51
DouweM_ has quit [Ping timeout: 272 seconds]
18:00
[spoiler] has joined #opal
18:02
DouweM has joined #opal
18:16
omninonsense has joined #opal
18:16
nino has joined #opal
18:17
nino has quit [Client Quit]
18:17
omninonsense has quit [Client Quit]
18:39
eventualbuddha has quit [Ping timeout: 245 seconds]
18:56
DrShoggoth has joined #opal
19:01
DrShoggoth has quit [Remote host closed the connection]
19:06
eventualbuddha has joined #opal
19:14
eventualbuddha has quit [Ping timeout: 245 seconds]
19:40
eventualbuddha has joined #opal
20:45
GitHub180 has joined #opal
20:45
<
GitHub180 >
opal/master 0bc0dc1 meh: Use the new coercion helper in Array
20:45
<
GitHub180 >
opal/master de34c84 meh: Make Array#fill compliant
20:45
<
GitHub180 >
opal/master cbffd7c meh: Add Opal::Type.coerce_to helper
20:45
GitHub180 has left #opal [#opal]
20:49
travis-ci has joined #opal
20:49
<
travis-ci >
[travis-ci] opal/opal#1250 (master - 0bc0dc1 : meh): The build was broken.
20:49
travis-ci has left #opal [#opal]
20:49
<
meh` >
oh, just 1.8, fuck it then
21:10
adambeynon has joined #opal
21:34
<
meh` >
adambeynon, where should I put the coercion helper? I have the feeling it's not in the best place
21:34
<
adambeynon >
what helper?
21:34
<
meh` >
the one I just added to opal.rb
21:34
<
meh` >
it's extremely useful internally
21:34
<
meh` >
removes a lot of boilerplate
21:37
<
meh` >
adambeynon, also I'm thinking the Enumerable module should be implemented in Ruby rather than inline JavaScript
21:37
<
meh` >
adambeynon, it's full of errors and extremely hard to work with
21:37
<
meh` >
do you think it would become a lot slower?
21:49
<
adambeynon >
meh`: isnt that coerce stuff adding a load of overhead
21:51
<
meh` >
adambeynon, we could make it compiler optimized
21:51
<
meh` >
but it really gets ugly having that check explicit in the code every time
21:52
<
adambeynon >
I know, but the runtime has to be really fast
21:52
<
adambeynon >
everything else builds on top of it
21:52
<
meh` >
adambeynon, we could have some internal inlining stuff
21:52
<
meh` >
Opal.coerce_to
21:52
<
meh` >
that inlines
21:53
<
meh` >
adambeynon, same goes for the native? and undefined? I opened an issue about
21:57
<
meh` >
but also, benchmarking would be nice
21:57
ryanstout has quit [Quit: ryanstout]
21:57
<
meh` >
I'll write a bench
21:58
<
adambeynon >
problem with compiler helpers, e.g. Opal.coerce_foo is that they make the compiler much much uglier
21:59
<
adambeynon >
require() is easy to detect
21:59
<
adambeynon >
but when we have to check the receiver as welll
21:59
<
adambeynon >
it becomes really messy
21:59
<
meh` >
does it really?
21:59
<
adambeynon >
and, if we introduce these helpers, then others may use them, which is really bad
22:00
<
adambeynon >
as we always have to keep them
22:00
<
adambeynon >
and maintain them
22:00
<
adambeynon >
isnt inline js code easier for the corelib?
22:00
<
meh` >
not in the case of coerce
22:00
<
adambeynon >
if (foo._isNumber) …. else ....
22:00
<
adambeynon >
let me look at the commit you posted
22:00
<
adambeynon >
i havent really looked yet
22:01
<
meh` >
it's the same check, except in a function
22:01
<
meh` >
I was copypasting it all around
22:01
<
meh` >
and it was retarded
22:02
<
meh` >
it's boilerplate
22:02
<
meh` >
I don't like boilerplate
22:02
<
meh` >
and all of Enumerable is broken
22:02
<
meh` >
it doesn't respect break
22:15
<
meh` >
adambeynon, sincerely
22:15
<
meh` >
adambeynon, I think native? and undefined? should be inlined, and be public
22:16
<
meh` >
while the Opal.helpers should remain "private"
22:16
<
meh` >
you don't see people going around using stuff in Rubinius:: in normal Ruby code
22:16
<
meh` >
there should be no expectation of it remain compatible
22:16
<
meh` >
the native? check is useful in libraries
22:16
<
meh` >
the undefined? check is useful too, to implement methods with undefined
22:16
<
meh` >
without having to revert to a `value == null`
22:17
<
meh` >
and the Opal. stuff has to help keeping the code manageable while still being fast
22:17
<
meh` >
readability is as important as speed imho
22:17
<
meh` >
and if we can have both, we should strive for both
22:20
<
adambeynon >
meh`: my view is that undefined should be considered an error if it comes up inside ruby code
22:21
<
adambeynon >
its the job of Native to stop it happening
22:23
<
meh` >
adambeynon, I'm not talking about having undefined everywhere
22:23
<
meh` >
adambeynon, I'm talking about undefined as default parameter
22:23
<
adambeynon >
meh`: isnt that only a problem of corelib?
22:24
<
meh` >
adambeynon, I think it's useful outside of it, but even then we could have a child compiler that takes care of the corelib
22:24
<
meh` >
adambeynon, this is the thing, what is more likely to get more contributors?
22:25
<
meh` >
I think a slightly uglier compiler is a good tradeoff for a more maintainable corelib
22:26
<
meh` >
adambeynon, I mean, I can see from your POV an uglier compiler is a pain in the ass
22:26
<
meh` >
but us mere mortals can only contribute to the corelib and stdlib
22:27
<
meh` >
and making the corelib source more accessible will only make it easier
22:31
[spoiler] has quit [Ping timeout: 248 seconds]
22:33
<
meh` >
adambeynon, the two things that I think are needed, for now, outside of native? and undefined?
22:33
<
meh` >
are the coerce_to and some friend of the yielding stuff
22:34
<
meh` >
Enumerable is full of arguments.length == 1 ? arguments[0] : $slice.call(arguments)
22:34
<
meh` >
it's in every method at least twice
22:35
<
meh` >
and in general Enumerable is a broken mess
22:36
<
meh` >
but yeah, I'll be going to sleep, I have to wake up early tomorrow
22:36
<
meh` >
think about it
22:37
eventualbuddha has quit [Ping timeout: 246 seconds]
22:40
<
adambeynon >
meh`: sure. I will have a look to see what rubinius do, and see how that all works
22:40
<
adambeynon >
I have to run now as well
22:40
<
adambeynon >
will have a look at it all in the morning
22:40
meh` has quit [Ping timeout: 240 seconds]
22:54
[spoiler] has joined #opal
22:54
[spoiler] has quit [Client Quit]
23:08
eventualbuddha has joined #opal
23:13
eventualbuddha has quit [Ping timeout: 245 seconds]