»ö« 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_oPDFSyT1␤Cannot negate ??YOUR_FACE!! because it is not iffy enough␤at /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_Cd1␤Redeclaration of routine a␤at /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/tmpfile␤Redeclaration of routine a␤at /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/1099u1DYh5␤Redeclaration of routine a␤at /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/d9zAtApT3w␤Virtual call $.a may not be used on partially constructed objects␤at /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/OdG8VURyD6␤Virtual call $.a may not be used on partially constructed objects␤at /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/YHZuNuJCyN␤Missing block␤at /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«dunno␤Cannot 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«dunno␤foo␤»
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_def␤Parse failed␤FAILED 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