»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg camelia perl6: ... | irclog: irc.perl6.org | UTF-8 is our friend! Set by sorear on 25 June 2013. |
|||
00:02
erkan joined,
erkan left,
erkan joined
00:05
nbrown_ joined
00:06
salv0 left
00:09
salv0 joined
00:13
salv0 left
00:23
aborazmeh joined
00:24
raiph left
00:41
aborazmeh left
00:43
raiph joined
00:49
dolmen joined
00:59
raiph left
|
|||
dalek | ast: dfed85f | coke++ | S14-roles/stubs.t: fudge for rakudo.jvm |
01:04 | |
01:09
raiph joined
01:11
dayangkun joined
01:19
salv0 joined
01:20
FROGGS_ joined,
jack_rabbit left
01:23
FROGGS left
01:26
anaeem___ left
01:47
mberends joined
01:50
mberends left,
mberends joined
01:52
dolmen left
|
|||
labster | m: "0".pred.perl.say | 01:55 | |
camelia | rakudo-moar c793d8: OUTPUT«Failure.new(exception => X::AdHoc.new(payload => "Decrement out of range"))» | ||
labster | I feel like that maybe should work, but I can understand why it doesn't. | ||
But I do feel like that needs to be a typed exception. | |||
01:56
mberends left
01:57
raiph left
|
|||
labster | X::OutOfRange or something more specific... hm. | 01:58 | |
02:02
raiph joined
02:03
salv0 left
02:06
salv0 joined
|
|||
BenGoldberg | m: Buf.new("0".encode("utf8")[0].pred).decode("utf8").perl.say | 02:09 | |
camelia | rakudo-moar c793d8: OUTPUT«"/"» | ||
labster | well, that too, but I was thinking more along the lines of "-1" | 02:12 | |
which is what happens in Perl 5. | |||
02:15
nbrown_ left
|
|||
geekosaur | perl5 automatically changes a string to a number for that. perl6 doesn't do so here since .succ on Str is what used to be magic autoincrement in perl5; perl5 has no corresponding magic autodecrement, nor does perl6 (far too many corner cases) | 02:15 | |
so perl5 has inconsistent increment vs. decrement behavior on strings, whereas perl6 is consistent | 02:16 | ||
labster | Or at least consistently inconsistent. | ||
geekosaur | anyway if you want numeric increment/decrement on a Str, convert it to a number first | 02:18 | |
labster | of course | 02:20 | |
I'm just documenting the current behavior. It's in S03, but something about it should be in S32::Str so I'm adding it. | 02:21 | ||
02:22
nbrown_ joined
|
|||
dalek | ecs: 193f4b6 | (Brent Laabs)++ | S32-setting-library/Str.pod: document Str.succ and Str.pred in S32::Str |
02:24 | |
02:26
nbrown_ left
|
|||
BenGoldberg | m: "0".encode("utf8")[*].pred; | 02:34 | |
camelia | rakudo-moar c793d8: OUTPUT«No such method 'pred' for invocant of type 'Parcel' in block <unit> at /tmp/7gXSZl2SH9:1» | ||
BenGoldberg | m: "0".encode("utf8")[0].pred.Buf.decode("utf8").perl.say; | 02:35 | |
camelia | rakudo-moar c793d8: OUTPUT«No such method 'Buf' for invocant of type 'Int' in block <unit> at /tmp/a1NPiwYlHa:1» | ||
02:39
noganex joined
02:42
noganex_ left
02:46
raiph left
02:49
salv0 left
02:55
BenGoldberg left
|
|||
diakopter | m: ::!??YOUR_FACE!! | 02:58 | |
camelia | rakudo-moar c793d8: OUTPUT«===SORRY!=== Error while compiling /tmp/8_oPDFSyT1Cannot negate ??YOUR_FACE!! because it is not iffy enoughat /tmp/8_oPDFSyT1:1------> ::!??YOUR_FACE!!⏏<EOL>» | ||
diakopter | q.e.d. | 02:59 | |
03:01
salv0 joined
|
|||
colomon | diakopter++ | 03:07 | |
03:16
mberends joined
03:26
nbrown_ joined
03:29
nbrown_ left
|
|||
hoelzro | o/ #perl6 | 03:31 | |
03:41
kaleem joined
03:44
akaseki joined
03:46
Salai left
|
|||
diakopter | .u ∎ | 03:56 | |
yoleaux | U+220E END OF PROOF [Sm] (∎) | ||
04:04
[Sno] left
04:29
dayangkun left
04:40
ribasushi left
04:44
ribasushi joined
04:49
kurahaupo_ left
04:54
fling left
04:55
fling joined
04:57
kaleem left
05:03
SamuraiJack joined,
kurahaupo joined
05:04
xenoterracide left,
ecocode joined
05:06
ecocode_ joined,
xenoterracide joined
05:09
ecocode left
05:14
xenoterracide left
05:31
kaare_ joined
05:33
[Sno] joined
05:38
zacts joined
|
|||
zacts | hello | 05:38 | |
05:43
avuserow left
|
|||
ecocode_ | hi... is there any improvement in the jvm backend for nicier calls of methods when using java libs ? | 05:44 | |
zacts | I wonder if Perl6 can utilize llvm in some way.. | 05:45 | |
TimToady | zacts: the problem with llvm is it's very...ll | ||
zacts | low level? :-) | ||
TimToady | ecocode_: there was some work to at least pay attention to overloading on arity, but we don't have anything that dispatches on type yet | 05:46 | |
zacts | anyway, I'm wanting to start writing some perl6 modules, maybe I can start by contributing that way. | ||
mainly because Perl6 sounds fun. | 05:47 | ||
ecocode_ | TimToady: ok | ||
TimToady | well, it certainly is that | ||
05:47
dayangkun joined
|
|||
TimToady | jnthn had some ideas for how to improve the overload mapping, i think | 05:48 | |
05:51
akaseki is now known as Salai
05:55
anaeem1 joined
05:57
avuserow joined
05:58
dayangkun left
06:13
dayangkun joined
06:15
avuserow left
|
|||
FROGGS_ | zacts: so if you want to get into it, jnthn would be happy to outline the changes | 06:23 | |
06:24
avuserow joined
06:26
nbrown_ joined
06:29
dayangkun left
06:30
nbrown_ left
|
|||
ecocode_ | btw, I had to increase jvm heap size to allow compilation of perl6-jvm on osx (I raised it from 1000m to 2000m, but probably less would have worked too) | 06:39 | |
lizmat | ecocode_: you might find this interesting: blog.timbunce.org/2010/07/16/java2p...d-whereto/ | 06:44 | |
06:44
dayangkun joined
|
|||
tadzik | computer, messages | 06:47 | |
yoleaux | 24 Aug 2014 23:32Z <lizmat> tadzik: looking forward to seeing you | ||
tadzik | :) | ||
lizmat | ecocode: it predates the Rakudo JVM project | ||
zacts | FROGGS_: sure, that would be cool. in the meantime can I read the perl5 -> perl6 tutorial? | ||
tadzik | lizmat: starts about 13, right? | 06:48 | |
lizmat | starts any time... we're sort of ready to receive nowish already | 06:49 | |
tadzik | oh, not quite | ||
I have a rental car to pick up at 12, so I'll show up somtime after that | 06:50 | ||
06:53
kaleem joined
06:55
woolfy left,
lizmat left,
lizmat_ joined
06:58
woolfy joined
07:00
jimmyz joined
07:01
jimmyz left
|
|||
lizmat_ | errands& | 07:01 | |
07:02
lizmat_ is now known as lismat,
dayangkun left
07:10
darutoko joined
|
|||
sergot | o/ | 07:11 | |
tadzik | o/ | ||
zacts | FROGGS_: bbl.. | 07:16 | |
07:26
kurahaupo left
|
|||
daniel-s_ | \o | 07:26 | |
07:28
dayangkun joined
07:32
FROGGS_ is now known as FROGGS
|
|||
FROGGS | zacts: you can read/do/try whatever you want :o) | 07:32 | |
zacts: I just wanted to state that we are happy to explain things, whenever you feel the urge | 07:33 | ||
07:34
Pleiades` left
07:39
woolfy1 joined,
Pleiades` joined
07:41
dolmen joined
07:43
woolfy left
07:54
kjs_ joined
07:58
dayangkun left
08:00
cibs left
08:01
dayangkun joined
08:02
cibs joined
08:04
BizarreCake joined
|
|||
timotimo | i don't understand what lizmat was refering to when she said "it predates the rakudo jvm project" | 08:09 | |
FROGGS | timotimo: the linked blog entry is meant | 08:10 | |
timotimo | ah! | 08:12 | |
somehow i missed that complete line | |||
itz | (liz and wendy)++ # hackspace in hotel | 08:17 | |
08:22
daniel-s_ left
08:33
dolmen left
|
|||
dalek | c: 7630c2b | (Steve Mynott)++ | lib/Type/X/ (6 files): fix minor spelling errors and typos |
08:39 | |
08:40
dayangkun_ joined
08:44
dayangkun left
|
|||
zacts | cool, thanks! /me is about to pass out. It's almost 3am, and I have class at 11am. laters.. | 08:45 | |
timotimo | in comparison to the java2perl6api, the BootJavaInterop and JavaInterop in NQP and Rakudo respectively directly introspect the classes loaded in the jvm | 08:50 | |
08:51
dolmen joined
08:53
kjs_ left
|
|||
sergot | m: say 0.rand | 09:02 | |
camelia | rakudo-moar c793d8: OUTPUT«0» | ||
lismat | m: say -1.rand | ||
camelia | rakudo-moar c793d8: OUTPUT«-0.135361962391201» | ||
sergot | $ perl -e 'print rand(0)' | ||
lismat | m: say -42.rand | ||
sergot | 0.218268494661064 | ||
camelia | rakudo-moar c793d8: OUTPUT«-11.0446103640848» | ||
lismat | m: say 0.5.rand | 09:03 | |
camelia | rakudo-moar c793d8: OUTPUT«0.092024084226117» | ||
sergot | lismat: p5 works differently | ||
lismat | maybe we should fail for 0.rand | ||
not sure what use that would have, apart from not doing the right thing | |||
09:03
dolmen left
|
|||
sergot | failing sounds reasonable for me | 09:04 | |
moritz | just returning 0 sounds reasonable for me | 09:05 | |
timotimo | can we only fail if the 0 is literal in the code, please? | ||
i can see how $foo.rand could be reasonable to have 0 sometimes | |||
moritz | it's supposed to return a random number between 0 and 0, and it does that. | ||
we don't have to catch every possible logic error on behalf of the user | 09:06 | ||
m: say (-2).rand | |||
camelia | rakudo-moar c793d8: OUTPUT«-0.741529731085513» | ||
sergot | m: say (0.000001).rand | ||
camelia | rakudo-moar c793d8: OUTPUT«4.23838962826832e-07» | ||
sergot | m: say (0.01).rand | 09:07 | |
camelia | rakudo-moar c793d8: OUTPUT«0.0018702903958634» | ||
sergot | Actually I would expect returning 0 here, I was disappointed when p5 returned something else | 09:08 | |
in the 0.rand case | |||
09:10
donaldh joined
|
|||
timotimo | did it regard 0 as undef or something? %) | 09:14 | |
m: Int.rand | |||
camelia | rakudo-moar c793d8: OUTPUT«Invocant requires an instance, but a type object was passed in method Bridge at src/gen/m-CORE.setting:4600 in method rand at src/gen/m-CORE.setting:4427 in block <unit> at /tmp/7tu6TeiNmo:1» | ||
09:19
kjs_ joined
|
|||
timotimo | AFK for big chunk of day & | 09:20 | |
sergot | .seen psch | 09:21 | |
yoleaux | I saw psch 23 Aug 2014 21:56Z in #perl6: <psch> it's late and there's a talk to watch early tomorrow... :) | ||
sergot | .teel psch could you check if HTTP::UserAgents works for you now? | ||
.tell psch could you check if HTTP::UserAgents works for you now? | |||
yoleaux | sergot: I'll pass your message to psch. | ||
09:28
zakharyas joined,
kjs_ left
|
|||
dalek | c: bad8959 | (Steve Mynott)++ | bin/p6doc: assume index data for p6doc -f is in bin dir for the moment |
09:36 | |
09:40
kjs_ joined
09:42
vukcrni left
|
|||
lismat wishes she didn't have such a hangover | 09:42 | ||
lismat blames some of the local slivovitsh varieties | 09:43 | ||
09:44
vukcrni joined
09:45
woolfy1 left
09:46
woolfy joined,
lismat is now known as lizmat
|
|||
lizmat blames the hangover :-) | 09:46 | ||
09:48
telex left
09:50
telex joined
09:52
zakharyas1 joined
09:53
zakharyas1 left,
zakharyas left
09:54
zakharyas joined
09:59
psch joined
10:02
ggoebel11111117 joined
10:04
ggoebel11111116 left
|
|||
sergot | psch o/ | 10:06 | |
psch: iirc, you wanted to write some github stuff in p6, right? | 10:07 | ||
psch | sergot: hey | ||
yoleaux | 09:21Z <sergot> psch: could you check if HTTP::UserAgents works for you now? | ||
psch | sergot: yeah, i meant to do that. i didn't use HTTP::UserAgent though | ||
although it'd probably worthwhile, not having to fiddle with the socket myself :) | 10:08 | ||
sergot: panda install complains about 2 planned 1 run test in 09-ua-ssl.t | |||
sergot | I fixed some bugs recently, it should work better, so feel free to test :) | ||
are you installing it from local or github? | 10:09 | ||
could you gist it? | 10:10 | ||
10:10
dayangkun_ left
|
|||
psch | github.com/sergot/http-useragent/b...9-ua-ssl.t | 10:10 | |
there's only one test in that file but 2 planned | |||
unless &is does more than i thought it does... :) | |||
sergot | there are throws_like and is tests | ||
psch | ooh | 10:11 | |
right | |||
sergot | line 8 and 15 | ||
lines | |||
psch | yeah, sorry, i haven't been awake long enough yet it seems | ||
tbh, from your changes with OpenSSL i don't see how those could work | |||
as in, not give the same error | 10:12 | ||
but let me wake up and have a look in a bit | |||
sergot | okok :) | ||
10:12
mberends left
|
|||
sergot | psch: I'm eager to help you with those github things. | 10:13 | |
10:14
SamuraiJack left
|
|||
sergot | would be great to have this : metacpan.org/pod/Net::GitHub in p6 | 10:16 | |
10:18
kjs_ left
10:26
Ven joined
|
|||
dalek | c: b654fe8 | (Steve Mynott)++ | index.p6: work through @*INC |
10:37 | |
c: 89cfe71 | (Steve Mynott)++ | index.p6: assume index file is in current bin directory, add some docs |
|||
c: 5bffe97 | (Steve Mynott)++ | index.p6: comments |
|||
c: 55913f0 | (Steve Mynott)++ | bin/p6doc-index: index is now build |
|||
c: 06e9a15 | (Steve Mynott)++ | / (2 files): docs |
|||
lizmat | m: sub a {...}; sub a { 42 } # feels like a rakudobug | 10:38 | |
camelia | rakudo-moar c793d8: OUTPUT«===SORRY!=== Error while compiling /tmp/B6nal6_Cd1Redeclaration of routine aat /tmp/B6nal6_Cd1:1------> }; sub a { 42 } # feels like a rakudobug⏏<EOL> expecting any of: postfix state…» | ||
lizmat | std: sub a {...}; sub a { 42 } | ||
camelia | std ee1ef48: OUTPUT«ok 00:01 123m» | ||
itz | hmm I should collapse comments via rebase to avoid spamming the channel :-\ | ||
lizmat | r: sub a {...}; sub a { 42 } | ||
camelia | rakudo-{parrot,jvm,moar} c793d8: OUTPUT«===SORRY!=== Error while compiling /tmp/tmpfileRedeclaration of routine aat /tmp/tmpfile:1------> sub a {...}; sub a { 42 }⏏<EOL> expecting any of: postfix statement end…» | ||
psch | sergot: the &is-test is the one that breaks, with "err code: 1443668770584850713" | 10:39 | |
sergot | psch: is there any err message? | ||
I cannot reproduce this error | |||
psch | running test.pl6 from io-socket-ssl additionally gives me "Segmentation fault" as text error | 10:40 | |
*test.p6 | |||
well, against github.com instead of your url :) | |||
the numeric error code seems a bit high as well, i still suspect 32bit/nativecall as the culprit | 10:41 | ||
how did gdb'ing that work again... :) | 10:42 | ||
sergot | are you on 32bit machine? | 10:43 | |
psch | i'm on a 32bit vm | ||
so, yes | 10:44 | ||
sergot | ok, so it is the point where we should start. | ||
psch: does nativecall work well on 32bit machines? | 10:45 | ||
psch | sergot: github.com/jnthn/zavolaj/issues/37 | 10:46 | |
you probably remember the stray 2**32 error code check | |||
sergot is creating a 32bit vm to reproduce this problem | |||
I do | 10:48 | ||
10:48
spider-mario joined
|
|||
psch | fwiw, the spec says that FROGGS++ last suggestion in the NativeCall ticket is correct, but that's not implemented anywhere, mainly because native ints aren't really implemented to limit themselves to bitsizes | 10:48 | |
m: my int8 $x = 1024; say $x | 10:49 | ||
camelia | rakudo-moar c793d8: OUTPUT«1024» | ||
psch | i had had a look at that a few weeks or so back, but c is hard and moar is complicated :) | 10:51 | |
sergot | Ok, so the first task here is to limit them | ||
yeah.. we need some help :) | |||
tadzik | sergot: metacpan.org/pod/Dancer::Request#DESCRIPTION | 10:54 | |
perhaps we want to follow that in Bailador | |||
I mean, we definitely do :) | |||
it's supposed to be a Dancer port | |||
sergot | tadzik: ok :) | 10:55 | |
10:55
woolfy left
|
|||
tadzik | sergot: want to do that or should I? | 10:55 | |
10:56
kjs_ joined
|
|||
sergot | tadzik: if you want this to be done now then I have some UA work now, but I can do this a little bit later with a pleasure | 10:56 | |
oh, too many 'now' there :)) | 10:57 | ||
itz | "p6doc -f say" should now work (assuming you run "p6doc-index build) first | 10:58 | |
tadzik | sergot: ok, I'll go for it then | ||
sergot | tadzik++ | 11:00 | |
tadzik | now that I read this code I wonder if it even works for GET requests | 11:03 | |
11:03
Ven left
|
|||
sergot | why so? | 11:04 | |
tadzik | I was reading Dancer code, and thought "I don't recall doing that" | ||
well, it's only parsing params from psgi.input | |||
that works if it's POST, but what if it's GET? Aren't they in PATH? | |||
they are | 11:05 | ||
it's a miracle it was any useful so far :D | |||
sergot | :D | 11:06 | |
tadzik | sergot: is HTTP::Body somewhere in your toolchain? | 11:07 | |
sergot | sergot: no, I can add this to the TODO list right now :) | 11:08 | |
tadzik | it's okay, I don't need it that much :) | ||
11:10
woolfy joined
|
|||
dalek | c: c7be18a | (Steve Mynott)++ | bin/p6doc-index: docs |
11:10 | |
sergot | tadzik: we should think about WWW::Mechanize soon-ish :) | ||
tadzik | sergot: yes | ||
sergot: that requires parsing HTML though | 11:11 | ||
or at least "parsing" it | |||
sergot | yes :) | ||
tadzik | you could probably extract forms and urls correctly without parsing the entire thing | ||
sergot | right | 11:13 | |
tadzik | sergot: have you seen github.com/tony-o/perl6-html-parser-xml/? | 11:14 | |
apparently the times when I knew every Perl 6 module in existence are long gone, and that makes me very happy | |||
sergot | no I haven't, looking at this now | ||
tadzik | segomos++ | ||
sergot | segomos++ | 11:15 | |
nice | 11:20 | ||
:) | |||
tadzik | now someone has to sit down and implement xpath andor css selectors :) | 11:21 | |
maybe I can do that, I use them a lot, it'd be nice to know how they work | |||
sergot | tadzik++ :) | 11:23 | |
11:27
Ven joined
|
|||
tadzik | does anyone know what to do when JVM build runs out of memory? | 11:28 | |
psch | tadzik: increase -Xms and -Xmx, if you still can | ||
the latter might be enough | |||
tadzik | psch: thanks, we're trying :) | 11:29 | |
Ven | OH: We'd need to wait for Python 4 to get a type system | 11:31 | |
tadzik | is OH for "OH!" or "overheard"? | 11:32 | |
11:32
raiph joined
11:35
kshannon joined
|
|||
ecocode_ | today, I did better than sawyerx... I asked a question and received response from 2 gurus : TimToady _and_ lizmat ;) | 11:37 | |
tadzik | :) | 11:38 | |
11:39
kjs_ left
|
|||
dalek | ast: 8884780 | (Elizabeth Mattijsen)++ | S02-types/ (3 files): Add todo tests for fragile .WHICH creation aristotle++ for making me do this |
11:40 | |
11:44
Ven left,
BizarreCake left
|
|||
tadzik | sergot: github.com/sergot/http-useragent/b...nt.pm6#L32 I think that's a security risk | 11:46 | |
someone could put cookies.dat in tmp with 777 permissions and then steal them from you, no? | |||
perhaps using File::Temp would be a better idea | 11:47 | ||
krunen | r: multi sub a() {42}; multi sub a() {43}; a() | ||
camelia | rakudo-jvm c793d8: OUTPUT«Ambiguous call to 'a'; these signatures all match::():() in any at gen/jvm/BOOTSTRAP.nqp:1212 in block <unit> at /tmp/tmpfile:1» | ||
..rakudo-moar c793d8: OUTPUT«Ambiguous call to 'a'; these signatures all match::():() in sub a at /tmp/tmpfile:1 in block <unit> at /tmp/tmpfile:1» | |||
..rakudo-parrot c793d8: OUTPUT«Ambiguous call to 'a'; these signatures all match::():() in any at gen/parrot/BOOTSTRAP.nqp:1220 in sub a at /tmp/tmpfile:1 in block <unit> at /tmp/tmpfile:1» | |||
krunen | hmm | ||
sergot | tadzik: sounds reasonable, thanks! :) | 11:48 | |
tadzik | what was your expectation? :) | ||
lizmat | sub redefined warning | ||
because 2 subs with the same signature | |||
wherease: | |||
m: sub a {...}; sub a {42} # redefinition of stub??? | 11:49 | ||
camelia | rakudo-moar c793d8: OUTPUT«===SORRY!=== Error while compiling /tmp/1099u1DYh5Redeclaration of routine aat /tmp/1099u1DYh5:1------> }; sub a {42} # redefinition of stub???⏏<EOL> expecting any of: postfix state…» | ||
lizmat | that *shouldn't* fail, I would think | ||
tadzik | sergot: yay, seems like I learned something on the YAPC then :) | ||
psch | m: sub a {...}; { sub a { 42 }; say a } | ||
camelia | rakudo-moar c793d8: OUTPUT«42» | ||
psch | that doesn't really prove anything i guess | 11:50 | |
or rather, it doesn't change that lizmat++ has a legitimit concern | |||
11:50
bjz left
|
|||
tadzik | sergot: not sure if you've seen the security talk, it was on friday morning I think | 11:50 | |
11:51
bjz joined
|
|||
awwaiid | well the ... would typically be either edited directly or overridden in an objecty way (class method), right? I'm guessing that method override doesn't complain | 11:51 | |
11:52
anaeem1 left
|
|||
sergot | tadzik: I haven't :( | 11:52 | |
tadzik: they will be somewhere online soon, right? | |||
11:54
zakharyas left
|
|||
sergot | m: sub a { 1,2,3 }; say a[0]; | 11:55 | |
camelia | rakudo-moar c793d8: OUTPUT«1» | ||
lizmat | m: say (1,2,3)[0] | 11:58 | |
camelia | rakudo-moar c793d8: OUTPUT«1» | ||
lizmat | .oO( not much different ) |
||
tadzik | sergot: I think they said something about "few weeks" | 11:59 | |
sergot | ok :) | 12:02 | |
12:07
SamuraiJack joined
|
|||
hoelzro | morning #perl6 | 12:08 | |
tadzik | hello hoelzro | ||
hoelzro | o/ tadzik | ||
sergot | tadzik: returning to cookies: we should provide a functionality to pass our cookie jar :) | 12:13 | |
tadzik | that too :) | 12:14 | |
sergot | and use File::Temp when when we don't pass it | ||
m: class A { has $.a; has $.b = $.a } | |||
camelia | rakudo-moar c793d8: OUTPUT«===SORRY!=== Error while compiling /tmp/d9zAtApT3wVirtual call $.a may not be used on partially constructed objectsat /tmp/d9zAtApT3w:1------> class A { has $.a; has $.b = $.a⏏ } expecting any of: …» | ||
sergot | :) | 12:15 | |
tadzik | well, it's correct :) | ||
12:15
Ven joined
|
|||
sergot | yes, just trying :) | 12:15 | |
tadzik | m: class A { has $.a; has $.b = sub { $.a } } | ||
camelia | rakudo-moar c793d8: OUTPUT«===SORRY!=== Error while compiling /tmp/OdG8VURyD6Virtual call $.a may not be used on partially constructed objectsat /tmp/OdG8VURyD6:1------> class A { has $.a; has $.b = sub { $.a⏏ } } expecting any o…» | ||
tadzik | :( | ||
Ven | tadzik: why'd you do that? | 12:16 | |
12:21
xenoterracide joined
|
|||
dalek | nda: 5b7a352 | tadzik++ | README.md: Make README more correct, fixes #88 |
12:22 | |
tadzik | Ven: do what, the sub? | ||
Ven | tadzik: yes | ||
what's wrong with a method? | |||
tadzik | Ven: I was thinking about something along moose's 'is lazy' or however that's written | ||
Ven | tadzik: I don't know moose :(. But not sure we can't `is lazy`? | 12:23 | |
tadzik | Ven: I don't know :) | ||
if not, maybe someone should write it | |||
hint hint | |||
sergot: can HTTP::UA do HTTP auth? | 12:25 | ||
Ven | erm, we can't really do waht I want without macros I'm afraid, mmh | 12:27 | |
I thought about a trait_mod:<is> + proxy to only compute it on the first run, but that's just a basic `is cached | 12:28 | ||
12:28
Ven left
|
|||
tadzik | hm | 12:28 | |
12:28
kjs_ joined
|
|||
psch | m: class A { has $.foo; method $.bar { $!foo // "dunno" } }; my $a = A.new; say $a.bar; $a.foo = "foo"; say $a.bar | 12:29 | |
camelia | rakudo-moar c793d8: OUTPUT«===SORRY!=== Error while compiling /tmp/YHZuNuJCyNMissing blockat /tmp/YHZuNuJCyN:1------> class A { has $.foo; method ⏏$.bar { $!foo // "dunno" } }; my $a = A. expecting any of: scoped declar…» | ||
psch | m: class A { has $.foo; method bar { $!foo // "dunno" } }; my $a = A.new; say $a.bar; $a.foo = "foo"; say $a.bar | ||
camelia | rakudo-moar c793d8: OUTPUT«dunnoCannot modify an immutable Any in block <unit> at /tmp/EpRpAnu5HU:1» | ||
psch | oh rw | ||
m: class A { has $.foo is rw; method bar { $!foo // "dunno" } }; my $a = A.new; say $a.bar; $a.foo = "foo"; say $a.bar | |||
camelia | rakudo-moar c793d8: OUTPUT«dunnofoo» | ||
sergot | tadzik: not yet | ||
if you mean those popup set by .htaccess file | 12:30 | ||
popups | |||
tadzik | well, I mean github.com/tadzik/panda/issues/89 | ||
I was thinking about loading HTTP:UA if it's available, and then that'd work | 12:31 | ||
hoelzro | my notes on merging S26: gist.github.com/hoelzro/eb40043ce135ae7382cf | ||
if no one objects (and enough people approve), I would like to do this today | |||
12:31
jnap joined
|
|||
tadzik | hoelzro: "If multiple objects share a WHY (for example, clones)" | 12:32 | |
sergot | tadzik: we can do this | ||
tadzik | hoelzro: I'm not sure that's correct, or properly understood by me :) | ||
sergot | I mean implement HTTP Auth | ||
tadzik: could you create an issue on http-useragent repo? | 12:33 | ||
in/on. | |||
in | |||
:) | |||
hoelzro | tadzik: I'm not sure if cloning would automatically deep copy WHYs | ||
is that what you're wondering? | |||
tadzik | hmm | ||
hoelzro: I mean, cloning clones objects, not their type objects | |||
and .WHY is for types | 12:34 | ||
well, usually | |||
hm | |||
hoelzro | tadzik: a WHY can be on a method | ||
tadzik | troo | ||
hoelzro | but that's a good point | ||
12:34
|newbie| joined
12:35
xenoterracide left
12:36
lizmat left,
lizmat joined
|
|||
tadzik | hoelzro: I'm reading diff now, but imho if it doesn't break old tests and does make new tests pass it should go in :) | 12:37 | |
12:37
SamuraiJack left
|
|||
hoelzro | tadzik: spectest passes | 12:37 | |
at least, it does on mokudo =) | |||
tadzik | : | ||
:) | |||
close enough :P | |||
hoelzro | I'll try on pakudo and jakudo | 12:38 | |
sergot | m: class A { has $.a; method new(*%args) { self.bless(|%args) } }; A.new(:a<b>).a; | 12:42 | |
camelia | ( no output ) | ||
sergot | m: class A { has $.a; method new(*%args) { self.bless(|%args) } }; A.new(:a<b>).a.say; | ||
camelia | rakudo-moar c793d8: OUTPUT«b» | ||
sergot | m: class A { has $.a; method new(*%args) { %args<a> = 'c'; self.bless(|%args) } }; A.new(:a<b>).a.say; | ||
camelia | rakudo-moar c793d8: OUTPUT«Cannot modify an immutable Str in method assign_key at src/gen/m-CORE.setting:9589 in sub postcircumfix:<{ }> at src/gen/m-CORE.setting:2740 in method new at /tmp/XsyvKa_kLj:1 in block <unit> at /tmp/XsyvKa_kLj:1» | ||
sergot | m: class A { has $.a; method new(*%args) { %args<a> = 'c'; self.bless(|%args) } }; A.new().a.say; | 12:43 | |
camelia | rakudo-moar c793d8: OUTPUT«c» | ||
dalek | kudo-star-daily: 7b5cb99 | coke++ | log/ (14 files): today (automated commit) |
12:45 | |
sergot | m: class B { has $.b;}; class A { has B $.a; method new(*%args) { %args<a> = B.new(:b<a>); self.bless(|%args) } }; A.new.a.say; | ||
camelia | rakudo-moar c793d8: OUTPUT«B.new(b => "a")» | ||
dalek | nda: 74fd87f | (Andrew Egeler)++ | lib/Panda/App.pm: Add our current destdir to @*INC This fixes the issue with LibraryMake and OpenSSL/Auth::PAM::Simple/etc (if LibraryMake was installed as a dependency of the above, the build would fail the first time, but not the second) |
12:46 | |
nda: eb66dcf | tadzik++ | lib/Panda/App.pm: Merge pull request #90 from retupmoca/master Add our current destdir to @*INC |
|||
tadzik | colomon: can I have your insight on github.com/tadzik/rakudobrew/issues/8? | 12:48 | |
12:48
kaare_ left
|
|||
lizmat | can someone git krunen a commit bit for roast, please ? | 12:50 | |
*give | |||
sergot | m: class B { has $.b;}; class A { has B $.a; method new(*%args) { %args<a> = B.new(:b<a>); self.bless(|%args) } }; A.new.a.b.say; | 12:58 | |
camelia | rakudo-moar c793d8: OUTPUT«a» | ||
13:03
anaeem1_ joined
13:04
kurahaupo joined
13:07
anaeem1_ left
13:14
prevost joined
13:17
sjn left
13:20
mj41 joined
|
|||
tadzik | gist.github.com/tadzik/b536d67bcd0869dd5b44 -- this is nice, but it doesn't work if you downloaded a tarball from github, and it just bit a customer on the hackathon :) Maybe the star repo should have a biiig warning sign in the readme or the description? | 13:29 | |
13:31
mberends joined
|
|||
[Coke] | tadzik: adding a warning to README.star | 13:33 | |
tadzik | [Coke]++ | ||
13:33
renormalist joined
|
|||
dalek | ar: 66a6a39 | coke++ | README.star: Warn users about github tarballs tadzik++ |
13:35 | |
13:41
dolmen joined
13:44
guru joined,
guru is now known as Guest61353
13:45
Guest61353 is now known as ajr_
13:51
kaare_ joined
|
|||
PerlJam hopes the hackathon is well-attended. | 13:51 | ||
lizmat++ woolfy++ | 13:52 | ||
13:55
dolmen left
13:58
kurahaupo_ joined
|
|||
timotimo | oh | 14:00 | |
there's a "delete" button for the tagged release | |||
i'll try and see what it does | |||
14:01
gmunoz is now known as zoosha
|
|||
timotimo | i've deleted the release corresponding to the 2012.04 tag, but a git clone will still hand out the tag correctly | 14:01 | |
so maybe i should just go through the list and delete all those tags? | 14:02 | ||
14:02
kurahaupo left
14:03
araujo joined,
araujo left,
araujo joined
|
|||
PerlJam | btw, for RT #122604, my guess is that is has something to do with github.com/rakudo/rakudo/blob/nom/...ter.pm#L48 if any of that hackathoners are paying attention and has time to look deeper. | 14:04 | |
synopsebot | Link: rt.perl.org/rt3//Public/Bug/Displa...?id=122604 | ||
PerlJam has a meeting to attend now | |||
s/that/the/ | |||
PerlJam *poof* | 14:05 | ||
timotimo | it will probably create new "releases" for every tag we push in the future | ||
14:08
mj41 left
14:12
aindilis left
14:18
grep0r joined
14:21
woosley left
14:22
sjn joined
14:24
woosley joined
14:25
treehug88 joined
14:27
ecocode__ joined
14:28
clkaoud_ joined
14:30
_thou joined,
flussenc1 joined
14:31
amkrankr1leuen joined,
Juerd_ joined,
lee__ joined,
rhr_ joined,
mads-_ joined,
Woodi_ joined,
Tene_ joined,
Tene_ left,
Tene_ joined
14:32
djanatyn1 joined,
clkaoud left,
amkrankruleuen left,
synopsebot left,
rhr left,
mads- left,
Juerd left,
thou left,
flussence left,
Tene left,
lee_ left,
ecocode_ left,
ivanshmakov left,
Woodi left,
bcode left,
dylanwh left,
cotto left,
Exodist left,
djanatyn left,
bcode joined,
Juerd_ is now known as Juerd,
bcode left,
bcode joined,
dylanwh_ joined,
dylanwh_ is now known as dylanwh,
clkaoud_ is now known as clkaoud
14:33
cotto joined
14:34
flussenc1 is now known as flussence,
flussence left
14:35
flussence joined,
Exodist joined,
synopsebot joined,
ivanshmakov joined
14:41
gtodd left
14:43
BizarreCake joined,
kaleem left
14:49
bcode_ joined,
coffeeyy joined
14:50
synopsebot left,
coffeeyy_ left,
bcode left,
lestrrat left,
bcode_ is now known as bcode,
lestrrat joined
14:51
dayangkun joined,
synopsebot joined
|
|||
[Coke] | timotimo: add it to the release guide, I guess. | 14:51 | |
14:52
dayangkun left,
dayangkun joined
15:02
dayangkun left
15:19
dayangkun joined
15:22
brrt joined
15:23
mr-foobar left
15:25
mr-foobar joined
|
|||
brrt | \o | 15:26 | |
quick question | |||
does perl6 have a standard interface to it's own compiler? | |||
15:27
mads-_ is now known as mads-
|
|||
moritz | no | 15:28 | |
but speccing and implementing such an interface would be highly appreciated | |||
brrt | hmm | 15:29 | |
brrt is not really much of a spec-master | |||
moritz: you weren't at YAPC::EU were you? | |||
moritz | brrt: nope :( | 15:30 | |
brrt | basically, i'm asking the question since we might want to do stuff like disabling spesh for some frames if bugs are found | ||
15:30
ardeshir joined
|
|||
brrt | moritz: shame, it was quite fun | 15:32 | |
15:33
dayangkun left
|
|||
|newbie| | what would be the standard interface? | 15:39 | |
user interface? | |||
TimToady | pragmas are kind of a natural for hints to the compiler; that's what they were invented for in the first place (we got them from Ada) | 15:40 | |
though in Ada it was defined such that an unrecognized pragma is simply ignored, which we don't do in Perl | 15:41 | ||
so maybe we need some way to distinguish ignorable pragmas | 15:42 | ||
we've only got away with in in Perl 5 because there's only one implementation, and in Perl 6 because all the implementations coordinate | |||
brrt | why not warn on an unrecognized pragma | ||
TimToady | but if this branches out into non-coordinated implementations, we need ignorables | 15:43 | |
warnings are irritating when you already know it :) | |||
brrt | anyway, [newbie]: in python you can ask for the ast as well as for a compiler-as-an-object | ||
yeah true | |||
TimToady | and the point is to give implementation specifics that are known not to apply elsewhere | ||
brrt | then we'd need an option | ||
:-) | 15:44 | ||
TimToady | options are irritating too, when the optionality shoudl be expressed by the orinator, not the user | ||
eye doc & | 15:45 | ||
(just a checkup) | |||
brrt | good luck :-) | 15:46 | |
TimToady | we'll see :) | ||
brrt | :-) | ||
15:47
dayangkun joined
|
|||
brrt | maybe we can say 'use no-spesh if $*VM = 'moar'; | 15:47 | |
that how i'd like to use it anyway | 15:48 | ||
use no-spesh if $*VM ~~ /^moar/; | |||
15:49
mberends left
15:52
ecocode__ left
|
|||
dalek | rl6-roast-data: 632b979 | coke++ | / (6 files): today (automated commit) |
15:52 | |
15:52
BizarreCake left
|
|||
[Coke] | down to only flapping tests for the JVM. | 15:52 | |
panda question - any way to easily change the github submodule urls so they use another protocol? | 15:55 | ||
[6~[6~ | |||
(or do I have to do it by hand?) | |||
moritz | [Coke]: I think you have to edit .gitmodules | 15:56 | |
[Coke] | I did that. it still has that info cached somewhere. | 15:57 | |
hoelzro | you have to do git submodule sync, iirc | ||
[Coke]: ^ | 15:58 | ||
[Coke] | Thanks, that was it. | ||
... farglebargle. | 16:01 | ||
getting past that, I then cannot install anything with panda because of the protocols. | |||
opening panda ticket. | |||
16:05
|newbie| left
16:06
donaldh left
16:08
telex left
|
|||
[Coke] | (er, it's not even getting to the protocol for the individual modules, it can't downlaod the module list) | 16:08 | |
16:08
ajr_ left
|
|||
hoelzro | I think I got around that a while ago by downloading the module list by hand | 16:09 | |
16:10
telex joined
|
|||
[Coke] | I can work around it by not being at work. :) | 16:10 | |
16:11
guru joined
|
|||
hoelzro | heh | 16:11 | |
16:11
guru is now known as Guest8344,
Guest8344 is now known as ajr_
|
|||
moritz | [Coke]: ah, .git/config *also* has the submodule URLs | 16:12 | |
16:14
erdic left
16:15
ajr_ left
16:17
ajr joined
16:18
ajr is now known as Guest15076,
kaleem joined,
Guest15076 is now known as ajr_
16:19
mberends joined
16:22
[Sno] left
16:27
dayangkun left
16:30
ajr_ left,
mj41 joined
16:33
ajr_ joined,
erdic joined
|
|||
tadzik | wow! | 16:36 | |
(whoever did design for doc.perl6.org) | |||
++ | |||
16:36
Rotwang joined
|
|||
dalek | href="https://perl6.org:">perl6.org: 60d75f4 | tadzik++ | source/documentation/index.html: Add "Learn Perl 6 in Y minutes" I took a liberty to put it on top, as it was cited as a top resource in lizmat++'s YAPC talk |
16:37 | |
16:39
SamuraiJack joined
|
|||
tadzik | I wonder what the project goal of MuEvent should be, now that we have all the fancy Async stuff | 16:40 | |
hoelzro | tadzik: maybe a sort of "adapter" layer for modules being ported from using AnyEvent in Perl 5? | 16:41 | |
16:43
mberends left
16:44
kjs_ left
16:50
zakharyas joined,
mberends joined
16:58
treehug88 left
16:59
tgt joined
17:00
BizarreCake joined
17:03
brrt left
17:05
lizmat_ joined,
lizmat left
|
|||
nine_ | I get the impression that quite a lot is missing on doc.perl6.org like doc.perl6.org/type/IO::Path | 17:05 | |
moritz | nine_: to the best of my knowledge, nobody ever claimed that it was feature complete | 17:15 | |
nine_ | moritz: I guess what I was trying to say was: where do I find documentation for example about IO::Path? | 17:17 | |
moritz | nine_: currently in S32/IO.pod | 17:18 | |
TimToady thinks maybe we should set lexically scoped hints with "use :spesh" and such, and the pair indicates we just save the hint in a varible like %?HINTS or some such | 17:22 | ||
so it can't fail even if the entry is unrecognized or never used | |||
*variable | 17:28 | ||
moritz | m: say IO::Path.basename | ||
camelia | rakudo-moar c793d8: OUTPUT«Cannot look up attributes in a type object in method parts at src/gen/m-CORE.setting:14538 in method basename at src/gen/m-CORE.setting:14541 in block <unit> at /tmp/g0KqilpTrM:1» | ||
TimToady | they only use them varibles down in Texas... | ||
17:29
kaleem left
|
|||
tadzik | hoelzro: question is, will it be useful to anybody :) | 17:34 | |
17:34
ajr_ left
|
|||
hoelzro | tadzik: maybe, maybe not =/ | 17:34 | |
tadzik | it may rest in peace right next to Coroutines :D | 17:35 | |
17:38
MilkmanDan left
17:39
MilkmanDan joined
|
|||
tadzik | sergot: ༼ つ ◕_◕ ༽つ PLS HTTPAUTH | 17:44 | |
17:44
lizmat_ is now known as lizmat
|
|||
hoelzro | tadzik: for HTTP::UserAgent? | 17:45 | |
tadzik | hoelzro: yeah | ||
hoelzro | I was thinking about user agents on my drive home yesterday | 17:46 | |
moritz | m: say IO::Path::Win32.new("C:\\Windows\\registry.ini").parts.perl | ||
camelia | rakudo-moar c793d8: OUTPUT«("directory" => "\\Windows", "basename" => "registry.ini", "volume" => "C:").hash» | ||
hoelzro | it would be cool to have a middleware-like approach | ||
moritz | m: say IO::Path::Win32.new("C:\\").parts.perl | ||
camelia | rakudo-moar c793d8: OUTPUT«("directory" => "\\", "volume" => "C:", "basename" => "\\").hash» | ||
moritz | m: say IO::Path.new(".").parts.perl | ||
TimToady | moritz: did you ever find nqp::splice for your "flattening unshift"? | ||
hoelzro | so you could have a layer that just handles adding auth data to the request | ||
camelia | rakudo-moar c793d8: OUTPUT«("volume" => "", "directory" => ".", "basename" => ".").hash» | ||
moritz | TimToady: no; I cheated :-) | ||
colomon | jnthn++ # interesting stuff coming from the profiler | 17:47 | |
TimToady | nqp::splice is what I taught push to use | ||
hoelzro | on a separate note, has anyone (other than tadzik) looked at my gist wrt S26? | ||
17:48
anaeem1_ joined
|
|||
PerlJam | hoelzro: which gist? | 17:48 | |
hoelzro | my notes on merging S26: gist.github.com/hoelzro/eb40043ce135ae7382cf | ||
PerlJam looks | 17:49 | ||
flussence | std: sub MAIN; | ||
camelia | std ee1ef48: OUTPUT«===SORRY!===Malformed block at /tmp/IY8mRCLLYW line 1:------> sub MAIN⏏; expecting any of: new name to be defined routine_defParse failedFAILED 00:01 120m» | ||
17:49
anaeem1_ left
|
|||
moritz | hoelzro: please test perl6/doc HTML generation after a test merge | 17:50 | |
hoelzro: afaict it's the biggest pod user right now | |||
hoelzro | moritz: I'll be sure to try that | ||
tadzik | huh, does the debugger not cross the module boundary? | 17:51 | |
it just didn't step into unmarshal() that I imported | |||
PerlJam | hoelzro: none of those issues are anything that I would consider a show-stopper. | ||
17:52
Ven joined
|
|||
hoelzro | cool | 17:52 | |
sergot: what do you think about that HTTP UA middleware idea? | 17:53 | ||
Ven | tadzik: thanks, I should've added it some time ago ... | 17:55 | |
tgt | r: sub a(:$a, :$b) { say $a + $b }; &a.assuming(:a(5))(:a(2), :b(2)) | 17:56 | |
camelia | rakudo-moar c793d8: OUTPUT«7» | 17:57 | |
..rakudo-{parrot,jvm} c793d8: OUTPUT«4» | |||
tgt | Based on my expectations moar's result is correct, but based on the implementation parrot/jvm is, so maybe this is a moar bug? | ||
(Implementation is at github.com/rakudo/rakudo/blob/nom/...ne.pm#L27) | 17:58 | ||
PerlJam | &a.assuming(:a(5)) shouldn't accept an :a parameter IMHO as it's fixed. | 17:59 | |
psch | assuming needs work, in my opinion | ||
PerlJam | (IOW, I'd say moar is more right) | ||
tgt | I agree, but I don't see why it does so atm. The implementation looks like it should just uses slurpies, so surely the later named args should overwrite earlier ones atm? | 18:00 | |
psch | RT #77744 is one thing i came across recently | ||
synopsebot | Link: rt.perl.org/rt3//Public/Bug/Displa...l?id=77744 | ||
Ven | wow, topaz is almost as fast as jruby 9k with truffle | ||
tgt | (ignore "looks like it should" in the second sentence.) | 18:01 | |
psch: Yeah, the commit message says that's the case github.com/rakudo/rakudo/commit/1c...10674d7a19 | 18:02 | ||
mberends | At DebConf14 the Debian Perl Group annual meeting has just begun summit.debconf.org/debconf14/meeti...erl-group/ | ||
18:02
Ven left
|
|||
psch | tgt: right, i hadn't looked for the commit, thanks | 18:02 | |
colomon just got a huge speed-up for his $work code by replacing one line of beautiful Set operations with 10+ lines of mucking about with Hashes. | 18:03 | ||
psch | i did have a go at trying to build a signature, but ran into pair quoting troubles | ||
tgt | I don't see how, given that implementation, moar would do what it did above. | ||
nwc10 | jnthn++ # --profile | ||
dalek | c: dcc0a7e | moritz++ | lib/Type/IO/Path.pod: WIP: IO::Path docs, for nine_++ |
18:04 | |
moritz | tgt: it seems moar simply takes the first version of a named param | 18:05 | |
r: sub a(:$x) { say $x }; a(x => 42, x => 1); | |||
camelia | rakudo-{parrot,jvm,moar} c793d8: OUTPUT«1» | ||
moritz | huh. | 18:06 | |
tgt | :) Yeah... | ||
xfix | .u ␁ | ||
yoleaux | U+2401 SYMBOL FOR START OF HEADING [So] (␁) | ||
moritz | r: sub a(:$x) { say $x }; a(|{x =>'first'}, |{x => 'last'}) | ||
camelia | rakudo-moar c793d8: OUTPUT«first» | ||
..rakudo-{parrot,jvm} c793d8: OUTPUT«last» | |||
moritz | tgt: ... unless it's from interpolation, it seems | ||
18:07
molaf__ joined
|
|||
xfix | r: say "\x01ACTION(.*)\x01" | 18:07 | |
camelia | rakudo-{parrot,jvm,moar} c793d8: OUTPUT«ƬTION(.*)» | ||
xfix | Hm... | ||
I was programming in AWK, and wrote code like if (match(previous, /\x01ACTION(.*)\x01/, action_storage)) {. | 18:08 | ||
tgt | It's a moar bug then? | ||
xfix | (and was surprised when I got a warning - "gawk: commands.awk:85: warning: hex escape \x01AC of 4 characters probably not interpreted the way you expect") | ||
moritz | tgt: no idea | ||
psch | xfix: delimit with brackets, e.g. \x[01] | ||
xfix | I know, I just find it interesting that gawk makes a warning. | 18:09 | |
psch | oh | ||
yeah i was about to add a "if i guess what you mean correctly" | |||
xfix | Perhaps Perl 6 could do a warning too in case when the character after it is literal. | ||
psch | a bit too type-happy right now it seems | ||
xfix | (but I honestly didn't expect AWK to actually consider it to be Unicode) | 18:10 | |
18:10
molaf_ left,
BizarreCake left
|
|||
xfix | ... actually, it's not Unicode, now that I look into it. | 18:10 | |
It's the most crazy interpretation. It just removes useless bytes. \x2122 is quotation mark. | 18:11 | ||
18:11
Ven joined
18:12
zakharyas left,
zakharyas joined
|
|||
psch | n: sub a(:$x) { say $x }; a(|{x =>'first'}, |{x => 'last'}) | 18:14 | |
camelia | niecza v24-109-g48a8de3: OUTPUT«last» | ||
psch | tgt, moritz: that might be another check for "moar bug", although i don't know if it's specced anywhere | 18:15 | |
moritz | probably in S06 | 18:16 | |
Ven | m: say ({x => 'first'}, {x => 'last'}).flat | ||
camelia | rakudo-moar c793d8: OUTPUT«{"x" => "first"} {"x" => "last"}» | ||
Ven | I guess :< | ||
psch | S06:891 | ||
synopsebot | Link: perlcabal.org/syn/S06.html#line_891 | ||
PerlJam | r: sub a(:$x) { say $x }; a(|{x =>'first'},x => 'last'); | 18:18 | |
camelia | rakudo-moar c793d8: OUTPUT«Unexpected named parameter 'x' passed in sub a at /tmp/tmpfile:1 in block <unit> at /tmp/tmpfile:1» | ||
..rakudo-parrot c793d8: OUTPUT«duplicate named argument in call in block <unit> at /tmp/tmpfile:1» | |||
..rakudo-jvm c793d8: OUTPUT«last» | |||
moritz | "Other sigils bind only to the I<last> argument with that name: | ||
PerlJam | huh | ||
moritz | sub fun (Int :$x) { ... } | ||
fun( x => 1, x => 2 ); # $x := 2 | |||
" | |||
S06:882-901 | 18:19 | ||
synopsebot | Link: perlcabal.org/syn/S06.html#line_882 | ||
moritz | r: sub f(:@x) { say @x.perl }; f x => 1, x => 42; | 18:20 | |
camelia | rakudo-moar c793d8: OUTPUT«cannot stringify this in sub f at /tmp/tmpfile:1 in block <unit> at /tmp/tmpfile:1» | ||
..rakudo-{parrot,jvm} c793d8: OUTPUT«Type check failed in binding @x; expected 'Positional' but got 'Int' in sub f at /tmp/tmpfile:1 in block <unit> at /tmp/tmpfile:1» | |||
PerlJam | bugs all around | ||
moritz | according to S06:882, that should work, and produce [1, 42] or some such | ||
synopsebot | Link: perlcabal.org/syn/S06.html#line_882 | ||
moritz | though I guess that kind of goes against the binder logic | 18:21 | |
[Coke] | m: my @array = ({:a<1>}, {:b<1>}, {:a<1>}); my $with = &[eqv]; use Test; is_deeply @array .= uniq(:$with), [{:a<1>}, {:b<1>}], "dies on os x" | 18:22 | |
camelia | rakudo-moar c793d8: OUTPUT«ok 1 - dies on os x» | ||
[Coke] | Ugh. *occasionally* segfaults on osx. :P | 18:23 | |
sergot | tadzik: I will try to figure out something tomorrow, ok? :) | 18:26 | |
hoelzro: what do you mean? :) | |||
hoelzro | sergot: I was thinking of breaking out all but the most basic HTTP agent logic into middleware | 18:28 | |
ex. cookie processing, redirect following, etc | |||
18:29
gfldex joined,
brrt joined
18:30
Tene_ is now known as Tene
|
|||
lizmat | moritz: could you give krunen a commit bit for roast ? | 18:31 | |
tadzik | sergot: sure :) | 18:37 | |
18:41
Sqirrel joined
18:43
beastd joined
18:45
kjs_ joined
|
|||
TimToady | I sent an invitation, dunno if that's sufficient | 18:45 | |
lizmat | TimToady++ krunen should be arriving back in Norway soonish | 18:46 | |
TimToady | interface has changed considerably since the last time I gave someone a commit bit... | ||
hoelzro | I'm seeing this unfamiliar syntax in jnthn's slides (what else is new?): .<done> | 18:47 | |
18:48
xinming_ left
|
|||
hoelzro | what does .<...> mean? | 18:48 | |
18:48
brrt left
|
|||
FROGGS | hash access on $_ | 18:48 | |
hoelzro | oh, duh | ||
thanks FROGGS | |||
FROGGS | m: $_ = { a => 42 }; say .<a> | ||
camelia | rakudo-moar c793d8: OUTPUT«42» | ||
18:49
woolfy left,
mberends left,
ardeshir left,
zakharyas1 joined,
[Sno] joined,
mberends joined
|
|||
sergot | hoelzro: sounds interesting | 18:49 | |
hoelzro | sergot: I think there's a Ruby library that does the same | 18:50 | |
faraday | |||
sergot | hoelzro: can we talk about it more tomorrow? :) will be awesome | 18:51 | |
18:51
zakharyas left,
spider-mario left
|
|||
hoelzro | sergot: sure | 18:51 | |
18:51
ardeshir joined
|
|||
sergot | hoelzro++ thanks! :) | 18:51 | |
hoelzro | np =) | 18:52 | |
tadzik | does debugger have a "remind me where I am again" option? :P | 18:53 | |
18:56
xinming joined
18:58
mberends left
19:09
kjs_ left
19:10
ecocode joined,
kjs_ joined,
go|dfish left
19:13
kurahaupo joined
19:15
go|dfish joined,
woolfy joined
19:16
kjs_ left
19:25
mj41 left
19:30
darutoko left
19:31
molaf__ left
19:33
prevost left
19:37
spider-mario joined
19:38
Rotwang left,
Rotwang joined
19:40
Ven left
19:41
Ven joined
|
|||
PerlJam | 19:44 | ||
19:45
mberends joined
|
|||
lizmat | 19:46 | ||
19:52
kjs_ joined
20:01
woolfy left
20:08
kjs__ joined,
zakharyas joined
20:09
kjs_ left,
kjs__ is now known as kjs_
20:10
brrt joined,
zakharyas1 left
|
|||
PerlJam | Looking at jnthn's async slides for yapc::eu 2014 ... does Proc::Async for Perl 6 actually exist somewhere? | 20:14 | |
tgt | It was added to rakudo a couple of weeks ago: github.com/rakudo/rakudo/commits/0...c/Async.pm | 20:16 | |
20:17
bcode left,
bcode joined
|
|||
PerlJam | ah | 20:17 | |
thanks | |||
moritz | perlpunks.de/paste/show/53fb99b1.3629.37b # rakudo-m is a factor 1428 slower than 'find' for recursive directory traversal | ||
PerlJam: Proc::Async is MoarVM-only | 20:18 | ||
PerlJam | moritz: aye, that's pretty much all I use these days :) | 20:19 | |
20:19
BizarreCake joined
|
|||
moritz | m: say $*CWD.^name | 20:20 | |
camelia | rakudo-moar c793d8: OUTPUT«IO::Path» | ||
moritz | m: say $*CWD.chmod(0o775) | 20:21 | |
camelia | rakudo-moar c793d8: OUTPUT«True» | ||
dalek | c: f585083 | moritz++ | lib/Type/IO/Path.pod: [IO::Path]: document chmod, contents |
20:23 | |
20:27
anaeem1 joined
|
|||
moritz | m: say '.'.path.absolute | 20:28 | |
camelia | rakudo-moar c793d8: OUTPUT«IO::Path</home/p6eval>» | ||
moritz | m: say '.'.path.is-absolute | ||
camelia | rakudo-moar c793d8: OUTPUT«False» | ||
dalek | c: a8c6e4b | moritz++ | lib/Type/IO/Path.pod: [IO::Path] document {,is-}{absolute,relative}; update TODOs |
20:33 | |
20:33
kaare_ left
|
|||
PerlJam | m: say "/foo/bar/../..".path.absolute; | 20:33 | |
camelia | rakudo-moar c793d8: OUTPUT«IO::Path</foo/bar/../..>» | ||
PerlJam | not quite right there. | 20:34 | |
FROGGS | PerlJam: what do you expect? | ||
moritz | it's already an absolute path | ||
PerlJam | oh, I guess that's true. | ||
moritz | m: say "/foo/bar/../..".path.cleanup | ||
camelia | rakudo-moar c793d8: OUTPUT«IO::Path</foo/bar/../..>» | ||
FROGGS | and normalizing ../ isnt safe | ||
PerlJam | FROGGS: it's "safe" as long as it doesn't rely on FS manipulation | 20:35 | |
FROGGS | there was something about bar being a symlink, but I forgot the details | 20:36 | |
moritz | speaking of symlinks | ||
does MoarVM support readlink? | |||
FROGGS | from P5's File::Spec "Note that this does *not* collapse x/../y sections into y. This is by design. If /foo on your system is a symlink to /bar/baz, then /foo/../quux is actually /bar/quux, not /quux as a naive ../-removal would give you. If you want to do this kind of processing, you probably want Cwd's realpath() function to actually traverse the filesystem cleaning up paths like this." | 20:37 | |
moritz | src/io/fileops.c uses uv_fs_readlink, but it seems it doesn't expose it as a readlink op | ||
m: say '/home/p6eval/../../'.relative('/') | 20:38 | ||
camelia | rakudo-moar c793d8: OUTPUT«No such method 'relative' for invocant of type 'Str' in block <unit> at /tmp/N2PXRqzwwL:1» | ||
moritz | m: say '/home/p6eval/../../'.path.relative('/') | ||
camelia | rakudo-moar c793d8: OUTPUT«IO::Path<home/p6eval/../..>» | ||
20:38
ardeshir left
20:40
zakharyas left
20:42
dolmen joined
20:44
kjs_ left
20:52
Rotwang left
|
|||
brrt afk | 20:55 | ||
20:55
brrt left
|
|||
moritz | does anybody here know Aliaksandr Zahatski? | 20:58 | |
20:59
ecocode left,
anaeem1 left,
ecocode joined
|
|||
FROGGS | moritz: no, but does that help? irclog.perlgeek.de/perl6/search/?ni...q=Zahatski | 21:01 | |
moritz | FROGGS: maybe :-) | 21:02 | |
21:04
ecocode left
21:05
rindolf left
21:06
guru joined
|
|||
hoelzro | let's say I have a parameterized role, and a curried role derived from it: role R[::T} {} ; my $curry = R[Num]; | 21:07 | |
21:07
guru is now known as Guest82905
|
|||
hoelzro | if R has attached docs, should $curry inherit those? | 21:07 | |
21:07
Guest82905 is now known as ajr_
|
|||
hoelzro | (more specifically, R[::T] has docs) | 21:07 | |
PerlJam | hoelzro: sounds like "yes" for me :) | 21:09 | |
hoelzro | I would expect that as well | ||
PerlJam | Though, if the docs mention ::T, it would be nice if the curried version actually mentioned Num instead. | ||
hoelzro | bwah | ||
that would be cool | 21:10 | ||
PerlJam | yeah, I think it would require more smarts than the docs have right now though. | ||
hoelzro | well | 21:11 | |
thinking of how it's currently impl'd | |||
we'd have to defer Pod -> string translation until the WHY is accessed | |||
and probably cache it | |||
I don't know if the facility to translate constants exists, though | |||
as spec'd in S26 | |||
PerlJam | sure, but how would you link "::T" with "Num"? | 21:12 | |
hoelzro | PerlJam: you'd have to put it in a Pod directive | ||
21:13
gfldex left
21:14
ardeshir joined
|
|||
dalek | kudo/nom: ef54ae9 | moritz++ | src/core/IO.pm: [IO::Path] be more consistent with IO::Path:D markers for the invocant |
21:14 | |
21:15
ajr_ left
|
|||
PerlJam | It would be nice if we could somehow make R<> (replaceable item) actually *be* replaceable instead of just indicating as such in the text. | 21:15 | |
21:15
ajr joined
21:16
ajr is now known as Guest96798
21:17
Guest96798 is now known as ajr_
|
|||
hoelzro | PerlJam: what do you mean? | 21:17 | |
moritz | PerlJam: do it! | 21:18 | |
hoelzro | you mean in like a form, if the HTML output is used? | ||
PerlJam | moritz: tell me how! :) | ||
21:18
ardeshir left
|
|||
moritz | PerlJam: 1) formulate a plan 2) follow it 3) profit! | 21:18 | |
no "..." step involved | 21:19 | ||
PerlJam | hoelzro: like everywhere the docs said R<::T>, for the curried thing, it would notice that ::T was Num and actually output Num instead | ||
hoelzro | PerlJam: I think R<...> is used for something else | 21:20 | |
and there's a separate code for what you want | |||
something like A<...> | 21:21 | ||
PerlJam | nah, A<> is something else too | 21:22 | |
hoelzro | I just realized that myself =) | ||
oh, A<...> is spec'd to replace both Pod objects as well as compile-time known values in the Perl 6 program | 21:23 | ||
PerlJam | R<> is for when you type something like: git checkout R<COMMITISH> and you mean for the user to actually put a SHA1 or branch or tag or whatever instead of "COMMITISH". That's really close to what I want except I don't just want the typographical convention, I want an actual replacement. | ||
hoelzro | see line 2274 of S26 | ||
PerlJam looks | 21:24 | ||
hoelzro | PerlJam: where would COMMITISH come from, though? | ||
the value for it, I mean | |||
PerlJam | The really smart perl6 compiler :) | ||
hoelzro | so the perl6 implementation would know about special symbols like COMMITISH? | 21:25 | |
PerlJam | Maybe it only applies for parameterized types and we only need to worry about things that look like ::T | 21:26 | |
hoelzro | seems like A<$?VM> would do | ||
A<...> will sub in an compile-time values, as long as they begin with a sigil | 21:27 | ||
...which makes ::T more difficult | |||
I guess you could consider :: as a type of sigil, though | |||
if it were up to me, I would consider :: as sigil-like at least for the rules of A<...> | 21:28 | ||
PerlJam | Then we might haveto quibble on "compile time" a little bit :) | ||
hoelzro | hmm | ||
well, for ::T, definitely | 21:29 | ||
that's not compile time | |||
but a curried role's WHY shouldn't ever appear in $=pod | |||
and $=pod is what concerns me at compile time | |||
if I'm inspecting a program, and I come across a curried role, having A<...> sub in the type params would be cool | 21:30 | ||
but I'm curious on what others think | |||
21:35
jnap left
|
|||
PerlJam | If there's enough information available, we could spec that bare ::T (things that look like that) would transform into the actual type name or otherwise render as if it had been written as R<::T> | 21:37 | |
Though, again, "rendering" of WHY would have to be deferred ALAP | 21:38 | ||
hoelzro | I'd rather that the documenter explicitly use A<::T> | ||
but yes, it would have to be deferred | 21:39 | ||
PerlJam boggles that ALAP, FIFO and LIFO aren't in S99 | 21:41 | ||
TimToady bets 'boggles' isn't in there either | |||
hoelzro | I had to look that one up =) | ||
does yoleaux support looking things up from S99? | |||
dalek | ecs: 201b167 | duff++ | S99-glossary.pod: Add LIFO, FIFO, and ALAP |
21:42 | |
21:43
jnap joined
|
|||
TimToady | no, no, no, you have to add ALAP ALAP! | 21:43 | |
PerlJam | :-P | ||
PerlJam suddenly wonders about the etymology of the word "boggles" | 21:46 | ||
21:53
BizarreCake left
22:00
dolmen left
22:01
stux|RC-only left,
stux|RC-only joined
22:02
daxim_ left,
daxim_ joined,
kjs_ joined
22:04
simcop2387 left,
simcop2387 joined,
simcop2387 left,
simcop2387 joined,
kjs_ left
22:05
tgt_ joined
22:06
ggoebel11111118 joined,
tgt left
22:07
ggoebel11111117 left
22:08
immortal joined,
immortal left,
immortal joined
22:09
kuroseki joined
22:10
kst` joined,
erkan left,
clkaoud left,
kst left,
clkaoud_ joined,
eternaleye left
22:11
SamuraiJack left,
eternaleye joined
22:12
Salai left
22:13
colomon left
22:16
renormalist left,
zacts left,
zoosha left,
btyler left,
petercommand left,
zoosha joined,
renormalist joined,
Psyche^ left,
Psyche^ joined,
simcop2387 left,
coffeeyy left,
simcop2387 joined,
simcop2387 left,
btyler joined,
zacts joined,
petercommand joined
22:17
coffeeyy joined
22:20
Alina-malina left,
simcop2387 joined
22:21
Alina-malina joined,
zacts left
22:22
zacts joined
22:26
zacts left
22:27
kurahaupo left,
zacts joined
22:31
tgt_ is now known as tgt,
tgt left
22:32
tgt joined,
zacts left
22:35
spider-mario left
22:36
tgt left
22:37
aborazmeh joined
22:44
jnap left
22:55
xenoterracide joined
22:58
xragnar_ joined,
xragnar is now known as Guest92544,
Guest92544 left,
xragnar_ is now known as xragnar
|
|||
dalek | ecs: 1555a80 | (Elizabeth Mattijsen)++ | S02-bits.pod: .WHICH should not be dependent on location Some implementations may want to relocate objects during the lifetime of the object, causing the identity to change of it were based on location. |
23:05 | |
lizmat | *if it were based :-( | ||
23:09
araujo left
23:10
araujo joined
|
|||
en wonders if dalek bites (or, rather, shoots) | 23:13 | ||
lizmat | dalek is booted from the channel sometimes | ||
23:13
telex left
|
|||
lizmat | but always comes back friendly as ever | 23:13 | |
23:14
telex joined
23:25
huf left
23:27
huf joined
23:28
ajr_ left
23:30
raiph left,
grondilu joined
|
|||
grondilu | Hello | 23:30 | |
There was an entry lately in HN about Geometric Algebra. Fascinating stuff. Now I can't help thinking of a module for that in P6 | 23:31 | ||
23:34
aborazmeh left
|
|||
lizmat | ++grondilu :-) | 23:35 | |
grondilu | .oO( sub infix:<∧>(*@multivector) {...} ) |
23:39 | |
considering there is pretty much nothing for linear algebra now, it would be cool to start with something new and cutting edge | 23:40 | ||
23:43
aborazmeh joined
|
|||
hoelzro | anyone else want to have a look at the S26 stuff before I merge? | 23:48 | |
the spectests passed, so I think the time is now | 23:49 | ||
TimToady | PerlJam: I think it's much more likely to have something to do with line 14 in src/core/ListIter.pm | 23:50 | |
lizmat | hoelzro: I'm trying to stay awake until our departure from the hotel in ~2 hours | 23:52 | |
in no shape to really look at that now :-( | |||
hoelzro | lizmat: oh, alright | ||
23:54
Ven left
23:55
xenoterracide left
|
|||
dalek | Heuristic branch merge: pushed 87 commits to roast/S26-WHY by hoelzro | 23:57 |