»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg p6eval perl6: ... | irclog: irc.perl6.org/ | UTF-8 is our friend!
Set by sorear on 4 February 2011.
sjn rakudo: say (1..6).roll(10).sort.reverse 00:00
p6eval rakudo 405afa: OUTPUT«6543322221␤»
sjn much better
00:00 kfo left
sjn although the bench-scripts/dice.pl example uses the sort(-*) way 00:01
sjn is still a n00b :-P 00:03
sorear * probably shouldn't be treated similarly to *-containing expressions because of the extensionality problem 00:09
a lot of operators (.. comes to mind) want to treat * very differently from { $^a } 00:10
making (*) irregular is the least bad known way
00:11 Vlavv_ left
sorear TimToady: in the long run, should 'v5' be using Perl 6 grammars or LALR(1) with lexer feedback? 00:13
00:16 ymasory_ joined 00:23 ymasory_ left 00:27 Rotwang left, Vlavv joined 00:31 whiteknight left 00:39 DarthGandalf joined 00:40 ponbiki left 00:42 ponbiki joined 00:43 awwaiid joined 00:50 Holy_Cow joined, Holy_Cow left 01:00 noganex_ joined 01:04 noganex left 01:07 [Coke] left, ponbiki left 01:12 ponbiki joined 01:14 DarthGandalf left
colomon rakudo: my @b := 1, 0, 0, 2, 2, 1, 0, 1, 1, 2, 1 ... *; say @b[^4] 01:20
p6eval rakudo 405afa: OUTPUT«1002␤» 01:21
01:21 DarthGandalf joined
colomon huh. why isn't that exact same line working in my code? 01:22
errr, because I'd hopelessly messed up the parser ahead of that point, it appears. 01:23
TimToady sorear: by which you mean, a sane parser, or an insane parser? :) 01:24
colomon doh!
colomon was running his code through p5 instead of p6. sigh. 01:25
TimToady heh
rakudo: sub foo([*@x]) { say @x.shift }; my @kay := 1... *; say ~@kay[^4]; foo(@kay); say ~@kay[^4];
p6eval rakudo 405afa: OUTPUT«(timeout)»
TimToady there's a bug
rakudo: sub foo([*@x],[*) { say @x.shift }; my @kay := 1... *; say ~@kay[^4]; foo(@kay); say ~@kay[^4]; 01:26
p6eval rakudo 405afa: OUTPUT«===SORRY!===␤Malformed parameter at line 22, near "*) { say @"␤»
TimToady rakudo: sub foo([*@x],[*@y]) { say @x.shif, @y.shiftt }; my @kay := 1... *; say ~@kay[^4]; foo(@kay, @kay); say ~@kay[^4];
p6eval rakudo 405afa: OUTPUT«(timeout)»
TimToady that should be how you do more than one
er, only with the shift methods spelt righer 01:27
*t
somehing is obviously wrong with my tt key
01:43 am0c joined 01:44 Eevee joined 02:01 icwiener left 02:20 UAAGA3J joined 02:22 silug joined 02:25 benabik joined
sorear TimToady: p5 bug-compatibility will ensure that both of them are insane 02:30
TimToady: I just think that a naturally insane parser might turn out to be saner than trying to emulate an insane parser
02:32 rdesfo joined
rdesfo I was trying out the perl6-examples at github ( 02:33
github.com/eric256/perl6-examples/...ter/games) 02:35
and I get the following error:
$ perl6 connect4.p6
===SORRY!===
Unable to parse blockoid, couldn't find final '}' at line 23
sorear "eric256" eh. it's nice to see people outside the cabal hacking p6. 02:38
this is rather old code then 02:39
my $user_input = =$*IN; has been invalid for longer than I've been here
I think it's spelled $*IN.get now
rdesfo ok I'll try that 02:40
sorear there are other problems
rdesfo my $user_input $*IN.get; # changed from $*IN 02:41
right?
diakopter 0x2c4e 02:45
03:00 [hudnix] joined 03:02 larsen_ joined 03:06 am0c left, woldrich left, xinming_ left, alester left, TiMBuS left, tadzik left, amkrankruleuen left, PZt left, Bucciarati left, renormalist left, knewt2 left, baest left, Brandon_W_ATS left, mdxi_ left, apejens left, ribasushi left, IRSeekBot left, kolibrie left, arlinius left, mux left, patch_ left, aloha left, barika left, rokoteko left, benabik left, f00li5h left, mberends left, [particle] left, felher left, starcoder left, sunnavy left, skangas left, aesop left, quotemstr left, frodwith left, DarthGandalf left, plobsing left, prammer left, nadim left, Grrrr left, betterworld left, jnthn left, ponbiki left, noganex_ left, orafu left, rdesfo left, ingy left, cognominal left, jevin left, jedai left, HarryS left, huf left, spq left, s1n left, TimToady left, itz left, frettled_ left, PerlJam left, ascent_ left, PacoLinux left, cotto left, flatwhatson_ left, hudnix left, Juerd left, literal left, perplexa left, nymacro left, ashleydev left, Lorn left, hatseflats left, mathw left, cbk_ left, Helios` left, ronoreck left, sjn left, c1sung left, meteorjay left, awwaiid left, cosimo left, araujo left, stepnem left, pothos left, gfldex left, pjcj left, Vlavv left, saaki left, jimmy1980 left, Trashlord left, Sarten-X left, charsbar_ left, cxreg left, ggoebel left, edenc left, dukeleto left, kfo_ left, flussence left, twinshadow left, phenny left, nsh left 03:09 aindilis joined 03:12 cotto joined 03:14 PacoLinux joined, tomaw joined, DarthGandalf joined, plobsing joined, prammer joined, nadim joined, meraxes joined, szabgab joined, jjore joined, slavik1 joined, Grrrr joined, betterworld joined, jnthn joined, __sri joined, jpr5 joined, am0c joined 03:18 nrr joined, sftp joined, [sbp] joined, awwaiid joined, cosimo joined, araujo joined, stepnem joined, pothos joined, gfldex joined, pjcj joined, flatwhatson_ joined, jimmy1980 joined, rdesfo joined, UAAGA3J joined, ponbiki joined, noganex_ joined, orafu joined, itz joined, ingy joined, cognominal joined, jevin joined, jedai joined, HarryS joined, huf joined, spq joined, s1n joined, TimToady joined, shortcircuit joined, arnsholt joined, avuserow joined, krunen joined 03:19 Vlavv joined, saaki joined, Trashlord joined, Sarten-X joined, charsbar_ joined, cxreg joined, ggoebel joined, edenc joined, dukeleto joined, mkramer1 joined, tty234 joined, Khisanth joined, jasonmay joined, rblackwe_ joined, hillu joined, Tene joined, cotto_work joined, jrockway joined, WAAGL8K joined, jimmy1980 left, nymacro joined, ashleydev joined, sjn joined, Lorn joined, hatseflats joined, mathw joined, cbk_ joined, Helios` joined, ronoreck joined, spinclad joined, c1sung joined, meteorjay joined, _ilbot joined, revdiablo joined, moritz_ joined, clkao joined, zb joined, arlinius joined, mux joined, patch_ joined, aloha joined, barika joined, rokoteko joined, HarryS left 03:20 HarryS joined, Juerd joined, woldrich joined, xinming_ joined, alester joined, TiMBuS joined, tadzik joined, amkrankruleuen joined, PZt joined, Bucciarati joined, renormalist joined, knewt2 joined, baest joined, Brandon_W_ATS joined, mdxi_ joined, apejens joined, ribasushi joined, IRSeekBot joined, kolibrie joined, chitragupt joined, zamolxes joined, frettled_ joined, PerlJam joined, ascent_ joined, benabik joined, felher joined, f00li5h joined, mberends joined, [particle] joined, starcoder joined, sunnavy joined, quotemstr joined, skangas joined, aesop joined, BinGOs joined, Raynes joined, frodwith joined, kfo_ joined, flussence joined, twinshadow joined, phenny joined, nsh joined, shabble joined, rhr joined, jerome joined, LoRe joined, perigrin joined, cschimm1_ joined, yahooooo joined, llabthgie joined, frooh joined, jimmy1980 joined, jimmy1980 left, jimmy1980 joined 03:26 Gothmog_ joined, literal joined, perplexa joined, perplexa is now known as Guest34727 03:29 sftp left 03:42 izydor joined
sorear rdesfo: you need an = in there. 03:43
03:48 jaldhar left 03:49 jaldhar joined
rdesfo sorear: thanks 03:55
03:59 GinoMan joined 04:02 ponbiki left, jevin left 04:03 ponbiki joined, jevin joined 04:04 cbk_ left 04:11 eternaleye left, eternaleye joined 04:20 mberends left, woosley joined 04:21 mberends joined 04:23 rdesfo left 04:29 cspencer joined
cspencer rakudo: my $x; say $x++ for 1..10; 04:29
p6eval rakudo 405afa: OUTPUT«Any()␤1␤2␤3␤4␤5␤6␤7␤8␤9␤»
TimToady which is incorrect by spec 04:31
cspencer yes, i was just checking that on the latest build
shall i file a bug report?
TimToady S03:546 04:32
(for any onlookers)
sure, file away 04:34
sorear niecza: my $x; say $x++ for 1..10; 04:36
p6eval niecza v4: OUTPUT«Any()␤1␤2␤3␤4␤5␤6␤7␤8␤9␤»
sorear hmm I thought I fixed that 04:37
04:43 alester left 04:51 baest left 04:56 baest joined
woosley pugs: my $x; say $x++ for 1..10; 05:00
p6eval pugs: OUTPUT«0␤1␤2␤3␤4␤5␤6␤7␤8␤9␤»
05:02 cspencer left 05:07 GinoMan left 05:17 birdwindupbird joined 05:19 GinoMan joined 05:26 _dev0_ joined 05:29 snarkyboojum joined 05:31 kaare_ joined 05:33 mberends left 05:48 izydor left 05:57 wtw joined 06:04 donri joined
diakopter pugs: say my $x++ for 1..6 06:37
p6eval pugs: OUTPUT«0␤1␤2␤3␤4␤5␤»
diakopter rakudo: say my $x++ for 1..6
p6eval rakudo 405afa: OUTPUT«Could not find sub &for␤ in main program body at line 22:/tmp/78cPQsUwI1␤»
diakopter std: say my $x++ for 1..6 06:38
p6eval std 4608239: OUTPUT«ok 00:01 121m␤»
diakopter niecza: say my $x++ for 1..6
p6eval niecza v4: OUTPUT«Any()␤1␤2␤3␤4␤5␤»
diakopter (winning)
niecza: say $_++ for 1..10 06:39
p6eval niecza v4: OUTPUT«1␤2␤3␤4␤5␤6␤7␤8␤9␤10␤»
diakopter niecza: say ++$_ for 1..10
p6eval niecza v4: OUTPUT«2␤3␤4␤5␤6␤7␤8␤9␤10␤11␤»
moritz_ rakudo: say ++$_ for 1..10 06:48
p6eval rakudo 405afa: OUTPUT«Cannot modify readonly value␤ in '&infix:<=>' at line 1␤ in <anon> at line 22:/tmp/qlI5S7Gree␤ in main program body at line 1␤»
moritz_ thinks this is a bug
and it doesn't seem right that niecza starts at 2 either 06:49
TiMBuS .. why not?
TimToady 1+1 == 2
$_ starts at 1, and ++ adds 1 06:50
06:50 cosimo left
TiMBuS TimToady! How is @a[1..*] supposed to work? 06:52
06:54 chin_up joined
TiMBuS I've asked a few times but no one seems to know 06:55
i have missed him again :( toads are very slippery 06:58
moritz_ doesn't it start at Any? 06:59
and Any
+1 == 1
TimToady for sets $_
TiMBuS for 1..10
moritz_ ah
ouch
TimToady TiMBuS: subscripts are supposed to know when they have a range that runs off the end, and truncate it 07:00
TiMBuS oh. ooooohhhh. yeaaah its coming back to me now 07:01
TimToady that implies some API to an iterator that can peek at the next bit to see if that's the case
TiMBuS but we cant do that because assigning to a slice
TimToady s/because/when/ 07:02
we know lvalues from rvalues, I hope
TiMBuS looks at hands, traces thumb and forefinger
yes 07:03
but i have no idea how we do it in code
TimToady ought to go to bed now, since it's now tomorrow in California... 07:05
and tomorrow I have to go to SF in the morning to get a Brazilian visa... 07:06
so zzz &
TiMBuS night
07:17 bacek joined 07:20 mtk left 07:28 mtk joined 07:40 JimmyZ joined
TiMBuS does --target=past no longer work for rakudo? 07:44
moritz_ don't try to mix --target with -e 07:49
TiMBuS oh..
07:51 am0c left 07:52 felipe joined, am0c joined 08:03 awoodland joined 08:05 domidumont joined
felher Can someone explain to me why "subset MStr of Str where { /abc/ }" is not the same as "subset MStr of Str where { $_ ~~ /abc/ }", please? Thought /abc/ matches against $_, unless further specified. 08:12
08:12 Alias joined
felher and btw: subset-types are just so neat! :D 08:19
08:28 donri left 08:29 donri joined
moritz_ felher: /.../ only matches against $_ under certain conditions. Use m/.../ if you want it to always match against $_ 08:30
felher: or just write subst MStr of Str where /abc/;
rakudo: my $x = /foo/; say $x.WHAT
p6eval rakudo 405afa: OUTPUT«Regex()␤»
moritz_ rakudo: $_='foo'; my $x = m/foo/; say $x.WHAT 08:31
p6eval rakudo 405afa: OUTPUT«Match()␤»
moritz_ rakudo: $_='foo'; my $x = _ /foo/; say $x.WHAT
p6eval rakudo 405afa: OUTPUT«Could not find sub &_␤ in main program body at line 22:/tmp/bUUVtNInLV␤»
moritz_ rakudo: $_='foo'; my $x = ? /foo/; say $x.WHAT
p6eval rakudo 405afa: OUTPUT«Method 'match' not found for invocant of class ''␤ in 'Regex::Bool' at line 6295:CORE.setting␤ in 'prefix:<?>' at line 490:CORE.setting␤ in main program body at line 22:/tmp/FcRm9_1p5L␤»
moritz_ huh.
felher Ah, k, moritz_, thnx! 08:33
moritz_ dev-tricks.net/pipe-infix-syntax-for-python feeds for python 08:34
08:36 chin_up left
moritz_ sorear++ # niecza v4, probably the Most Awesome niecza release ever! 08:38
08:39 nymacro left 08:40 dakkar joined 08:45 nymacro joined 08:46 JimmyZ left 08:48 Gothmog_ left 08:49 Gothmog_ joined 08:52 awoodland left
moritz_ wow, we seem to have quite many gsoc students concentrating on a few ideas 08:53
that hasn't happened before :/ 08:54
09:03 am0c left 09:06 chin_up joined
moritz_ jpwhiting.blogspot.com/2011/03/qtze...eased.html "Today we released version 0.7.0 of libqzeitgeist aka QtZeitgeist (the first release with a tarball) It's basically the same as 0.1.0 but with a new version, some minor fixes, and a license file." 09:07
just another demonstration of the silliness of classical version numbers 09:08
09:09 pmurias joined
tadzik good morning zebraland 09:24
moritz_ good morning tadzik
you've got competition regarding the POD GSOC proposal
tadzik oh? 09:25
moritz_ see parrot-dev
docs.google.com/document/pub?id=1J...XGi10YIBaE
seen joseph_ 09:26
aloha joseph_ was last seen in #perl6 2 days 16 hours ago joining the channel.
tadzik well, that's parrot-dev, is that the same task?
moritz_ it says "Implement an S26 documentation parser" and "A working POD parser in Perl 6" 09:27
tadzik yeah, I see the possible mentors
09:27 [sbp] is now known as sbp
moritz_ so you can either try to to better, convince him to do a different project, or do a different project :-) 09:28
09:28 SSSS joined
tadzik can one apply to more than one project? 09:28
moritz_ yes
you just can't do more than one project at a time :-)
09:29 SSSS left
tadzik yeah, I see 09:29
anyway, I've got a few important ideas which he doesn't have, but I'm afraid to say them aloud so they won't be stolen :) 09:30
moritz_ :-)
masak++ provided a link to our IRC discussion
I'd really love to the POD thing happen, but there other worthwhile Perl 6 projects too 09:31
for example related to module infrastructure/packaging
tadzik yeah, I see 09:34
hmm, so maybe I'll hit the module ecosystem, as I've been doing for the last months
any ideas?
moritz_ there are also lots of 6model-related tasks, but I'm a bit scared of approving those before rakudo-on-6model actually runs 09:35
tadzik: what does panda do right now?
tadzik moritz_: installs modules. It has plans to manage the installed ones, being capable of removing them, removing unneeded dependencies and stuff 09:36
moritz_ well, then you have ideas already :-) 09:37
other things you could do: 09:38
tadzik yeah, but those are things I'll do anyway during the nearest few months
moritz_ a script that generates a META.yaml for modules that makes the PAUSE indexer ignore them
and then upload a few modules to the Perl 5 CPAN
and make panda install them from CPAN 09:39
tadzik I'd like to get for GSoC something else, something challenging and something I probably won't be able to do all by myself in my spare time
if you know what I mean
moritz_ generate your own indexer for Perl 6 modules, on a separate website
tadzik yeah, this is the part of my plans, as on feather.perl6.nl:3000
(that one's probably dead due to feather downtimes)
moritz_ thus use the p5 mirror infrastructure for module distribution 09:40
tadzik up again
09:40 orafu left
moritz_ yes, I see 09:40
09:41 orafu joined
moritz_ maybe jnthn++ has some 6model-ideas that could be implemented in nqp directly 09:41
tadzik Pod parser seems challenging and interesting, and it seems exciting enough so I have plenty of ideas about what to do after it's completed to make it even more awesome
moritz_ agreed, it's a good idea 09:43
tadzik aye, that's why I choose it
but now I have a competition :)
The bad thing is, because my proposal is also based on masak's Grant Draft, my GSoC proposal would look similar to joseph's and thus it'd look like I'm the one stealing projects and ideas 09:45
09:45 woosley left
tadzik what happens if I apply to a few projects, who chooses what happens next? 09:45
moritz_ the mentors of each organization internally rate the projects 09:46
and then requests slots from google
google allocates $n slots
and then the top-$n projects are chosen, weeding out duplicates etc.
of course there can be discussions between mentors and students 09:49
tadzik but say I apply for the Pod parser, and for a Shakespeare compiler for Parrot. What if I get accepted for both, I tell Parrot or Rakudo guys "well, how about no", and they stay with an empty slot? Or the organization then picks up someone who didn't make it in the first attempt?
moritz_ the latter
... unless the don't have enough good proposals (which rarely happens) 09:50
in which case they'd give a free slot to another organization, and don't have any hard feelings either
tadzik one more. Will the expertise in the field, for example I'm an all-star Shakespeare programmer, be a strong point when proposing, or does a Project Schedule or some other things in Proposal matter much more? 09:52
moritz_ it all matters 09:53
the students need to convince us that they
1) know what the actually want to do
2) have spent some time thinking about the project
3) have the necessary background to actually complete it
4) the project is worthwhile for the community 09:54
a detailed schedule greatly helps with 1) and 2)
and bio and references to previous work help with 3)
tadzik one more again :) What happens if something slips in the Schedule, for example I do the first four month in the first week, or get some point of my schedule one week later? 09:58
moritz_ if you run ahead, no problem :-) 09:59
either take some time off (preferably at the end), or do more stuff 10:00
if you are behind, student and mentor get together and discuss possibilities
(catch up, don't do some of the planned features, ...)
in the middle and end the mentor needs to fill out an evaluation, and has to make a yes/no decision if you're sufficiently on track to continue/pay out 10:01
tadzik I see 10:05
anyway, about this: irclog.perlgeek.de/perl6/2011-03-28#i_3434365 10:06
that's basically Perl6::Grammar.parse(:actions(I-Want-Pod-Only.new)), or something far more fancy?
10:06 f00li5h left 10:12 c1sung left 10:13 Guest34727 is now known as perplexa, perplexa left, perplexa joined 10:23 f00li5h joined 10:24 [Coke] joined
tadzik oh nevermind, that's a different thing. So I don't know what mberends had on his mind: no Pod so no Pod tokens matched, so me methods called 10:29
10:29 chin_up left 10:40 agentzh joined 10:42 agentzh left 11:01 Mowah joined 11:22 amkrankruleuen left 11:30 mtk left 11:40 leprevost joined 11:42 shi joined
moritz_ tadzik: I think you should start with a pod parser that lives inside rakudo's Grammar.pm, despite mberends' objections 11:43
at least the parsers and .WHY attachements need to be available without explicit module loading 11:47
11:48 mtk joined
tadzik moritz_: would you have some time to criticise my proposal in a second? I'd really like to get your feedback, especially on the timeline 11:48
moritz_ tadzik: sure
tadzik bah, I sticked everything before the midterms 11:51
Timeline is the hardest thing to do for me
moritz_ cram less into a week 11:52
11:53 Patterner left
moritz_ and it's ok to plan a slack week each before midterm and final to be able to catch up delays 11:53
Hofstadter's rule: Everything takes longer than you expect, even when
you take Hofstadter's rule into account.
11:54 Psyche^ joined, Psyche^ is now known as Patterner
tadzik the main thing that bothers me is the possibility of "suprise holiday trips" 12:01
say, a week long. I'll probably have those planned a week before or something :| 12:02
moritz_ it's ok to take a week off, just tell your mentor about it, and catch up later on 12:03
tadzik but that should be possible to do two weeks in one and just scheule a cronjob for commiting part of the changes later :)
oh, good, I hoped for that
pmurias tadzik: do you intend to implement the shakespeare programming language? or is it an hypothetical example? 12:07
tadzik pmurias: no, it's just an unrelated example, to not to refer to any particular task 12:08
I wanted it to be a bit absurd, but it's nice that you asked :) 12:09
pmurias the actuall tasks are secret? ;)
* actual
tadzik the actual task is the Pod parser :) 12:12
moritz_: gist.github.com/892249 can I ask you for some opinions? I'd like to know what you think about the schedule, will something take more time than I think and I should split it up, or is it good to join some of the tasks? 12:15
To everyone: would you like to see something more done for Rakudo on this project, any desired features? 12:16
moritz_ The project also features fixing and extending Synopses 26 if needed, 12:18
and if there in a need to do this.
double if
12:19 MayDaniel joined
moritz_ tadzik: I think you need more time for the parsing itself (and testing) 12:20
you have 2 weeks for blocks, and one for the whole rest
I'd add one for inline markup (I<...>, C<...> and nesting them) 12:21
tadzik hmm, right
moritz_ also I remember some quite tricky features 12:23
where you have code blocks which allow certain markup, but not all of it
tadzik yeah, I remember reading about those
moritz_ maybe re-read, and allocate another week for it if it seems necessary 12:24
=begin code :allow<B> The "exeunt" command B<Z<Think about renaming this command?>> is used to quit all applications.
=end code
tadzik yeah, that might be tricky/interesting 12:25
12:29 W0rM joined 12:30 pmurias left
W0rM !login sorear 12:30
who change the login ? 12:31
moritz_ W0rM: what are you talking about? 12:32
W0rM bots login i need
moritz_ most bots here don't require login 12:33
hugme: hug W0rM
hugme hugs W0rM
moritz_ see? works without login :-)
W0rM dalek: hug W0rM 12:35
12:37 MayDaniel left 12:38 amkrankruleuen joined, icwiener joined
[Coke] W0rM: Is there something specific we can help you with? 12:41
12:41 durmitor joined
moritz_ [Coke]: it seems that W0rM is after some blackhat practices (told me in privmsg) 12:42
[Coke]: I think hugging is the best you can do
12:42 plobsing left
[Coke] might as well ban him, then. 12:42
W0rM i gave you
my father credit card :D
just give me login :D 12:43
for one ddosing
[Coke] ah, n00bs. they're so cute.
12:43 durmitor left
W0rM mother fucker 12:43
:@ im
moritz_ W0rM: stop it. We discuss programming languages here (well, one in particular). We don't do any attacks
W0rM operator 12:44
in bluewin.ch
12:44 durmitor joined
W0rM admin 12:44
and
i
tell to the FBI
12:44 ChanServ sets mode: +o moritz_
W0rM for this server 12:44
dont kick me
mother fucker
listening
:d
12:44 moritz_ sets mode: +b *!*ASdas@46.217.36.*, W0rM was kicked by moritz_ (W0rM)), moritz_ sets mode: -o moritz_
[Coke] Too much hugging, not enough banning. 12:45
12:47 meraxes left
mux that was fun 12:47
moritz_ we need a new command, /hugban :-) 12:51
12:51 durmitor left 12:54 chin_up joined 12:55 JimmyZ joined 12:56 JimmyZ left 13:01 tyatpi_ joined 13:03 plainhao joined
tadzik as in * hugme hugs W0rM goodbye 13:07
13:10 pmurias joined 13:11 Holy_Cow joined 13:18 flatwhatson_ left 13:28 cspencer joined 13:31 meraxes joined, cspencer left, _twitch joined 13:32 bluescreen10 joined 13:33 plobsing joined
PerlJam colomon++ 13:34
tadzik moritz_: what do you think about me saving the last few weeks for some Justin Case fixes, related mini-projects or something, is it desired? 13:38
moritz_ tadzik: it's fine, but you shouldn't do it with more than two weeks in total 13:39
better yet just one
tadzik ok 13:40
13:42 mikehh left 13:57 bluescreen10 left 14:00 cotto left 14:03 nymacro left 14:04 spq left 14:06 stkowski joined 14:09 bluescreen10 joined 14:10 pyrimidine joined 14:12 cotto joined 14:18 cogno joined 14:19 wtw left 14:29 alester joined 14:32 orafu left, ab5tract joined 14:33 Trashlord left 14:34 sftp joined, Trashlord joined 14:35 zamolxes left, zamolxes joined, slavik2 joined 14:36 orafu joined, slavik1 left 14:40 cogno left
sorear hi #perl6 14:44
moritz_ hi sorear 14:45
tadzik hi sorear
pmurias sorear: hi 14:55
14:55 shi left 15:05 bluescreen10 left 15:06 mtk left 15:10 slavik1 joined
diakopter !login sorear indeed 15:10
moritz_ :-) 15:11
tadzik :D
15:11 slavik2 left
tadzik that was one naive attempt of this guy 15:12
moritz_ he thought this was a bot net, because we have bots 15:13
pmurias ?
tadzik pmurias: see the logs, 14:30 or something 15:14
15:22 bluescreen10 joined 15:25 mtk joined 15:30 birdwindupbird left
tadzik moritz_: I updated the proposal draft, extending the Schedule. Can you take a look? gist.github.com/892249 15:37
15:41 Axius joined
moritz_ tadzik: much better... except for the test coverage, which will be hard to determine without the proper tools 15:42
tadzik oh, that's right 15:43
15:45 Axius left, Axius joined 15:46 bluescreen10 left, bacek left 15:47 kaare_ left 15:55 birdwindupbird joined, Axius left 16:00 Mowah left, bluescreen10 joined 16:01 domidumont left 16:07 hercynium joined 16:08 lestrrat joined, lestrrat left 16:10 lestrrat joined 16:15 birdwindupbird left 16:16 chin_up left 16:22 masak joined
masak saluton, zebroj! 16:22
phenny masak: 28 Mar 21:39Z <moritz_> tell masak you might be interested in books.slashdot.org/story/11/03/28/1...lashdot%29
masak I might. will read during dinner :)
tadzik masak! \o/ 16:23
masak: wanna read my proposal draft too? I'd very much appreciate your comments
masak I sure do. 16:25
url?
tadzik gist.github.com/892249 16:26
masak reads 16:31
16:34 pmichaud joined
masak pmichaud! \o/ 16:34
pmichaud good morning, #pelr6
*#perl6
16:34 cdarroch joined, cdarroch left, cdarroch joined
benabik good morning, pmachiud! 16:37
colomon \o 16:41
ooo, #phasers today!
masak ooh!
colomon++ # reminder
pmichaud I will probably miss #phasers :-(
but I have little to report anyway.
masak tadzik: the "Deliverables" section is more descriptive than I'm used to with "Deliverables" sections. it has more of the tone of a "Goals" section. "Deliverables" should IMHO be a list of things you intend to implement. 16:42
pmichaud "Deliverables" is what we expect to have when the project is done. 16:43
i.e., what you promise to deliver. it should almost be like a checklist
masak right.
16:43 estrabd joined, Axius joined 16:44 _dev0_ left
masak tadzik: and there are distinct advantages for everyone in having "Deliverables" be a checklist. it'll be possible to tell if you succeeded, for one thing. :) 16:44
so, don't be afraid to be concrete. 16:45
pmichaud as a grant manager, I want deliverables to be a sequence of "yes/no" items... if everything is "yes", then I can say that the grantee gets paid. :) 16:46
16:46 _twitch left 16:49 am0c joined
Util pmichaud: as the R* pumpking, do you want to review the binary Darwin .dmg build before I upload it to R*'s GitHub Download section? 16:51
tadzik masak, pmichaud: thanks for comments. Any other suggestions? 16:52
16:52 Chillance joined
masak tadzik: ss/Add a tests cases\./Add tests./ 16:53
(line 92)
tadzik Fixed that. I wanted to avoid repetitions, but achieved weirdness
pmichaud Util: if there's anything specific you'd like me to review, I can do that. Otherwise I'd say just do it and we'll take patches as feedback
masak tadzik: ss/what is wanted to/what is wanted/ (line 71) 16:54
16:54 benabik left, pmurias left, benabik joined
pmichaud my schedule for the next couple of days is likely to be... weird. 16:54
16:54 benabik left 16:55 benabik joined
masak tadzik: "the specialized blocks like code, list, comment and others" -- I suggest either dropping "and others", or specifying them explicitly. 16:55
pmichaud maybe "code, list, and comment blocks"
tadzik well, "like" is de-generalizing it anyway
but right, bespecific
masak "This is also the time of modifying the Synopses if needed." -- I wouldn't limit that to a specific week if I were you! :P
tadzik :) Ok 16:56
16:56 dakkar left
PerlJam tadzik: ooc, why aren't you using pod for your proposal? :) 16:57
masak hypocrite! :P
tadzik PerlJam: for the Parser is not yet. I'll have the bootstraping problem from the very start :) 16:58
Also, I wanted that to be nice and shiny, but it turns out I'll have to submit it from a webeditor in a webinterface anyway :|
so I guess "etc" in one-letter blocks is also out? 16:59
PerlJam tadzik: POD is very human readable. Besides, if you did use POD6 for your proposal, you could say for one of your deliverables, "able to succesfully parse this proposal" :-)
tadzik (:
masak PerlJam++ 17:02
masak wonders if that qualifies as an autopun, or if it was just a self-reference
tadzik rakudo: use Perl6::Grammar 17:04
p6eval rakudo 405afa: OUTPUT«===SORRY!===␤Unable to find module 'Perl6::Grammar' in the @*INC directories.␤(@*INC contains:␤ lib␤ /home/p6eval/.perl6/lib␤ /home/p6eval//p2/lib/parrot/3.2.0-devel/languages/perl6/lib␤ .)␤»
tadzik is that possible, or likely to be possible until the GSoC? I think that would be a prerequisite to reuse the parser in the Perl 6 modules 17:05
Util pmichaud: nothing specific, so I will be uploading later this week.
thanks 17:06
17:06 Axius left
masak rakudo: say Perl6::Grammar.WHAT 17:07
p6eval rakudo 405afa: OUTPUT«Perl6::Grammar()␤»
masak tadzik: it's there -- you don't need to 'use' it.
tadzik oh cool
masak tadzik: but I'd be interested to know what kind of reuse you have in mind.
tadzik: I wanted to reuse <identifier> the other day, and found I couldn't really. 17:08
pmichaud overload the pod_comment rules, perhaps?
tadzik rakudo: say Perl6::Grammar.parse("sub sub foo!") or die "nope"
p6eval rakudo 405afa: OUTPUT«Confused at line 1, near "sub sub fo"␤ in main program body at line 288␤»
tadzik rakudo: say Perl6::Grammar.parse("sub foo {}").ast or die "nope"
p6eval rakudo 405afa: OUTPUT«␤»
masak pmichaud: why not just specify them in-place? what is it that needs inheritance/overloading?
tadzik: you're parsing without actions. 17:09
pmichaud masak: for development, it might be easier to inherit/overload
benabik tadzik: The "or die" doesn't really do much, since Perl6::Grammar is loaded with it's own die calls.
pmichaud once everything is the way you want it, then put them into the original grammar (and STD)
masak pmichaud: hm. I think I'd just copy/paste everything into a file and do development outside of the Rakudo make flow. 17:10
pmichaud masak: that could work, yes.
PerlJam oddly, I was thinking this would be a perfect application for roles.
pmichaud j
ww
masak YMMV.
tadzik masak: the Podparser module is likely to use the Perl 6 parser
17:11 st-14258 joined
tadzik rakudo: say Perl6::Grammar.parse("sub foo {}", :actions(Perl6::Actions.new)).ast 17:11
p6eval rakudo 405afa: OUTPUT«Contextual %*COMPILING not found␤ in main program body at line 77␤»
tadzik oh there we go
rakudo: my %*COMPILING = "wild guess"; say Perl6::Grammar.parse("sub foo {}", :actions(Perl6::Actions.new)).ast 17:12
p6eval rakudo 405afa: OUTPUT«Odd number of elements found where hash expected␤ in '!STORE' at line 5304:CORE.setting␤ in main program body at line 22:/tmp/KD7eCI0oMy␤»
tadzik ideas? 17:13
pmichaud in Perl 6 it's not really possible to detangle parsing from compiling, I think (more) 17:14
but if you're doing pod, then you really want to be parsing just the pod and not an entire Perl 6 program, perhaps. 17:15
so perhaps you could do :rule<pod_comment> or similar
17:15 awoodland joined
pmichaud rakudo: say Perl6::Grammar.parse("hello", :rule<identifier>); 17:16
p6eval rakudo 405afa: OUTPUT«hello␤»
tadzik looks good
pmichaud rakudo: say Perl6::Grammar.parse("hello", :rule<identifier>).perl;
p6eval rakudo 405afa: OUTPUT«Method 'perl' not found for invocant of class 'Regex;Match'␤ in main program body at line 22:/tmp/3FZiq0SfOq␤»
pmichaud rakudo: _dumper(Perl6::Grammar.parse("hello", :rule<identifier>))
p6eval rakudo 405afa: OUTPUT«Could not find sub &_dumper␤ in main program body at line 22:/tmp/zJigGiLLgu␤»
pmichaud hmmm 17:17
it's giving back an NQP Match instead of a Rakudo Match
anyway, it's there :-)
tadzik so there could be a proto token Pod, and the Parser module would use that one only
pmichaud rakudo: say Perl6::Grammar.parse("123_456_789 any street", :rule<integer>); 17:18
p6eval rakudo 405afa: OUTPUT«123_456_789␤»
tadzik but I'm still not sure if that'll be entirely possible. There's DOC INIT {} and stuff, so the code has to be compiled somehow
pmichaud agreed 17:20
17:21 icwiener left 17:22 icwiener joined
tadzik should that be doable, given the current state of Rakudo? 17:22
I don't want to have it as a GSoC Goal if it turns out to be impossible :)
pmichaud it's not at all impossible 17:23
so yes, it's doable
tadzik I don't mind it being tricky :)
pmichaud it may mean refactoring rakudo's compiling guts a bit... but that probably needs to be done anyway
I think the key is to think of pod as being "another language within the compiler" and not necessarily "a separate language from the compiler" 17:24
tadzik finding the temporary impossibilities is one of the goals for the first week
pmichaud I think it's also useful to think of two forms of pod documentation
one that doesn't require the Perl 6 compiler (i.e., no DOC INIT { })
and one that does
i.e., it might be useful to develop a version of pod that can standalone, and then figure out how to integrate it with a perl 6 compiler 17:25
(full disclosure: I haven't read the proposal(s) yet)
PerlJam pmichaud: gist.github.com/892249
tadzik what about =begin code :allow<B>? That one will surely need a Perl 6 parser too. But maybe it will just do with the single rule for this kind of syntax 17:26
PerlJam " What makes my project different is that it's not a separate parser module, but a significant part of the Rakudo compiler itself"
moritz_ tadzik: no, it does not
PerlJam tadzik: btw, I don't like that part I just quoted. :) you're drawing the wrong distinction IMHO
pmichaud you can certainly inherit/borrow specific parsing rules from the Perl 6 grammar
[Coke] pmichaud: ~~! 17:27
pmichaud just avoid the rules that have side effects
Coke: ~~
moritz_ tadzik: it means "verbatim text, except for B<...>, which is parsed"
tadzik: not "Perl 6 code + B<...>"
tadzik moritz_: yes. But it's not only :allo... oh, I see your point
pmichaud anyway, I'm seriously distracted here so I should probably stop lobbing peanuts 17:28
tadzik or not. Hmm. That'd be something like { =begin <pod_identifier> <pair_syntax_or_something> } 17:29
while <pair_syntax_or_something> is a Perl 6 code and I need it parsed
but as pmichaud said, it that one has no side effects it's ok, otherwise I might write my own one or something
pmichaud rakudo: say Perl6::Grammar.parse(":allow<B>", :rule<colonpair>) 17:30
p6eval rakudo 405afa: OUTPUT«:allow<B>␤»
pmichaud seems pretty straightforward :-)
tadzik oh cool, thanks :)
pmichaud it gets nastier if the colonpair has curlies or something like that, but for the basic :name<value> syntax it ought to be fine
tadzik I'm wondering whether that as a whole would make it bad to keep for the last week of work. I guess I'll just silently try it as I implement the rest of things, to know of potential difficulties before 17:31
well, the 'key => {a=>1, b=>2}' syntax should also be possible 17:32
OTOH, I don't think I stated the 100% S26 compatibility anywhere. Even the project description on the ideas page says "or the subset of Pod"
pmichaud rakudo: say Perl6::Grammar.parse("key => 'value'", :rule<fatarrow>); # testing
p6eval rakudo 405afa: OUTPUT«Contextual $*QSIGIL not found␤ in main program body at line 1586␤» 17:33
pmichaud yeah, fatarrow is nasty
just having anything to start with would be helpful
PerlJam tadzik: IMHO, a pod parser that can stand alone and can be integrated into rakudo (or some other implementation) is much more valuable that one that is only integrated into Rakudo.
tadzik I just have to make sure I don't include in the proposal something I don't plan to do
pmichaud I agree with PJ, fwiw 17:34
benabik +1, FWIW
tadzik hmm 17:35
pmichaud at this stage I'd prefer a standalone pod that omits some of the dynamic features of POD
tadzik wouldn't that be a problem for the Rakudo compiler to load a module?
pmichaud tadzik: no, we can precompile it in 17:36
same as we do for the rest of the core settings :-)
tadzik hah :)
so Perl6::Grammar will include some Pod::rules, and Perl6::Actions will inclu... that pretty much makes Pod a role which Perl6::Grammar will do, doesn't it? 17:37
pmichaud it can be, yes
PerlJam tadzik: That's what I think
masak rakudo: my $*QSIGIL = 42; say Perl6::Grammar.parse("key => 'value'", :rule<fatarrow>) 17:38
p6eval rakudo 405afa: OUTPUT«␤»
tadzik so that looks a bit different now: A Pod Parser is a separate thingy, and it later gets included into Rakudo, opening the way to the in-compiler features, --doc, .WHY etc
17:39 jferrero joined
masak I haven't been following along closely. what's the advantage of starting separate/outside? 17:40
moritz_ disagrees 17:41
pmichaud reusability with other compilers
tadzik Justin Case, what if, in the middle of the project, my work reveals some subtle bug which makes half of the deliverables underiverable, and I'm unable to fix this. What happens to my task then?
moritz_ Pod allows references into code
for obtaining method signatures, for example
PerlJam tadzik: you won't be penalized for not being able to predict the future.
moritz_ this will be *much* harder in a separate module
PerlJam tadzik: you and your mentor will work out an alternate plan at that poitn
tadzik sounds good for me 17:42
moritz_ and .WHY and friends is speccec as core - why have it separately?
pmichaud that's why I think it needs to be viewed in two stages
one that looks at pod-as-pod, and another that looks at pod-as-perl6-with-references 17:43
and dynamic stuff and th elike
but I can see the value of the other approach as well
(i.e., integrating it with the compiler directly)
I just think the bigger win would be to make a clean API somewhere/somehow. Perhaps that's just not possible with pod6 17:44
in which case we end up with "Only Perl 6 can parse Pod6" which I think would be disappointing somehow.
moritz_ for one, we don't even yet have the syntax to call a rule from another grammar in from within a rule
tadzik regarding the GSoC again: if I make a suprising discovery in the early stage of a project, not fatal, can I ask my mentor "that will be harder than expected, can I modify my schedule a bit?" Not neceserilly the deliverables, but if those too, is that possible?
PerlJam moritz_: that's a mere matter of editing the spec ;)
moritz_ (which is a TODO since the alpha switchover)
tadzik oh right, we can edit the spec :)
moritz_ PerlJam: no, it needs implementing 17:45
tadzik: yes, possible
17:46 ab5tract left
tadzik ok cool. Bbl 17:46
PerlJam moritz_: why do we need to call a rule from another grammar? 17:47
moritz_ PerlJam: because that's what you do when you integrate one language with another 17:48
pmichaud one *can* call a rule from another grammar
PerlJam moritz_: if the POD6 parser is a role, it's in the same grammar.
pmichaud we just don't have a standard syntax for it
masak :lang(OtherGrammar) ?
moritz_ PerlJam: do we have pre-parse-time role composition yet? 17:49
pmichaud anyway, Rakudo's grammar makes calls to other grammars (regex, etc) all the time
PerlJam moritz_: do you mean "does anyone have it?" 17:50
17:50 tyatpi_ left
moritz_ PerlJam: no 17:50
pmichaud we have roles in the setting, yes.
moritz_ PerlJam: I mean "can we use it now for the GSOC thing?" 17:51
pmichaud I don't know if that qualifies as pre-parse-time role composition... but it seems like it should
moritz_ pmichaud: but we can't compose them into Perl6::Grammar yet, can we?
pmichaud no, because Perl6::Grammar isn't yet a Rakudo grammar
it's still an NQP one
moritz_ PerlJam: so, integrating the Pod parser into rakudo via role isn't an option right now 17:52
pmichaud well... it might work, but it's not something I could commit to yet
17:52 am0c left
PerlJam okay so perhaps tightly coupling is fine for now and we leave it to the future to decide how to tease them apart (if ever) 17:54
17:54 jevin left
masak I'd say it's a lot more than "fine fore now". it's only in conjunction with the rest of Perl 6 that Pod 6 will really be Pod 6. 17:57
we seem to fall on a spectrum in how much we believe that to be true/important, though.
pmichaud it's something of a question about the value of pod6 as markup, I think (more) 17:58
pod6 as "Perl 6 program documentation" makes sense to have tight integration with compiler
pod6 as "Generic document language" might want to not be so tightly coupled with a perl 6 compiler
but perhaps pod6 will never be used as a generic document language 17:59
moritz_ was thinking of "Perl 6 program documentation", because that's what S26 describes, and that's what tadzik++'s proposal references
pmichaud put another way, if the only way to process a pod6 document is to run it through a Perl 6 compiler... that's a coupling that we might have cause to regret someday 18:00
anyway, if the focus is on the perl6 source documentation aspect, I totally agree that compiler integration makes more sense as the first step
masak pmichaud: mberends++ has at times been making the exact same points you are right now. 18:01
pmichaud: problem is, there *is* no Perl 6-independent Pod 6.
not in the spec, anyway.
it's *deeply* intertwined.
pmichaud masak: this is what I get for being absent then, and mberends++
masak he's mostly been making them AFK, FWIW.
pmichaud masak: istr that at one time there was discussion that we might want a version of pod6 that doesn't have the deep intertwining 18:02
masak one could argue that there's a need for a "staged" Pod 6 spec, one stage which is... right.
moritz_ ... and then we ran into limitations which made us deviate from that course
masak but we don't have that today.
pmichaud right... "staged" is what I've been aiming at.
masak all we have is the full Pod 6. 18:03
moritz_ as far as I remember the process, at least
pmichaud similar to the way we "staged" the regex grammar and the compiler
having a separate regex/grammar engine is a huge plus
at least in the nqp/parrot world it is
masak I also suggest that we might learn more from integrating with Rakudo, since that hasn't been done yet.
pmichaud and I think a similar case can be made for pod6
regardless of which approach is taken, I think we will learn a ton (and end up with a very useful product) 18:04
I don't see that either approach is a dead end
so I'd recommend that tadzik++ take whatever approach is -Ofun for him and go with that 18:05
masak well, the standalone pod6 approach has been tried at least three times.
pmichaud also, if there's a separate pod6 documentation project for parrot, perhaps that should be the "uncoupled" pod6 track and tadzik++ can work on the "tightly integerated" track
masak: it has? 18:06
masak thought it was a separate pod5 project for Parrot
pmichaud maybe it's pod5 for parrot
[Coke] I'm not sure parrot needs an independent pod6 parser.
masak pmichaud: yes, both my draft and tadzik's proposal mentions that.
pmichaud sorry, I haven't read the drafts.
masak pmichaud: TheDamian's CPAN module, mberends's parser, and there's another CPAN module by a Russian guy. 18:07
pmichaud: four if you count lue++'s early-stages project.
PerlJam After thinking about how POD5 has been used, I think a deeply integrated POD6 will be fine. (POD5 is used as a general purpose markup for various things, but all of the tools that parse it (AFAIK) are written in Perl so we need to "run it through perl" anyway. This would be no different for pod6)
masak the places where Pod 6 shines over Pod 5 are mostly in deeper integration, IMHO. 18:08
PerlJam I also think that moritz_ would make the perfect mentor for this project :)
masak: yes, agreed.
18:09 icwiener left
pmichaud masak: okay. I was familiar with the CPAN modules, but not the others 18:09
I suspect that CPAN / Perl 5 really isn't a good match for pod6. Also it depends on what level of pod6 they were attempting to parse
anyway, I'll defer here to others' wisdom. 18:10
masak pmichaud: I agree that there are... issues around parsing Pod 6 outside of a Perl 6 compiler. 18:11
pmichaud Perl 6 compiler or Perl 6 grammar?
masak a compiler.
pmichaud okay. I'll have to re-read S26 and see if I agree. 18:12
masak those have to be resolved at some point. I suggest running headlong into these issues to discover them :)
pmichaud except that writing Pod that relies on a compiler would seem to avoid the issues as opposed to running into them :)
i.e., if we assume a compiler, then we don't really discover the issues that arise from not having one :) 18:13
benabik masak: To find walls, just run forward at top speed?
masak benabik: that's what I usually do. 18:15
are you questioning my methods? :P
benabik Just trying to learn from the masters. Although I think I'll wear a helmet if I try that one. ;-) 18:16
masak :)
pmichaud: oh, I meant partly the issues related to not having a compiler handy, and partly the issues related to having one. 18:17
PerlJam It would help if someone came up with a good use-case for no-compiler
masak PerlJam: CPAN or similar. 18:18
18:18 GinoMan left
masak I don't remember if the security-related Pod issues brought up on p6l were ever addressed entirely. 18:18
I think S26 mumbles something about 'compile-time constants' or some such.
anyway, it's *those* issues that I think are next up for exploration. 18:19
not the outside-a-compiler, separate-module issues. that's been done a few times.
and experience tells us that those projects have a tendency to fall by the wayside and bitrot rather than become *the* Pod 6 parser.
PerlJam well correlation is not causation as they say 18:20
masak true. nevertheless, that kind of project has been tried. 18:21
I'd say that TheDamian's module on CPAN is still the authoritative one. it's lagging just a little on S26, but it's still very feature-complete. if I were to write a standalone Pod 6 parser from scratch, I'd probably start by copying that one. 18:22
18:23 leprevost left
pmichaud afk, lunch 18:24
PerlJam re tadzik's proposal ... I still think that the fewer rakudo-specific features he has, the better and that he shouldn't highlight that it's tightly integrated into *rakudo* so much as integrated into STD or Perl 6 or something that indicates that it could be used for multiple implementations. 18:25
but at the end of the day he has to pick an implementation to use for his development environment and rakudo is a good choice :) 18:26
masak it would be excellent if (say) Niecza followed along in the development of the Pod features. but it might be a bit much for one GSoC-er to implement Pod in two implementations. 18:27
when's #phasers, btw? 18:28
diakopter 32
masak dz
diakopter dz?
masak phenny: "dziekuje"?
phenny masak: "Thank you" (pl to en, translate.google.com)
diakopter ahah
18:28 st-14258 left
diakopter pl? 18:28
18:29 plobsing left
masak I picked up a few bad habits on a board game forum many years ago :) 18:29
sjohnson polish
masak phenny: "zamiana kolorew?"?
phenny masak: "kolorew replacement?" (pl to en, translate.google.com)
18:30 jevin joined
masak huh. maybe "kolorew" never was a real word... :) 18:30
sjohnson masak: what is your first language?
masak sjohnson: Swedish.
phenny: "ostatnia raz"?
phenny masak: "last time" (pl to en, translate.google.com)
sjohnson masak: cool
18:30 kaare_ joined 18:32 mberends joined
masak phenny: "Kiedyś nie mogłem zaklęcia "lingrist", a teraz są jednym!"? 18:33
phenny masak: "Once I could not spell "lingrist" and now are one!" (pl to en, translate.google.com)
18:33 s1n left
masak GIGO :) 18:33
18:35 zby_home joined 18:40 icwiener joined 18:51 _buno_ joined 18:52 _buno_ left 19:07 jaldhar left 19:08 jaldhar joined 19:28 ymasory left 19:35 ymasory joined
tadzik masak: kolorów 19:35
also, ostatnI raz 19:36
and I have no idea what are you trying to say with the last one :)
am I late for #phasers btw?
masak aye
tadzik: the context is online board games. people don't want to stop playing, but sometimes they have to go because the world intrudes. 19:37
19:37 ymasory left
tadzik masak: how does it relate to the lingrist spell? 19:38
Also, sorry for being late, but I have nothing to report anyway
masak tadzik: it doesn't relate. that was just a TimToady quote from a couple days ago. 19:40
tadzik oic
masak tadzik: we were discussing GSoC a bit. you might want to backlog #phasers.
tadzik I surely will
moritz_ www.perlmonks.org/?node_id=896262 connect-4 with the regex engine :-) 19:53
masak is that the Fox from p6cc? 19:56
moritz_ might be 19:57
I don't know
tadzik my proposal got FixedAgain, if anyone still wants to check that out :) 20:00
20:01 bacek joined 20:05 ronoreck left, ronoreck joined 20:15 Rotwang joined 20:21 ymasory joined 20:28 plobsing joined 20:32 tyatpi_ joined 20:41 Holy_Cow left 20:43 pothos left 20:44 y3llow left, plainhao left 20:45 y3llow joined, pothos joined 20:48 pothos left, pothos joined 20:56 kaare_ left 20:57 donaldh joined 21:24 ymasory left 21:27 ymasory joined 21:46 ilogger2 joined, ChanServ sets mode: +v ilogger2
donaldh rakudo: sub test($x is rw) { $x = 'Hello' }; sub indirect(|$args) { test(|$args) }; my $salutation; indirect($salutation); say $salutation; 21:48
p6eval rakudo 405afa: OUTPUT«Hello␤»
donaldh my $salutation; my $capture = \($salutation); $capture.list.values[0] = 'Hello'; say $salutation; 21:49
rakudo: my $salutation; my $capture = \($salutation); $capture.list.values[0] = 'Hello'; say $salutation;
p6eval rakudo 405afa: OUTPUT«Cannot modify readonly value␤ in '&infix:<=>' at line 1␤ in main program body at line 22:/tmp/qflPi6hyqf␤»
donaldh Is there any way to 'cast' a capture reference to be rw ? 21:51
rakudo: my $x; my $capture = \($x is rw); 21:52
p6eval rakudo 405afa: OUTPUT«===SORRY!===␤You can't backslash that at line 22, near "($x is rw)"␤»
donaldh Do captures have to be readonly references in rakudo? 21:58
masak rakudo: my $signature = :($x is rw); say $signature.^methods 21:59
p6eval rakudo 405afa:
..OUTPUT«aritycountparamsACCEPTSperlNumericRealIntRatNumabsconjugateexploglog10sqrtrootsto-radiansfrom-radiansfloorceilingroundtruncatesigncisunpolarchrchrsrandsincostanseccoseccotansinhcoshtanhsechcosechcotanhasinacosatanatan2asecacosecacotanasinhacoshatanhasechacosechacotanhbytescapitaliz…
masak rakudo: my $signature = :($x is rw); say $signature.params
p6eval rakudo 405afa: OUTPUT«Parameter()<0x2d9b320>␤»
masak rakudo: my $signature = :($x is rw); say $signature.params[0].name
p6eval rakudo 405afa: OUTPUT«$x␤»
masak rakudo: my $signature = :($x is rw); say $signature.params[0].^methods 22:00
p6eval rakudo 405afa:
..OUTPUT«readonlynametypeconstraintsrwrefparcelcapturecopynamednamed_namesslurpyoptionaldefaultinvocantmulti_invocanttype_capturessignaturecanisadoeslistACCEPTSStrNumericSeqallanyonenonejoinelemsflatmapsortrotatefirstgrepreverseendminmaxminmaxpickrollclassifyreduceuniqkvkeysvaluespairspostc…
masak rakudo: my $signature = :($x is rw); say $signature.params[0].readonly
p6eval rakudo 405afa: OUTPUT«Bool::False␤»
masak donaldh: I generally associate readonliness with signatures, not captures.
donaldh masak: yep, but captures are readonly. 22:01
masak: signatures can declare rwness but captures cannot.
masak captures can't be *all* readonly, since they take part both in calling stuff and binding stuff. 22:02
donaldh This makes it difficult / impossible to write a generic implementation sub.
masak not sure I see what you mean.
'night, #perl6.
donaldh zavolaj binds a generic impl to a sub ($x is rw) is native { ... } 22:04
I can't find a way to use a capture to write to params that are defined is rw in the signature. 22:07
22:20 st-16473 joined, st-16473 left
donaldh niecza: my $salutation; my $capture = \($salutation); $capture.list.values[0] = 'Hello'; say $salutation; 22:21
p6eval niecza v4: OUTPUT«Unhandled exception: Unable to resolve method values in class List␤ at /tmp/V2fjkudTug line 1 (MAIN mainline @ 4)␤ at /home/p6eval/niecza/lib/CORE.setting line 1264 (CORE C525_ANON @ 2)␤ at /home/p6eval/niecza/lib/CORE.setting line 1265 (CORE module-CORE @ 39)␤ at
../home/p6eval/…
donaldh std: my $salutation; my $capture = \($salutation); $capture.list.values[0] = 'Hello'; say $salutation; 22:22
p6eval std 4608239: OUTPUT«ok 00:01 122m␤»
donaldh rakudo: my $x; my $capture = \($x); $capture[0] = 'Hello'; say $x; 22:33
p6eval rakudo 405afa: OUTPUT«Hello␤»
22:37 icwiener_ joined 22:42 plobsing joined 22:48 st-16714 joined 22:55 icwiener_ left 22:57 st-16714 left, nymacro joined 22:58 flatwhatson joined 23:02 plobsing left 23:14 st-16890 joined 23:29 icwiener joined 23:51 st-16890 left 23:54 st-17178 joined 23:55 st-17178 left 23:56 whiteknight joined 23:59 [particle] joined