»ö« | perl6-projects.org/ | nopaste: paste.lisp.org/new/perl6 | evalbot: perl6: say 3;' | irclog: irc.pugscode.org/ | UTF-8 is our friend!
Set by moritz_ on 27 June 2009.
00:04 kborer_ left, kborer_ joined 00:05 kborer_ is now known as kborer 00:06 kborer left, justatheory left 00:07 justatheory joined 00:08 justatheory_ left, kborer joined 00:14 beggars left
jnthn -> sleep 00:15
00:20 Chillance left 00:44 rewt joined 00:51 justatheory left, justatheory joined, meppl left
pugs_svn r27397 | lwall++ | [STD,CORE,Cursor,etc] 00:58
r27397 | lwall++ | move to an OO model of STASHes and NAMEs
r27397 | lwall++ | remove ->stash indirection
r27397 | lwall++ | canonicalize_name now leaves :: on parent package names
r27397 | lwall++ | recombine notion of symbol table object with stash (assuming object does Hash)
r27397 | lwall++ | immutable type object no longer points to mutable symbol table
r27397 | lwall++ | add debugging symbol for output on symbol tables
r27397 | lwall++ | declarand now remembers pad to export into even if $*CURPAD changes
r27397 | lwall++ | BEGIN/INIT/START/ENTER/FIRST are now statement prefixes (block or statement)
r27397 | lwall++ | various small bugfixes and simplifications
01:05 fridim_ joined 01:20 justatheory left 01:41 payload joined, molaf_x joined 01:58 KyleHa joined, molaf left 01:59 FurnaceBoy left
KyleHa Where would be a good place for a test for rt.perl.org/rt3/Public/Bug/Display.html?id=60408 ? 02:22
I've spent like a half hour trying to figure it out. I'm thinking somewhere in S06, perhaps in a new section devoted to perl5ish declarations. 02:23
TimToady S06-signature, I'd guess 02:27
since implicit @_ is really a (*@_) sig in disguise 02:28
KyleHa OK, thanks.
That narrows it down a bit. 02:29
Oh yeah, positional.t is nice and small. I'll bloat that up.
TimToady bloat away 02:31
02:36 sri_kraih left
pugs_svn r27398 | kyle++ | [t/spec] Test for RT #60408 02:40
02:43 payload left 03:29 frew__ joined
pugs_svn r27399 | lwall++ | [S04] allow certain value-producing blocks as statement prefixes 03:34
03:40 drbean joined
KyleHa rakudo: for (1,2,3) -> $a,$b { say "$a, $b" } 03:43
p6eval rakudo 6a4d66: OUTPUT«1, 2␤StopIteration␤in Main (/tmp/SxrH6mlYwx:2)␤»
KyleHa Is that what's supposed to happen? Run time error?
04:00 KyleHa left 04:03 justatheory joined
skids resigns for the evening also too youbetcha. 04:04
04:06 rewt left 04:21 alester joined 04:25 skids left 04:30 xomas left 05:20 amoc joined 05:45 Pismire joined 05:56 alester left 05:58 azawawi joined
azawawi good morning 05:58
06:01 payload joined 06:05 azawawi left 06:09 joerg__ joined 06:12 PZt joined 06:15 ejs joined 06:23 Pismire left, iblechbot joined 06:25 ejs1 joined 06:27 ejs left 06:28 cotto left 06:29 cotto joined 06:36 ejs2 joined 06:47 ejs1 left 06:48 joerg__ left 06:54 molaf_x left 06:56 ejs2 left 06:58 desertm4x joined 07:04 szabgab left 07:05 nbrown left 07:07 eMaX joined 07:08 meppl joined 07:10 finanalyst joined 07:19 szabgab joined 07:24 tann joined 07:31 azawawi joined
azawawi literal: ping 07:31
@tell literal i started today integrating grok with Perl 6 plugin. grok --index is really useful. The S29 pod parsing is not really my idea. It was masak's (use.perl.org/~masak/journal/38212). 07:33
lambdabot Consider it noted.
azawawi @tell literal it would be great if grok can output its STDOUT to a file directly. That way I will not get a black command line terminal popup when running in win32 non-console wperl.exe . 07:37
lambdabot Consider it noted.
mberends phenny, tell DanielC gitorious.org/parrot-module-lib/main updated 07:46
phenny mberends: I'll pass that on when DanielC is around.
moritz_ good morning 07:51
azawawi moritz_: good morning to u 2 :) 07:52
pugs_svn r27400 | moritz++ | [t] remove some nonsense from autoderef.t. The rest of the file is still questionable. 08:01
r27401 | moritz++ | [t] move nested_hashrefs.t to spec 08:02
r27402 | moritz++ | [t] merge braces_in_rules.t into spec/S05-metasyntax/unknown.t
moritz_ ok, I'm offline again for a while, hope to be back on sunday evening or so 08:05
08:06 azawawi left 08:19 desertm4x left
finanalyst hi 08:26
can anyone tell me whether rakudo programs can be given options as well as arguments, eg -o=10 and if so how do i get the option 08:27
dont think so, but just checking
08:33 frew__ left 08:38 ejs0 joined 08:53 xinming_ joined 08:57 DemoFreak joined 08:58 tann left 08:59 xinming left 09:03 estrabd left 09:05 barney joined 09:07 eMaX left 09:11 dukeleto_ left 09:17 azawawi joined
azawawi hi 09:20
@tell literal the following grok code fails on a couple of synopsis-es, gist.github.com/140511 09:24
lambdabot Consider it noted.
09:30 ejs0 left 09:41 buubot left, buubot joined
jnthn o/ 10:09
azawawi jnthn: hi :) 10:13
10:14 Tim___ joined 10:19 Patterner left
jnthn hi azawawi 10:21
10:24 Tim___ left 10:26 joerg__ joined 10:28 joerg__ is now known as Pismire 10:35 azawawi left 10:45 masak joined
masak greetings gentlemen. 10:45
10:46 iblechbot left
masak re the behaviour of the minmax operator from a few days ago: isn't it desirable to define minmax in such a way that '@a [minmax] @b' yields '(@a [min] @b), (@a [max] @b)'? 10:50
10:51 sri_kraih joined, Pismire left 10:56 icwiener joined
masak phenny: tell KyleHa re StopIteration: no, I don't think that is what's supposed to happen. I for one dislike that behaviour. here's one rakudobug ticket about it: rt.perl.org/rt3/Ticket/Display.html?id=66890 11:01
phenny masak: I'll pass that on when KyleHa is around.
11:03 sparc left 11:04 sparc joined 11:07 scottp joined 11:09 amoc left 11:12 amoc joined
masak reads and likes use.perl.org/~scrottie/journal/39067 11:20
scottp Hey Masak - was just about to write to you on github 11:23
11:23 Tim___ joined
scottp Is there a way/plan/reason to get proto to access the perl6 modules in pugs/ext ? 11:23
masak scottp: haven't thought about that before. no-one much works on the modules in ext/ in the Pugs repo. when some of the modules were revived, they were moved to the perl6-examples repo on github, IIUC. 11:28
but given that loading stuff from ext/ in the Pugs repo is actually what someone wants, I don't see any problems with adding that as a repository type to proto.
that's actually quite timely, since I was planning to OO-ify that part of the proto source code anyway. 11:29
scottp The reason I noticed, is that on the wiki it suggest someone writes File::Spec - but it already exists in pugs.
The question is, do we manage them independently - ie. copy what is useful, or keep what is there? 11:30
masak I don't have a stake in either modus operandi, but the trend lately has been towards the former. (meaning, I don't know of someone who maintains modules in the Pugs repo) 11:34
11:34 payload left, payload1 joined
masak scottp: I'd be (pleasantly) surprised if you could find even one module in that ext/ dir that ran unchanged in Rakudo. 11:38
11:52 payload1 left 11:56 azawawi joined
azawawi hi 11:56
masak o/ 11:58
12:08 azawawi left
jnthn oh noes...the airline I'm meant to be flying to YAPC::EU with maybe is going to has a fail... 12:09
mberends jnthn: if u haz enuf time, i may come and give u a lift :) 12:20
scottp masak: thanks that makes sense - I will port what I need then. 12:22
12:23 iblechbot joined
jnthn mberends: That's quite a detour! ;-) 12:25
mberends the reward of going somewhere is also the journey ;) 12:26
jnthn True. :-)
OK, lunch, then I'll try and get this traits refactor wrapped up. 12:27
12:37 Guest99280 left 12:38 M_o_C joined
masak nice! if jnthn starts hacking on Rakudo after lunch, I'll give some attention to porting Template and MarkupTemplate from Genshi to Hitomi. 12:42
12:44 amoc left
jnthn has just finished nomming a tasty ham salad 12:48
12:49 Pismire joined
masak my lunch doesn't have a succinct name like that, but it had a lot of very good ingredients. :) 12:49
mberends jnthn: could you please comment on the sanity of the following plan to give modules Unicode names, :ver and :auth capability: gitorious.org/parrot-module-lib/mai...ine-66.pir 12:51
jnthn mberends: Sure, moment. :-) 12:52
Just got one thing to sort out quickly before I dig into Rakudo. :-)
12:59 Tim___ left 13:01 Whiteknight joined 13:02 skids joined
jnthn ok, back 13:03
.oO( even compiler writers have to do the laundry )
skids
.oO(damn, and I had just managed to conveniently forget the laundry)
13:05
masak time to do some serious coding! 13:06
jnthn mberends: # Translate the :ver and :auth values passed (or absent) to regexes.
Are regexes the best way?
mberends: I worry a little about e.g. versions like 1.10.5 vs 1.2.3 13:07
mberends some of the possibilities in S11 look very similar to regexes already
jnthn I guess the second should come before the first, right? So for version at least we'd want to do numeric processing?
mberends yes, that's a ranking matter 13:08
jnthn OK
It's not a serious concern, jut though worth mentioning.
Overall it looks like you're probably hooking it in the right place.
Of course, the details of the module database I guess are kind of interesting.
Will there be separate per-user and system wide DBs, for example? 13:09
I'd suspect there would need to be to support local module installation.
mberends that's what some people are suggesting, and maybe enlisting PERL6LIB at that level
no problem extending the concept to multiple DBs 13:10
masak flexibility is worthwhile, but please keep it simple, with an eye to extending things in various directions later. 13:11
just seeing a proof-of-concept of the discussed ideas would help make everything much more concrete.
jnthn Sure, simple and working beats complex and not working. :-)
masak that, too. :)
mberends the initial implementation will be the smallest one that works minimally 13:12
masak but even a working complex system will suffer from parts unexpectedly not being needed after all.
mberends++
mberends Keep It Simple, Stupid (KISS)
masak striving for perfection by removing cruft. 13:14
look at git -- people love it because it's built on a few basic concepts, and runs with them.
scottp Is perl6-examples a good place to port the cookbook examples from bugs to work with rakudo? 13:15
masak s/bugs/Pugs/ ? :)
if so, yes.
scottp yes pugs - ta 13:16
masak scottp: pmichaud liberally gives out commit access to perl6-examples.
scottp Thanks, I have it already
masak excellent. 13:17
jnthn ooh, no wonder I broke so many roles tests...I broke parsing of parametric roles. 13:19
jnthn is relieved it may be an easier fix for those than he had feared
masak ugh, many Genshi tests need porting... 13:20
I need a reward system if I'm to get through this. :) 13:21
13:23 amoc joined
masak pulls out the chocolate 13:26
jnthn looks envious
masak not much left, though. I may need to go get some more soon.
jnthn postcircunfix # not my most cunning typo... 13:28
13:36 riffraff joined 13:42 Pismire left
masak rakudo: class A {}; constant B = A; my B $c = A.new; my A $d = B.new 13:42
p6eval rakudo 6a4d66: ( no output )
masak rakudo++
jnthn rakudo: class A {}; constant B = A; my B $c = A.new; my A $d = "fail" 13:43
p6eval rakudo 6a4d66: OUTPUT«Assignment type check failed; expected A, but got Str␤in Main (/tmp/MQomqxxweP:2)␤»
jnthn \o/
13:44 justatheory_ joined
masak rakudo: constant A = Str; my A $d = 'how about this?' 13:44
p6eval rakudo 6a4d66: ( no output )
masak yay.
13:45 Minthe joined
Minthe Hello, but may I ask for a question about building pugs? 13:47
13:48 meppl left
masak Minthe: sure, go ahead. 13:48
(and next time, just ask)
13:50 ruoso joined 13:51 mvuets joined
Minthe make does not seem to parse Makefile corrctly 13:52
buu woah
Notices
ruoso hmm... it seems that the Notre Dame de Paris has a role in STD now... 13:53
lambdabot ruoso: You have 1 new message. '/msg lambdabot @messages' to read it.
masak ruoso: how so? 13:54
ruoso :)
$QUASIMODO++
jnthn :D
masak :)
yeah, look at that. $QUASIMODO. 13:55
jnthn Wheee...finally fixed trait_mod:<does>.
bwaha
That's awesome.
TimToady++
Minthe #So how can I building? My pugs is still r24512, because I cannot build new revision
ruoso I'm not sure what it means, but it's certainly cool 13:56
masak ruoso: it's unset in quasi quotes, it seems.
ruoso I think it's quasi quotes mode 13:57
masak Minthe: for what it's worth, I get the same error here when I try to make manually.
jnthn Pugs is not really maintained these days. Folks tend to be using other Perl 6 implementations more.
13:58 wknight8111 joined, wknight8111 left
ruoso happy that TimToady promoted the '::' post-sigil to STD 13:58
13:58 wknight8111 joined
masak ruoso: something like that. STD.pm:41 describes it with "don't carp about quasi variables" 13:58
ruoso no more globs :)
13:58 Whiteknight left
jnthn Minthe: If you want to play with Perl 6 rather than play with Pugs specifically, you may be better trying another compiler instead. 13:58
(Rakudo is best mix of features and active development.) 13:59
masak Rakudo rocks. 14:00
14:00 justatheory left
scottp Why would this not work: class Foo { submethod DESTROY{ say 'bang'; }} my $foo = Foo.new; - I don't get the say as the object is destroyed. 14:01
mvuets A lot of viagra has come today via pugs' trac tickets: dev.pugscode.org/timeline
jnthn Maybe that'll raise Pugs development again. 14:02
scottp thaha
mvuets (= 14:03
jnthn scottp: I believe DESTROY is unimplemented at the moment.
scottp jnthn: aha :-) thanks
jnthn scottp: Also, you can't rely on it being fired at any particular point in time, though it should get fired at some point before shutdown.
(Once we implement it, that is.) 14:04
14:04 amoc left
mvuets Good joke of TimToady++ about Quasimodo, btw (: 14:04
14:04 amoc joined
jnthn make spectest && make cuppa-tea 14:04
14:05 eMaX joined
ruoso jnthn, are you really going to wait for all the spectest before making the tea? :) 14:06
masak mvuets: not sure if it's a joke. maybe there's an actual humpback bell ringer involved somewhere in STD.pm... :P
jnthn ruoso: fork that...
:-)
ruoso :P 14:07
jnthn ruoso: Actually I make fruit tea where you gotta leave the bag in for a few minutes to infuse anyway. So now the race is one. Do I get my spectest results first, or my tea?
mvuets masak, who knows... (:
jnthn s/one/on/
masak spectests clock in on 24 minutes here nowadays. 14:08
jnthn yeah
long time.
ruoso heh... 14:09
masak but shorter than a month ago.
Rakudo is getting faster.
jnthn Aye. 14:10
ruoso and mildew is getting slower ;)
jnthn Well, maybe a bit early to worry about performance just yet.
imo
Rakudo didn't worry about it for quite a while. :-)
14:12 amoc left 14:13 amoc joined
Minthe OK, now I removed old cabal and began reinstallation... 14:16
s/cabal/all files of Pugs/
14:16 amoc left
masak Minthe: do you have any specific plans with Pugs? 14:16
14:18 last joined
Minthe No, but one day I failed to compile "perl6.c" (aka pbc-to-exe perl6.pbc). 14:18
14:18 nihiliad joined, scottp left
jnthn Minthe: Ah. Was that recently? 14:18
Minthe Pugs is stable binary perl6 14:19
Ah... about one month ago I think
jnthn OK. I think in that timescale the pbc-to-exe has been improved.
14:19 amoc joined
jnthn Certainly it works a load better under Win32. 14:19
Minthe OK 14:20
pmichaud Good morning, #perl6 14:40
jnthn morning, pmichaud 14:41
masak y0, pmichaud 14:43
so, when I pass parameters, a => "b" is a named param_, whereas "a" => "b" is a positional Pair? 14:44
pmichaud yes. 14:45
masak can I have a named param called '@foo'? 14:46
14:46 eMaX left
pmichaud sure: sub bar(:@foo) { ... } 14:46
rakudo: sub bar(:@foo) { say @foo.elems; }; bar(foo => [1,2,3])
p6eval rakudo 6a4d66: OUTPUT«3␤» 14:47
masak wouldn't that one be named 'foo'? right.
I can't send it in as '@foo'.
pmichaud right.
masak (I'm designing the Hitomi API right now, that's why I'm asking.)
pmichaud oh, you meant a named argument called '@foo'? I think that named arguments are limited to valid identifiers
masak yes, I think so too.
but it's really no problem, since I can check @_ for Pairs. :) 14:48
pmichaud that sounds like another Perl 6 quote: "I want to do Y, but it's really no problem, since I can do X... " :-) 14:49
masak aye. and the old tradeoff between user convenience and programmer convenience is in there too. 14:50
M_o_C I suppose it's the "but it's really no problem" part that distinguishes Perl 6 from most other languages? ;) 14:52
masak you'd be surprised. :) 14:53
after one year of programming Perl 6 every day, I can attest that it's really no problem.
well, um, when things work. :P 14:54
M_o_C hehe :D
masak but they do nowadays, surprisingly often. 14:55
gone are the days when I would try a new feature with trepidation, thinking "no-one has ever entered this program before. Rakudo _will_ break."
jnthn tries to get a PAST tree that generates the trait application for vars that he wants
masak theses days it's more like "wow! I tried really hard to crash it, and it only went down 1 time out of 25" 14:56
jnthn ...I know exactly how I want the PIR to look. :-/
ah shit
pmichaud: ping 14:57
pmichaud pmichaud: pong
jnthn hi
pmichaud jnthn: pong
jnthn ol
s/o/lo
I'm wanting to generate PIR like this
$P42 = <the code that inits a Perl 6 scalar>
14:57 meppl joined
jnthn $P43 = get_hll_global 'Int' 14:58
'trait_mod:of'($P42, $P43)
.lex '$x', $P42
That is, the trait mod call doesn't get taken as a result.
If I push into the viviself though, it emits things like
$P44 = 'trait_mod:of'($P42, $P43)
.lex $x, $P44
Which is of course wrong. 14:59
How can I do this cleanly?
14:59 frew_ joined
pmichaud PAST::Op(:name('trait_mod:of'), PAST::Var( :scope('lexical'), :name('$x') ), PAST::Var( :scope('package'), :name('Int') ) ) 14:59
jnthn I can't do that 15:00
Because the viviself gets emitted before the .lex '$x', $P44
(I've tried it already)
pmichaud I don't understand (more)
aim for
$P42 = <code for Perl 6 scalar> 15:01
.lex '$x', $P42
$P43 = get_hll_global 'Int'
'trait_mod:of'($P42, $P43)
15:01 alester joined
pmichaud ....or are you needing the result of the past tree to be the PAST::Var node? 15:01
jnthn I can get away with a PAST::Op I think.
I have a feeling a PAST::Stmts is going to upset things... 15:02
But can try it.
pmichaud I'm really asking if you're needing the result of the tree to be the PMC for $x
jnthn Oh, yes.
That's why it's tricky.
pmichaud okay, just a sec
jnthn (We need it to be that so things like my Int $x = my Int $y = 42; 15:03
will work.
pmichaud you can't have trait_mod:of return its first param?
(there are probably good reasons for not returning the first param, yes) 15:04
jnthn I could hack it to for now but it's not going to fly when a user writes their own and it's wrong. 15:05
pmichaud okay, that's a good reason.
jnthn I'd rather get it right rather than postpone the problem. :-)
pmichaud let me check PAST a second
jnthn But yes, before I did have a wonderful hack when we were cheating less on traits that did exactly the "and return it" trick. :-)
erm, cheating *more* I mean. 15:06
pmichaud: I think I just found a "solution"
(use a named register and spit it out at the end) 15:07
pmichaud yeah, that's always an option but it's a bit hackish
15:10 hudnix_ joined
masak some of you might be interested in reading www.erlang-factory.com/upload/prese...gether.pdf -- it has nice points about package systems and community. 15:13
pmichaud I don't have a non-hackish way to do it at the moment.
jnthn pmichaud: OK, I'll go with working and hackish for now.
pmichaud I can think of a couple of ways to add the ability to PCT, but need a few hours to think about it.
jnthn pmichaud: In theory this is only temporary code anyway.
pmichaud: That is, after the lexpad changes we want to have in Parrot, traits really can be applied only once.
pmichaud oooh, yes. 15:14
jnthn I think I'm getting there with this patch now.
Some remaining issues to hunt down.
15:15 DemoFreak left 15:17 amoc left, synth left 15:18 amoc joined
jnthn guts.pir has gone on a bit of a diet too. :-) 15:18
15:20 riffraff left
pmichaud rakudo: take 5 15:22
p6eval rakudo 6a4d66: OUTPUT«take without gather␤»
pmichaud masak++ 15:23
masak rakudo: take 5; say 'also note, still alive'
p6eval rakudo 6a4d66: OUTPUT«take without gather␤also note, still alive␤»
pmichaud rakudo: return 5; say 'also note, still alive?'
p6eval rakudo 6a4d66: OUTPUT«Can't return outside a routine␤in Main (/tmp/5KnjCqeR5y:2)␤»
pmichaud interesting. 15:24
masak well, I changed that in the same commit.
forgiveness, permission.
I do believe the spec is silent on that point, however. 15:26
"In the end, we want to infect your brain, not your hard drive" spj++ 15:32
jnthn down to six test files with issues 15:43
15:50 callatrava10 joined
masak rakudo: :a() 15:51
p6eval rakudo 6a4d66: OUTPUT«Null PMC access in find_method()␤in Main (/tmp/9wQurbqQbc:2)␤»
masak submits rakudobug
hahaa, my smallest one ever! \o/
jnthn rakudo: :a
p6eval rakudo 6a4d66: ( no output )
jnthn rakudo: :a(1)
p6eval rakudo 6a4d66: ( no output )
jnthn rakudo: :a( )
p6eval rakudo 6a4d66: OUTPUT«Null PMC access in find_method()␤in Main (/tmp/iLy43vsr5a:2)␤»
masak rakudo: :a[] # also
p6eval rakudo 6a4d66: OUTPUT«Null PMC access in find_method()␤in Main (/tmp/3uFogRzcrW:2)␤» 15:52
jnthn nice catch
15:52 callatrava10 left
masak I can't really take credit, it happens when I try to use Rakudo for real-world stuff :P 15:52
TimToady rakudo: :() 15:53
p6eval rakudo 6a4d66: ( no output )
TimToady rakudo: :$a
p6eval rakudo 6a4d66: OUTPUT«Symbol '$a' not predeclared in <anonymous>␤in Main (src/gen_setting.pm:3279)␤»
TimToady rakudo: :$_
p6eval rakudo 6a4d66: ( no output ) 15:54
15:56 payload joined
TimToady std: use Test; ok 16:04
p6eval std 27402: OUTPUT«ok 00:02 35m␤»
16:07 last left 16:11 frew_ left 16:19 barney left
jnthn Gah. The trick for var trait application causes explosiveness on our variables. :-( 16:26
huh... :-| 16:27
pmichaud what is :a[] supposed to give?
is it the same as 'a'=>[] ?
(S02 says yes)
and is :a() the same as 'a' => () ? 16:28
masak I say yes to both of these too.
pmichaud (or perhaps without quotes in each case)
masak yes, perhaps without quotes. 16:29
but that only matters in arg lists, right?
pmichaud afaik
masak still is slightly confused by that magic differentiation in arg lists
but I guess we have to have some way to distinguish pairs from nameds. 16:30
pmichaud ick, :a[] treats the [] as postcircumfix, but they act more like circumfix. 16:34
jnthn gah
TimToady I don't know what you mean by "treats" 16:35
jnthn t\spec\S12-attributes\mutators.rakudo is so not going to get away with the stuff it does
pmichaud parses
jnthn with this refactor.
(uses traits and Proxy that we don't implement yet.
16:35 KyleHa joined
pmichaud :a[] parses the [] as postcircumfix, but in terms of what they do, they act more like circumfix. 16:35
TimToady yes, but why would this be a problem? 16:36
KyleHa I wrote tests for ':a()' and ':a[]', but I'm not sure they're right.
phenny KyleHa: 11:01Z <masak> tell KyleHa re StopIteration: no, I don't think that is what's supposed to happen. I for one dislike that behaviour. here's one rakudobug ticket about it: rt.perl.org/rt3/Ticket/Display.html?id=66890
pmichaud the .ast for [] and .[] look very different.
KyleHa Should those parse correctly? Should they execute? 16:37
pmichaud well, perhaps not _very_ different, but different enough.
same for () and .()
KyleHa I have them both as eval_lives_ok and lives_ok.
16:38 payload left
jnthn can't believe the text of one of his remaining test failures is: constant yak = 'shaving'; 16:38
pmichaud in summary, from $<postcircumfix>.ast I have to re-evaluate its contents so that it acts like a circumfix 16:39
TimToady pmichaud: perhaps, after verifying that we have an opener of some sort, we just parse a term there to pick up circumfix: and quote:
pmichaud that would be much better 16:40
masak does anyone have any experience with Perl6::Pod on CPAN?
pmichaud and yes, a similar issue applies with .{} and {} :-)
TimToady or we go as far as to reclassify <>-style quotes as circumfixes, and just call <circumfix>, maybe 16:41
pmichaud either of those would work for me
I was originally thinking we should just call <circumfix>, yes.
KyleHa Are we trying to figure out what ":a()" and ":a[]" should do?
jnthn rakudo: package ConstantTest { constant yak = 'shaving';
p6eval rakudo 6a4d66: OUTPUT«Unable to parse block; couldn't find final '}' at line 2, near ""␤in Main (src/gen_setting.pm:3279)␤» 16:42
jnthn damm
pmichaud (I don't think Rakudo handles the quoted forms)
jnthn rakudo: package ConstantTest { constant yak = 'shaving'; }; say ConstantTest::yak
p6eval rakudo 6a4d66: OUTPUT«Null PMC access in isa()␤in Main (/tmp/byb1TFpq8b:2)␤»
jnthn oh, so that test doesn't even pass on current Rakudo.
pmichaud KyleHa: we know what they should do semantically, we're trying to figure out how to get the compiler to dtrt
jnthn *sigh*
masak jnthn: nope. that's a reported bug.
KyleHa pmichaud: OK. Should they parse without dying? Should they execute without dying?
jnthn woulda been good to fudge it... 16:43
pmichaud KyleHa: I think they should parse and execute without dying. Certainly :a[] should
I'm pretty sure that :a() should be the same as a => ()
KyleHa Thanks! 16:44
alester seen mauke
pmichaud interesting question as to whether quotes should part of circumfix :-) 16:47
KyleHa rakudo: a => ()
p6eval rakudo 6a4d66: ( no output )
pmichaud rakudo: say (a => ()).perl
p6eval rakudo 6a4d66: OUTPUT«"a" => undef␤» 16:48
16:48 justatheory_ left
pmichaud rakudo: say (a => []).perl 16:48
p6eval rakudo 6a4d66: OUTPUT«"a" => []␤»
pmichaud rakudo: say (a => {}).perl
p6eval rakudo 6a4d66: OUTPUT«"a" => {}␤»
pmichaud rakudo: say ().PARROT
p6eval rakudo 6a4d66: OUTPUT«Nil␤»
pmichaud Maybe today I'll clean up as much of the Nil/capture stuff as I can without needing details of capture refactors 16:49
16:51 SmokeMachine left
pugs_svn r27403 | kyle++ | [t/spec] Test for RT #67218 with help from pmichaud++ 16:51
jnthn pmichaud: I'm really close to being able to land this huge patch.
TimToady pmichaud: note that 'is foo[]' is also affected, since that :foo[] in disguise 16:52
*that's
jnthn ...and don't change any traits stuff or it WILL conflict. :-P
And last time I had to resolve conflicts in git I mostly just ended up swearing for an hour at it. 16:53
masak then you might be going about it wrong.
resolving conflicts in many other SCM systems makes me swear nowadays, because I've tried the goodness that is git. 16:54
jnthn If I get conflicts, I'll ask you for help. :-)
masak :) 16:55
TimToady I feel conflicted
skids Git's problem is all terminology/documentation. Obviously it can do a lot of stuff, but it's not actually easy to ask "how do I do this" and get an answer.
masak jnthn: the one tip I can give right now is that if you've been working on a local (un-pushed) branch all this time, you might gain a lot from rebasing before merging. 16:56
skids: I've had a lot of good answers from #git.
skids Well, kudos to them, but it there should probably be routes to answers that don't involve actual people. 16:57
KyleHa I also like routes to answers that involve MythBusters. 16:58
masak :)
skids not a fan since they hosed up the "washboard road" experiment badly. 16:59
masak skids: the docs/tutorials could definitely be better for git.
pmichaud I haven't looked at the traits refactor yet ("is foo[]") -- doing that now. 17:00
skids The various quickstart/"dummies guides" are great, but only go so far, and people quickly start using things they don't cover.
TimToady with s/post// we do lose <a b c> as a type contraint, oh well :)
jnthn We ever had that as a type constraint?
pmichaud: OK. What I'm going to commit follows STD more. 17:01
TimToady syntactically, any "value", and quotes are values, so you should be glad <> are going to be circumfixes now
especially «»
which are not very value-ish
masak ooh! 17:02
rakudo: :a«»
17:02 SmokeMachine joined
p6eval rakudo 6a4d66: ( no output ) 17:02
masak ah, that works.
pmichaud rakudo: say (:a«»).perl
p6eval rakudo 6a4d66: OUTPUT«"a" => []␤» 17:03
masak hm, shouldn't that be "a" => ""?
pmichaud no.
<> is a list.
«» is also a list
masak oh, right.
pmichaud rakudo: say «».perl; 17:04
masak so the simplest way to make a key an empty string is :a('')?
p6eval rakudo 6a4d66: OUTPUT«[]␤»
pmichaud masak: afaik, yes.
shorter is a=>''
masak ah, nice. 17:05
rakudo: my $foobar = 'foo bar'; say «$foobar».perl 17:06
p6eval rakudo 6a4d66: OUTPUT«"foo bar"␤»
pmichaud rakudo still fails on that
17:06 icwiener_ joined
masak looks into what it would take to fix that 17:06
pmichaud it's quite tricky, actually.
masak :/ 17:07
pmichaud iirc, even STD.pm currently punts on it
masak does STD.pm have to concern itself with that feature?
it only parses stuff...
jnthn std: say «$foobar».perl
p6eval std 27403: OUTPUT«Potential difficulties:␤ Variable $foobar is not predeclared at /tmp/Di8bdtYIg8 line 1:␤------> say «$foobar».perl␤ok 00:04 36m␤»
pmichaud masak: it needs to produce a reasonable parse tree, yes. 17:08
jnthn It seems to know it's a variable.
pmichaud std: say «'$foobar'».perl
p6eval std 27403: OUTPUT«Potential difficulties:␤ Variable $foobar is not predeclared at /tmp/Odb8a2mwX0 line 1:␤------> say «'$foobar'».perl␤ok 00:04 36m␤»
pmichaud that's *not* a variable, though. 17:09
jnthn oh
yeah, I see the quotes now.
masak and I'm starting to see the tricky part now... :/ 17:10
pmichaud then we have things like
«hello $world"xyz abc" » 17:11
masak aye.
pmichaud and 17:12
«hello "$world"»
masak
.oO( that could be read as a deeply cynical statement towards capitalism... )
17:13
pmichaud s/cynical/promotional/ :)
skids std: my sub f () { }; f(:a<d>:b<g>); 17:14
p6eval std 27403: OUTPUT«ok 00:02 37m␤»
skids rakudo: my sub f () { }; f(:a<d>:b<g>);
p6eval rakudo 6a4d66: OUTPUT«Statement not terminated properly at line 2, near "(:a<d>:b<g"␤in Main (src/gen_setting.pm:3279)␤»
17:16 omega_ joined, omega left
skids guessing that's a "wait for LTM" thing 17:16
pmichaud no, not so much.
17:16 mvuets left
pmichaud it's more a question of "exactly what happens here...?" 17:16
jnthn What does that mean?
skids Adverbs do not need spaces or commas in between.
jnthn std: my sub f () { }; f(:a<d> :b<g>); # this the same?
p6eval std 27403: OUTPUT«ok 00:02 37m␤» 17:17
pmichaud those aren't adverbs.
17:17 zulon joined
pmichaud they're colonpairs 17:17
zulon hello!
I've just one question about rakudo: are $0, $1, $2 etc from regexps implemented?
jnthn Believe so.
pmichaud yes, fsvo "implemented"
zulon I get "get_pmc_keyed() not implemented in class 'Perl6Str'" when trying to use them
jnthn rakudo: "aaa" ~~ /(a)/; say $0 17:18
p6eval rakudo 6a4d66: OUTPUT«a␤»
zulon hm
subst( /[<-[\(\)\,]>]+/, "'$1'", :g )
here's the beast
pmichaud there's no $1 there
masak zulon: you need a P{
um, a {}
pmichaud also, it needs to be a closure if you want ... what masak said 17:19
zulon ah, thanks
masak {"'$1'"}
zulon: now think about it, and then explain to me why. :)
zulon I still get the error
pmichaud $0
not $1
masak oh, right.
zulon corrected too
masak that, too.
zulon masak: to do some "laziness", right?
pmichaud oh, wait
there's no capture there
masak zulon: yes, exactly.
pmichaud so there's nothing to substitute
zulon I've no better word to explain it :/ 17:20
Tene zulon: you need ()s for $0
zulon damn
masak zulon: 'closure' is the correct word, I believe.
zulon how could I forgot the () -_-
well, that still doesn't work
masak still, it shouldn't break Rakudo.
skids OK so what am I missing: S02 "When used as named arguments in an argument list, you may put comma between" ... "However, this comma is allowed only when the first pair occurs where a term is expected" 17:21
zulon I'm actually translating an old Perl 5 code
masak zulon: if you put () around the whole regex, you might as well omit them and do {"'$/'"}
17:21 stDavid joined
zulon hm 17:21
ok
pmichaud rakudo: "hello,world".subst(/[<-[(),]>]+/, {"'$/'"}, :g).say 17:22
p6eval rakudo 6a4d66: OUTPUT«'hello','world'␤»
zulon ah, this works this time
pmichaud rakudo: "hello,world".subst(/([<-[(),]>]+)/, {"'$0'"}, :g).say
17:22 icwiener left
p6eval rakudo 6a4d66: OUTPUT«'hello','world'␤» 17:22
zulon but doesn't give the expected result
pmichaud rakudo: "hello,world".subst(/(<-[(),]>+)/, {"'$0'"}, :g).say 17:23
p6eval rakudo 6a4d66: OUTPUT«'hello','world'␤»
17:23 stDavid left
masak rakudo: say "foo".subst(/o/, {"'$0'"}, :g) 17:23
p6eval rakudo 6a4d66: OUTPUT«Use of uninitialized value␤Use of uninitialized value␤f''''␤»
zulon rakudo: "(foo,bar,(baz))".subst( /<-[(),]>+/, { "'$/'" }, :g )
p6eval rakudo 6a4d66: ( no output )
zulon huh
pmichaud (no .say) 17:24
zulon rakudo: "(foo,bar,(baz))".subst( /<-[(),]>+/, { "'$/'" }, :g ).say
p6eval rakudo 6a4d66: OUTPUT«('foo','bar',('baz'))␤»
zulon damnit
locally it doesn't work
17:24 kborer left
masak zulon: old Rakudo? 17:24
zulon I pulled the git this morning
masak zulon: running with -e?
zulon (morning in France, so I don't know which time it is in the US) 17:25
in a file
masak zulon: could you paste the file?
zulon paste.pocoo.org/show/126656/
masak thank you.
zulon that's what I was doing :)
pmichaud skids: I'm not sure exactly what you're missing, if anything. 17:26
jnthn is down to what he hopes might be his final pre-commit test run
masak zulon: not sure what output you're expecting, but things seem to work here. no errors.
zulon hm
masak I can paste my output if you want.
zulon I'm expecting ('foo','bar',('baz'))
I get ('(foo,bar,(baz))','(foo,bar,(baz))',('(foo,bar,(baz))'))
pugs_svn r27404 | kyle++ | [t] Further mutated t/syntax/hyper_latin1.t
skids pmichaud: by "there not adverbs" did you mean to say I should not expect the above to work? 17:27
masak zulon: yes, me too.
pmichaud skids: no
zulon ok
masak zulon: what do you expect to get?
zulon I'm expecting ('foo','bar',('baz'))
skids Then I'm not missing anything :-)
pmichaud skids: just that we aren't entirely sure what lists of colonpairs produce
zulon I think this is because $/ gets the whole $_
instead of the mere match 17:28
(the matching part, I mean)
(sorry for bad English)
masak zulon: your English is fine.
pmichaud zulon: no, each substitution has $/ set only to the portion that matched
masak zulon: I'm starting to see what you mean.
zulon hm 17:29
masak pmichaud: the output of zulon's program seems to counterindicate that.
17:29 dukeleto joined
pmichaud agreed -- one moment. 17:29
masak pmichaud: could it be some strange interaction between $_ and $/ ?
rakudo: $_ = "(foo,bar,(baz))"; .=subst( /<-[(),]>+/, { "'$/'" }, :g ); .say
p6eval rakudo 6a4d66: OUTPUT«Use of uninitialized value␤Use of uninitialized value␤Use of uninitialized value␤('','',(''))␤» 17:30
masak that can't be right.
pmichaud I suspect the .=subst
masak me too.
masak submits rakudobug
zulon even with another var ($x eg) this still gives the same result
pmichaud looks like a .= bug 17:31
zulon hm you're right, with $x = $x.subst this works fine 17:32
KyleHa I hope someone else writes a test for that one. it scares me.
masak zulon: there's your workaround, then. :) 17:33
zulon yes, thanks
masak KyleHa: I think it can be minimized somewhat.
jnthn There's some ticket about .= IIRC
masak now there are two. 17:34
pmichaud rakudo my $x = 'abcdef'; my $y = x.subst(/<[be]>/, {"x$/x"}, :g); $y.say
rakudo: my $x = 'abcdef'; my $y = x.subst(/<[be]>/, {"x$/x"}, :g); $y.say
p6eval rakudo 6a4d66: OUTPUT«Can't use $ as non-variable in interpolated string at line 2, near "$/x\"}, :g)"␤in Main (src/gen_setting.pm:3279)␤»
pmichaud rakudo: my $x = 'abcdef'; my $y = x.subst(/<[be]>/, {"($/)"}, :g); $y.say
p6eval rakudo 6a4d66: OUTPUT«Could not find non-existent sub x␤» 17:35
pmichaud rakudo: my $x = 'abcdef'; my $y = $x.subst(/<[be]>/, {"($/)"}, :g); $y.say
p6eval rakudo 6a4d66: OUTPUT«a(b)cd(e)f␤»
pmichaud rakudo: my $x = 'abcdef'; my $y = $x.subst(/<[be]>/, {"($/)"}, :g); $x.=subst(/<[be]>/, {"($/)"}, :g); $y.say; $x.say;
p6eval rakudo 6a4d66: OUTPUT«a(b)cd(e)f␤a(e)cd(e)f␤»
pmichaud hmmm.
weird. 17:36
17:38 skids_ left 17:39 skids_ joined, skids left, KyleHa left, zulon left, skids joined
pmichaud skids: the tricky part to getting foo(:a<d>:b<g>) to work is getting it to recognize foo(1, :a<d>:b<g>) as being the same as foo(1, :a<d>, :b<g>) and not foo(1, (:a<d>, :b<g>)) 17:44
skids Huh. 17:45
pmichaud when parsing the argument list, :a<d>:b<g> comes back as a single term.
Tene colonpairs are always a list passed as :flat? 17:47
pmichaud no.
note that foo(1, (:a<d>:b<g>)) would be two positionals.
skids OK, so did you mean that interior () above just conceptually, or in the full "capture" meaning of ()?
I mean in the first above not the second. 17:48
pmichaud it's just a matter of handling it internally in the compiler
we have to have something in the ast that indicates that :a<d>:b<g> is different from (:a<d>:b<g>)
(keeping in mind that Rakudo doesn't really grok the "capture" sense of parens, because we aren't entirely sure what that is yet.) 17:49
skids Senses the dark "spec"tre of unresolved capture details hovering nearby. Shivers. 17:51
pmichaud regardless, in a PIR sense a colonpair would not be a list passed as :flat -- it would have to be passed as :named:flat
because the colonpairs represent named arguments. 17:52
17:55 masak left
pmichaud TimToady: a thought --- I'm wondering if our notion of "capture" is still a bit limited by thinking of it strictly in terms of a list and hash (more) 17:57
TimToady I'm trying to think of the name of the type that is more general than Capture :)
(1,@a,:b).elems == 3
pmichaud TimToady: perhaps it really needs to be able to handle the case where there are multiple instances of same-named arguments (more)
and also to be able to keep track of the ordering of positionals and named arguments
(when interleaved) 17:58
TimToady yes, I've had various names for the syntactic list type
in Perl 4 Camel it was called LIST
but that's confusing
I've been hashing over names with Gloria
pmichaud (heh, "hashing" -- good pun) 17:59
TimToady linguistically, it's a Series, but that's a word that doesn't have a good plural
and most other terms are badly overloaded.
pmichaud Maybe Seq would be better used here?
instead of its current meaning?
TimToady yes, that's one of my options
pmichaud okay, you're already way ahead of me on this, so good. :-)
TimToady and basically a Seq mutates into a Capture when used as an arglist
it's one of the 3 big design issues I've been working on :) 18:00
pmichaud do we need the separate Capture type, though?
TimToady well, when the compiler notices an arglist, it wants to pull out nameds at compile time
pmichaud sure, but can't it do that with a Seq?
TimToady so that type has some name, at least internally
pmichaud (or whatever we call it?)
let's say Series for now, just to avoid confusion :-) 18:01
TimToady we could finesse it, yes, but then it wouldn't be a Seq anymore :)
I'm not terribly excited about Series though
pmichaud okay
TimToady I've called them variously Group, OO, XX, SX...
even though about renaming Object as O at one point, but decided that would be too confusing with 0 18:02
pmichaud for whatever-it-is, can we say that internally it maintains the sequence of positional and named parts, but its positional and associative interfaces "logically collapse" it to look like an Array or Hash?
TimToady though O would be a great name for "undef" :)
pmichaud this might also help out with some of the things we saw in Match objects -- e.g. with .caps and .chunks 18:04
TimToady yeah, except we've still rather overloaded the meaning of "list context" there
does it, or does it not, include the nameds?
pmichaud I would think "not" 18:05
TimToady that's coercion to capture
coercion to flat list might do the other thing
pmichaud right.
I see the difference now.
TimToady but it doesn't quite fly that way either
but yes, fundamentally there's a raw syntactic list floating around that represents a sequence of objects 18:06
and the meaning of that is more contextual even than captures
and that's what parens create
pmichaud (speculation) ... and there are two forms of list context for that raw syntactic list 18:07
one that gets all of the elements
and one that gets only the "positionals"
one last thought for now, then I have to run for a bit 18:08
18:08 daemon joined
pmichaud I wonder if a => 1 and 'a' => 1 should produce objects of different types. 18:08
i.e., the second one is a Pair, but the first is something that can promote to a Pair
(in certain contexts)
Perhaps the first is actually a ColonPair 18:09
TimToady at least the distinction is maintained until the Series is resolved
into capture or not
maybe they're Raw and Cooked :)
sunny-side up or scrambled 18:10
pmichaud nude or clothed
TimToady maybe you'd better go on your errand :)
pmichaud plain or peanut :-)
TimToady argh, I actually thought of that one yesterday 18:11
pmichaud okay, now I'm frightened. :-)
so, better errand.
thanks.
18:17 Pismire joined 18:21 arnsholt left 18:43 jan_ joined 18:45 alester left
skids en.wikipedia.org/wiki/Loom <-- good place to look for names for "Series" 18:48
(if not "loom" itself, as the acronym potentials there...)
TimToady Obviously we should name tham Jacquards then :) 18:54
18:55 amoc left
skids What, not Arguiles? 18:57
18:58 joerg__ joined
pugs_svn r27405 | lwall++ | [STD] parse colonpairs using circumfix instead of postcircumfix 19:05
r27405 | lwall++ | [STD] include CHECK as statement prefix
19:11 Pismire left 19:14 joerg__ is now known as Pismire, tann joined
mikehh more tests passing (4/5 real fails) t/spec/S04-declarations/constant.rakudo exits after 7 out of 20 with Null PMC access in type() 19:31
19:33 wknight8111 left 19:37 justatheory joined 19:40 PacoLinux left 19:42 finanalyst left 19:43 justatheory_ joined, justatheory left 19:44 PacoLinux joined, justatheory_ left, pmurias joined
pmurias ruoso, skids: hi 19:44
19:45 justatheory joined 19:49 nihiliad left 20:06 pmurias_ joined, pmurias left 20:07 pmurias_ is now known as pmurias, SmokeMachine left 20:12 M_o_C left 20:14 SmokeMachine joined
pmurias ruoso: what do you think of adding vtable entries to the RI for the most common methods 20:18
?
20:22 FurnaceBoy joined 20:24 frew_ joined
skids pmurias: hi 20:26
pmurias hi 20:28
pugs_svn r27406 | pmurias++ | [re-smop] yeast should be refered to as yeast not as LOST 20:32
20:51 frew_ left, justatheory left 21:02 justatheory joined, mberends left 21:08 whoppix joined 21:10 peng__ joined 21:12 pmurias left, peng__ is now known as doroboy 21:16 tann_ joined, tann left, Psyche^ joined, Psyche^ is now known as Patterner 21:22 Jedai left, tann_ left 21:23 doroboy left 21:33 kst left 21:43 justatheory_ joined, kst joined 21:48 meppl left
ruoso @tell pmurias once you check it's a known RI you can do whatever you want... but then you could simply call a function instead... I don't think adding more things to the public RI interface would be a good idea 21:59
lambdabot Consider it noted.
ruoso @tell pmurias of course you could have a special kind of RI that would delegate to an internal vtable... 22:00
lambdabot Consider it noted.
ruoso @tell pmurias like... add a second RI-like field, where the main RI would delegate the known methods to the vtable of the auxiliary RI 22:01
lambdabot Consider it noted.
22:01 justatheory left 22:08 DemoFreak joined 22:09 dduncan joined
dduncan TimToady, fyi, I'm now going to make the P6 Synopsis edits re long name canonical order ... as soon as I've got SVN setup ... its been over a year since I had a Pugs repo connection 22:13
22:24 arnsholt joined 22:28 scottp joined 22:29 lichtkind joined 22:32 icwiener_ left 22:33 icwiener_ joined 22:40 scottp left 22:42 ruoso left 22:44 Pismire left 22:54 fridim_ left 22:55 KyleHa joined 22:56 icwiener_ left, iblechbot left 22:57 icwiener joined 23:00 lichtkind left 23:10 payload joined 23:15 Limbic_Region joined
pugs_svn r27407 | pmichaud++ | [t/spec]: Test::Harness doesn't like '#' in the descriptions of todo'd items 23:22
r27408 | pmichaud++ | [t/spec]: Test::Harness doesn't like '#' in the descriptions of todo'd items 23:23
r27409 | pmichaud++ | [t/spec]: Fix up some rakudo fudging. 23:25
23:29 last joined
KyleHa There are LOTS of todo items with # in the description. 23:32
jjore is very late to the game but is writing a p6 program, finally. There are many "TODO: not implemented" in just his program. 23:33
Limbic_Region jjore - I stopped following p6 development closely around the time audrey had to take her leave of the pugs project 23:34
but
pmichaud, jonathan and crew have gotten rakudo to the point
where a lot of p6 can be implemented in p6
it is no longer called prelude (IIRC) but setting 23:35
but if you want to implement the todo things then you might be able to without learning any PIR
jjore Yes, which is kind of why I thought I'd try doing a p6 version for my own edification of use.perl.org/~jjore/journal/39223
pmichaud KyleHa: in the "todo" description or in the test description?
there's a difference
KyleHa In the "todo" description.
pmichaud the "todo" description doesn't seem to be a problem. The test description does. 23:36
KyleHa Oh.
jjore It's just the very sort of dirt-simple thing that's easy to do several times but get at a few of the commonest things.
KyleHa I guess I misread the commit.
Limbic_Region jjore - well, pmichaud is obviously paying attention to the channel - pester him and see what happens
jjore but fwiw, I've done more pir than p6.
pmichaud on my system, Test::Harness appears to not like things like "not ok 15 - failure in test (RT #15632) # TODO todo descriptoin 23:37
KyleHa (And, incidentally, I'll stop doing that.)
jjore Nah, I figure if I need to flip a "todo" I can do that myself.
Limbic_Region wanders off to upload 4th of July photos
jjore is skipping the holiday.
pmichaud jjore/limbic: yes, I'm paying attention. :-)
KyleHa: apparently Test::Harness looks for the first '#' and stops there. 23:38
jjore pmichaud: yep, if I had a question I thought I needed your brain for, I'd ask. For now, reading the S\d+ and spec tests are all I need. 23:39
pmichaud jjore: sounds excellent. Feel free to ask here (lots of helpful people here) or perl6-users or perl6-compiler
(the latter two being mailing lists)
23:39 edenc left
KyleHa I think the tests in t/syntax/hyper_latin1.t ought to be in spec somewhere, but I can't tell where. 23:39
23:40 edenc joined
pmichaud KyleHa: I guess we could always change Test.pm so that it strips any #'s from the description, though. 23:40
KyleHa pmichaud: That might be confusing for someone searching for a failing test in the test file.
pmichaud KyleHa: it might, yes.
or maybe we get it to warn instead. 23:41
in hyper_latin1.t, the test doesn't test what they think it tests, though. 23:42
jjore I am however, interested in why C<< regex git_repo { '/.git' }; '...' ~~ git_repo >> throws an arity error. S06 goes to effort to hint that regexps are really just functions while ~~ ought to notice I've passed a regexp. Instead, I'm told I passed 0 args while 2 were expected.
pmichaud my $latin1_encoded = "(<a b c>) \c187~\c171 (1,2,3)";
doesn't produce a latin1 string
KyleHa What's it make?
pmichaud jjore: you need ~~ &git_repo instead
if you just say "git_repo", it acts like a subroutine call.
and tries to call the git_repo sub (regex)
and there aren't enough parameters 23:43
er, aren't enough arguments
jjore Ah.
pmichaud i.e., '...' ~~ git_repo is equivalent to '...' ~~ git_repo()
jjore Yes, I gathered.
pmichaud KyleHa: strings in Perl 6 don't have "encoding" 23:44
jjore Thanks for the explanation.
pmichaud KyleHa: so "\c187" and "«" are identical.
rakudo: say "\c187" eq "»"
p6eval rakudo 6a4d66: OUTPUT«1␤»
KyleHa pmichaud: That's kind of the point. \c187 is the right character in latin1. 23:45
pmichaud (oops, got my codepoints backwards -- "\c187" is the same as "»"
\c187 is the right character in *unicode*
because Perl 6 defaults to Unicode semantics
KyleHa Hmmm. 23:46
arnsholt Any of you guys any good with FreeBSD ports?
KyleHa OK, yeah, the test needs fixing.
23:47 LumberCartel joined
TimToady pmichaud: at the moment I'm thinking "Parcel", for paren cell, or some misspelling like Parsel, for paren selection, or parse list, or parse morsel, or some such 23:47
pmichaud TimToady: I kinda like "parcel".
TimToady anyway, something that is an item that you don't know what's inside till you unwrap it 23:48
pmichaud not only that, but it has appropriate packing materials :-)
but oddly, what you end up getting from the parcel depends on which side you choose to unwrap :-P 23:49
TimToady for sure, if it's a bomb
pmichaud Maybe we should call it "catbox", since it has schroedinger's cat inside. :-P
(i.e. we don't know what kind of cat we have until we collapse it) 23:50
TimToady I think people will think of a different kind of catbox
the kind with litter in it
LumberCartel What about "bindle" instead of parcel?
TimToady that's what it is after it's bound :)
LumberCartel laughs. 23:51
23:52 KyleHa left
jjore When I read S06 on regexps, it sounded like named captures had been dropped as a feature. Is that right? 23:55
arnsholt Named subrule matches are captured by name 23:56
jjore and I can find that somewhere within the match object then, I guess. 23:59