»ö« 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.
00:01 Trashlord left 00:03 TheMartianGeek joined 00:04 jedai left, jedai joined 00:07 whiteknight joined
pmurias sorear: in mildew my $x := 1; my $y := $x; $x := 2; say($y) printed 1 00:10
00:10 sftp left
pmurias sorear: the BIND method was not called on the container but on an object representing an lexical scope entry 00:10
00:12 sftp joined 00:17 sftp left 00:18 sftp joined 00:20 alester joined 00:29 Eevee left 00:30 Eevee joined 00:36 zer0o left 00:37 pmurias left 00:42 icwiener left 00:45 zer0o joined 00:52 jrockway joined, orafu left, orafu joined, estrabd left 00:54 estrabd joined 01:07 alester left 01:09 kst joined 01:35 alester joined 01:41 whiteknight left 01:47 bacek left 02:00 bacek joined, crakrjak joined
crakrjak camelia really? 02:03
TimToady just for you 02:05
crakrjak how long has perl6 been into the making? 02:06
sjn many years \o/
crakrjak i remember reading about it a long time ago it seems
TimToady 10 years or so 02:07
crakrjak surprised its not production ready yet
TimToady we're trying to do something impossible, so it takes a while
crakrjak does it do all the modern stuff like authentication federation, orm, parallel processing, etc? 02:08
02:08 kst left
TimToady parallel is built-in; orm should be trivial with our repr interfaces 02:09
dunno about af
crakrjak neat
i have used perl for many years and recently i have been wondering if i shouldnt start using python more 02:10
TimToady we think a lot about multi-cores
crakrjak there is a party in my backyard
nice chatting with you 02:11
later!
TimToady likewise
02:17 MOAR-f00li5h joined 02:19 MOAR-f00li5h left
diakopter !addquote <TimToady> we're trying to do something impossible, so it takes a while 02:26
02:29 am0c joined 02:33 plobsing left 02:37 woosley joined 02:39 kst joined 02:43 alester left 03:08 donri left 03:11 estrabd left 03:12 estrabd joined
[Coke] I wonder if irc logs should render the NL char in output as an actual newline. 03:18
03:27 Su-Shee left 03:29 Su-Shee joined 03:31 ymasory left 03:33 ymasory joined, krunen left, woosley1 joined
[Coke] TimToady: I agree with your 03:34
... whoops. Statement regarding more caffeine. 03:36
03:36 woosley left 03:39 Khisanth left 03:47 plobsing joined 03:51 Khisanth joined 03:52 Khisanth is now known as Guest92045 03:57 envi joined 03:59 xinming_ is now known as xinming 04:02 orafu left, orafu joined 04:05 dayangkun joined
lue hello world! o/ 04:13
masak: yeah, that is out-of-date.
04:16 dayangkun left, dayangkun joined 04:21 risou joined
lue tadzik: I'll look more why into ambient material won't parse (and when I set \H+ as a possible blocktype, why =begin Text and such won't parse). There should be a @sample[3] though. 04:22
[to me, having to comment out a test because it doesn't work seems... ironic?] 04:23
04:23 ymasory left 04:57 zer0o left 04:59 MUILTFN joined 05:05 sufrostico left, sufrosti1o joined, ymasory joined
tylercurtis p 05:08
05:09 nymacro joined, dayangkun left
tylercurtis evidently accidentally sent that message. 05:09
05:12 dayangkun joined 05:25 jstathm joined 05:28 jimbo joined
jimbo t 05:29
05:31 jimbo left, jstathm left 05:43 MUILTFN left 05:47 ymasory left 05:49 MUILTFN joined 06:11 TheMartianGeek left 06:19 TheMartianGeek joined 06:23 TheMartianGeek left 06:42 justatheory left, dayangkun_ joined 06:45 dayangkun left, MUILTFN left 06:57 Guest92045 is now known as Khisanth 07:08 awoodland joined 07:23 Mowah joined 07:27 jaldhar left, jaldhar joined, dayangkun__ joined 07:30 dayangkun_ left 07:33 awoodland left 07:48 lateau joined 07:49 lateau left, lateau joined
tadzik wow wow, have you seen new Github issues? 07:52
07:58 dayangkun_ joined 08:00 dayangkun__ left 08:09 mj41 joined 08:19 noganex_ left 08:24 jimmy1980 left 08:29 dayangkun__ joined 08:32 dayangkun_ left 08:36 birdwindupbird joined 08:37 risou left 08:53 tty234 joined 09:03 molaf joined 09:36 MayDaniel joined 09:50 araujo left 09:52 dayangkun_ joined 09:54 dayangkun__ left 09:55 dayangkun__ joined 09:56 nymacro left 09:58 dayangkun_ left
TiMBuS my $who = ($raw<user> || $raw<server>) but role {}; #<- segfaults rakudo, cannot seem to figure out why 10:02
my $who = ($raw<user> || $raw<server>); $who does role {}; is fine 10:03
moritz rakudo: say (my $ || my $).WHAT
p6eval rakudo 4bf132: OUTPUT«===SORRY!===␤Contextual $*GOAL not found␤»
moritz submits rakudobug
TiMBuS: I suspect it might return some parrot-y thing from the || 10:04
TiMBuS seems fine with a cut down version in the repl tho
moritz TiMBuS: and assignment turns it into an Any or so
TiMBuS hmmm 10:06
rakudo: my $a = (my $ || 3) but role {method foo {say 'bar'}}; say $a.foo;
p6eval rakudo 4bf132: OUTPUT«bar␤Bool::True␤»
moritz rakudo: my $b; say (my $ || $b).PARROT 10:07
p6eval rakudo 4bf132: OUTPUT«Perl6Scalar->␤»
TiMBuS oh.
thats probably it
moritz what is $raw<server> in your program?
TiMBuS Match
10:08 dayangkun_ joined, MayDaniel left
moritz hm 10:09
and Match.Bool returns True?
TiMBuS well $raw is a Match, im not sure if the string its returning is a match or not. I forget how that works
10:10 dayangkun__ left
TiMBuS $raw.Bool is definitely true if that's what you mean 10:10
moritz just add a say $raw<server>.perl 10:11
TiMBuS yeah its just a match
moritz what abotu $raw<server>.Bool ? 10:12
TiMBuS Bool::True
moritz hm 10:13
then I don't understand it in the least
TiMBuS :[
jnthn ->...nothing? Hm. 10:16
(re the segfault)
Something looks odd there.
Leaking Parrot type feels like a good guess though. 10:17
TiMBuS Null PMC access in find_method('perl')
theres a good start
jnthn Ah
TiMBuS say $raw<user>.perl; say $raw<server>.perl;
so i guess $raw<user> is not a Match because it didnt.. match 10:18
10:18 Rotwang joined
TiMBuS got it 10:20
rakudo: my $f = 'fdas' ~~ /$<foo>='a'|$<bar>='b'/; say $f<b>.WHAT
p6eval rakudo 4bf132: OUTPUT«Proxy()␤»
TiMBuS welp, that looks hecka complicated and thinking give me wrinkles so 10:21
TiMBuS skips off
moritz TiMBuS: you have no <b> capture in that regex 10:24
10:26 nymacro joined
TiMBuS moritz, yeah i know, but it shouldnt crash rakudo about it 10:27
rakudo: my $f = 'fdas' ~~ /$<foo>='a'|$<bar>='b'/; say $f<b>.perl;
p6eval rakudo 4bf132: OUTPUT«Null PMC access in find_method('perl')␤ in <anon> at line 1310:CORE.setting␤ in 'Any::join' at line 1␤ in 'Mu::attribs' at line 1311:CORE.setting␤ in 'Mu::perl' at line 1315:CORE.setting␤ in main program body at line 22:/tmp/v156cpgav1␤»
TiMBuS so i guess.. it boild down to $a = Match.new(); say $a<foo>.perl 10:30
10:31 dayangkun__ joined 10:35 dayangkun_ left 10:36 h4nnibal joined
h4nnibal hi perlies 10:36
TiMBuS alright so im completely wrong now 10:37
moritz hi h4nnibal
TiMBuS my $imm = ($raw<user> || $raw<server>); my $who = $imm but role { }; 10:38
still segfaults
$imm.perl gives a match
which is $raw<server>
so. yeah.. 10:39
10:43 sirmacik joined
sirmacik Hi there 10:43
TiMBuS rakudo: my $f = 'fdas' ~~ /$<foo>='a'|$<bar>='b'/; say $f<foo>.clone
p6eval rakudo 4bf132: OUTPUT«(timeout)» 10:44
TiMBuS cool
rakudo: my $f = 'fdas' ~~ /$<foo>='a'/; say $f<foo>.clone
p6eval rakudo 4bf132: OUTPUT«(timeout)»
TiMBuS theeere we have it
sirmacik Maybe You know why rakudo gives me Segmentation Fault during compillation? wklej.org/id/509781/ and this is my modified PKGBUILD: wklej.org/id/509782/ 10:45
TiMBuS can't say i know anything about that 10:47
what OS?
moritz perl Configure.pl --parrot-config=/usr/bin/parrot_config --target=pir
sirmacik Archlinux
moritz wtf?
what's that --target doing there?
sirmacik that's rather one of the lines I've tried 10:48
;x
generally it stops on that error with or without any options
TiMBuS: what else do You want to know? 10:49
moritz sirmacik: uhm, did it even successfully configure with that bogus option?
sirmacik yes, but I think that this option is not the problem 10:50
moritz well, it surely indicates a problem
because Configure.pl is supposed to die on unknown options
seems it doesn't 10:51
hm
10:51 wallberg joined
moritz sirmacik: usually such segfaults come from "tainted" parrot environments 10:51
sirmacik: ie if you installed two parrot versions into the same location, and not all files where overridden
TiMBuS yeah thats all i can think of. have you installed an old old parrot
moritz sirmacik: or if a previous rakudo installation was there, and hasn't been cleaned out before or so 10:52
I haven't seen a rakudo build segfault in a clean environment for ages
TiMBuS a libparrot.so floating around somewhere would also be a problem
sirmacik I've fresh parrot-git 10:53
an there wwasn't any rakudo before. It's quite fresh installation
jnthn Any chance of getting a backtrace so we can see where it segfaults? 10:54
It may or may not help...
sirmacik ok, give me a second 10:55
TiMBuS this is why i now just use --gen-parrot =/ 10:57
10:59 am0c left 11:01 SHODAN joined, whiteknight joined 11:05 icwiener joined
sirmacik jnthn: this is log from the part with error wklej.org/id/509802/ 11:16
moritz can enums be monkey-patched? 11:17
11:17 h4nnibal left 11:18 wallberg left
jnthn wtf, Parrot crashes when turning PIR into a bytecode file?! 11:20
/usr/bin/parrot -o src/gen/perl6.pbc src/Perl6/Compiler.pir
That's...not something that's liable to fail. :/ 11:21
sirmacik: Any chance you can gdb /usr/bin/parrot and then r -o src/gen/perl6.pbc src/Perl6/Compiler.pir, and bt?
Or similar with your preferred debugger... :)
sirmacik gdb tells me that there are no debugging symbols in /usr/bin/parrot 11:22
tadzik did you --debugging=0 parrot? 11:23
dalek rors: 3d91060 | moritz++ | notes.pod:
some non-conclusive thoughts on error classification
jnthn Oh.
sirmacik └─> /usr/bin/parrot -t -o src/gen/perl6.pbc src/Perl6/Compiler.pir 11:25
error:imcc:loadlib directive could not find library `perl6_group' in file 'src/Perl6/Compiler.pir' line 10
11:27 Axius joined
tadzik has anyone tested Rakudo after Parrot's imcc_compreg_pmc merge? 11:29
moritz kinda hopes that the parrot folks have, prior to merging 11:30
doing that now...
11:33 gbacon joined 11:38 mtk left 11:41 Su-Shee left
moritz sirmacik: fwiw I also get some rakudo segfaults on newest parrot, though not in build 11:44
sirmacik: I recommend to use the parrot revision in the build/PARROT_REVISION file, then you should get a fairly stable rakudo
sirmacik ok, thanks 11:45
11:48 Su-Shee joined 11:49 mtk joined 11:54 Patterner left, pmurias joined 11:56 Psyche^ joined, Psyche^ is now known as Patterner 12:06 araujo joined
sirmacik moritz build with --gen-parrot has also failed with the following error wklej.org/id/509847/ 12:09
moritz sirmacik: what's the name of your make utility? 12:10
is it 'make' or 'gmake' or what?
12:10 wallberg joined
sirmacik make 12:11
GNU Make 3.81 12:12
moritz hm
12:16 Chillance joined 12:19 risou joined 12:28 MUILTFN joined 12:34 donri joined 12:46 gbacon left 12:58 Tedd1 left
moritz lolIblug: perlgeek.de/blog-en/perl-6/grant-re...ors-1.html 12:59
[Coke]: do you follow planetsix? or should I notify you separately when I blog grant progress reports?
jnthn moritz++ 13:00
donri I read that as lolibug 13:01
moritz also bugs people 13:02
jnthn -> huskvarna 13:04
13:05 Axius left 13:12 Rotwang left 13:19 lateau left 13:24 dayangkun_ joined 13:27 dayangkun__ left 13:30 lateau joined 13:35 birdwindupbird left 13:42 dayangkun_ left 13:48 lateau left 13:50 noganex joined 14:05 Mowah left 14:09 satyavvd joined 14:18 SHODAN left 14:21 SHODAN joined 14:25 JimmyZ joined
miso2217_ Am I missong something about the exemple on the regex backtracking in the Using Perl 6 book? : 14:26
perl 6: my regex word { \w+ [ \' \w+]? }; my regex dup { <word=&word> \W+ $<word> }; if 'strand and beach' ~~ m/<&dup>/ { say 'match'; } else { say 'no match'; }
perl6: my regex word { \w+ [ \' \w+]? }; my regex dup { <word=&word> \W+ $<word> }; if 'strand and beach' ~~ m/<&dup>/ { say 'match'; } else { say 'no match'; }
p6eval rakudo 4bf132, niecza v4-47-gfffa4cd: OUTPUT«match␤»
..pugs: OUTPUT«*** ␤ Unexpected "word"␤ expecting ":" or "("␤ at /tmp/CbZLs64Xp0 line 1, column 10␤»
miso2217_ rakudo: my regex word { \w+ [ \' \w+]? }; my regex dup { <word=&word> \W+ $<word> }; if 'strand and beach' ~~ m/<&dup>/ { say 'match'; } else { say 'no match'; }
p6eval rakudo 4bf132: OUTPUT«match␤»
miso2217_ rakudo: my regex word { :ratchet \w+ [ \' \w+]? }; my regex dup { <word=&word> \W+ $<word> }; if 'strand and beach' ~~ m/<&dup>/ { say 'match'; } else { say 'no match'; } 14:27
p6eval rakudo 4bf132: OUTPUT«match␤»
14:27 satyavvd left
miso2217_ the book says: "no match, doesn't match the 'and' in 'strand' without backtracking" 14:28
moritz rakudo: my regex word { \w+ [ \' \w+]? }; my regex dup { :ratchet <word=&word> \W+ $<word> }; if 'strand and beach' ~~ &dup { say 'match' } else { say 'no match' }
p6eval rakudo 4bf132: OUTPUT«match␤»
moritz hm
miso2217_ rakudo: my token word { \w+ [ \' \w+]? }; my regex dup { <word=&word> \W+ $<word> }; if 'strand and beach' ~~ m/<&dup>/ { say 'match'; } else { say 'no match'; } 14:29
p6eval rakudo 4bf132: OUTPUT«match␤»
14:31 SHODAN left
moritz rakudo: my regex word { \w+ [ \' \w+]? }; my regex dup { :ratchet <word=&word> \W+ $<word> }; if 'strand and beach' ~~ &dup { say 'match ', $/ } else { say 'no match' } 14:31
p6eval rakudo 4bf132: OUTPUT«match and and␤»
14:37 MayDaniel joined 14:40 takadonet joined
takadonet morning all 14:40
moritz rakudo: my token word { \w+ [ \' \w+]? }; my regex dup { :ratchet <word=&word> \W+ $<word> }; if 'strand and beach' ~~ &dup { say 'match ', $/ } else { say 'no match' } 14:42
p6eval rakudo 4bf132: OUTPUT«match and and␤»
moritz rakudo: my token word { \w+ [ \' \w+]? }; my regex token { <word=&word> \W+ $<word> }; if 'strand and beach' ~~ &dup { say 'match ', $/ } else { say 'no match' }
p6eval rakudo 4bf132: OUTPUT«Could not find sub &dup␤ in main program body at line 22:/tmp/LDgeMYyrW_␤»
moritz rakudo: my token word { \w+ [ \' \w+]? }; my token dup { <word=&word> \W+ $<word> }; if 'strand and beach' ~~ &dup { say 'match ', $/ } else { say 'no match' }
p6eval rakudo 4bf132: OUTPUT«match and and␤» 14:43
14:54 TheMartianGeek joined 14:58 [particle]1 is now known as [particle]
miso2217_ moritz: may be the exemple is just bad. I don't know if the :ratchet modifier (and token keyword) should control also releasing charachers from the start of the string. The test from the synopses pases as I would it expet to pass: 15:04
rakudo: if 'bazaar' ~~ /:ratchet a* a/ { say '3.1 match' } else { say '3.2 no match' }
p6eval rakudo 4bf132: OUTPUT«3.2 no match␤»
15:06 Tedd1 joined, plobsing_ joined, JimmyZ left 15:08 plobsing left 15:09 justatheory joined 15:11 kiffin joined, kiffin left 15:18 Trashlord joined 15:29 woosley1 left 15:30 MayDaniel left 15:46 masak joined
masak hello zebras. greetings from .pl 15:46
15:46 birdwindupbird joined
tadzik oh, Poland? 15:48
masak that's the one.
tadzik where are you?
masak kraków 15:49
how about you? :)
tadzik oh cool. Right now Izabelin, just outside Warsaw
and usually it's Warsaw
masak thought so.
tadzik business time?
masak yes. I'm here for a three-day CQRS course.
(CQRS is a silly acronym for a deeply cool concept.) 15:50
15:50 nymacro left 15:51 Chillance left
tadzik quick, a contest for the best match! 15:52
Cows Quite Rove Sweets. Hrm 15:53
masak Can 'Quit' Really Save?
sirmacik "CentOS 5.6 nareszcie wydany" ;F 15:54
tadzik ww? :) 15:55
sirmacik oh, wrong channel... sorry ;x
tadzik (:
masak phenny: "CentOS 5.6 nareszcie wydany"?
phenny masak: "CentOS 5.6 finally released" (pl to en, translate.google.com)
masak 'wydany' == 'out-given'?
sirmacik rather released
masak right. I'm thinking of the etymology. 15:56
tadzik close
you can be "wydany" as a wife
so you become a wife, you're "wydany za mąż"
phenny: "wydany za mąż"?
phenny tadzik: "issued for husband" (pl to en, translate.google.com)
tadzik notmuch 15:57
masak 'issued' and 'released' are sort of synonyms.
tadzik sirmacik: how are the packages? 15:59
sirmacik I have succedeed with building rakudo-git with stable parrot package from Arch's Community repository 16:00
masak \o/
sirmacik it was failing with --gen-parrot and parrot-git ;F
masak that's odd. 16:03
16:05 larsen_ left 16:06 larsen joined 16:08 jrockway left, sorear left, xinming left, felher left, rblackwe left, mathw left, cotto_work2 left 16:10 jrockway joined, sorear joined, xinming joined, felher joined, rblackwe joined, mathw joined, cotto_work2 joined, sjohnson joined, phenny joined, ronoreck joined, wolverian joined, jql joined, mdxi joined, kolibrie_ joined, jasonmay joined
masak is thinking of where to go eat 16:13
tadzik: got any suggestions?
tadzik masak: nah, I'm out of ideas
oh, about eating
hmm, I don't know anything Kraków-specific 16:14
masak ok. :)
tadzik hmm, I'm wondering
masak guess I'll just go to the main square and see what's on offer.
tadzik you can try gastronauci.pl 16:15
that's a community of people liking to eat and rating restaurants
masak ooh
I do love these: en.wikipedia.org/wiki/Pierogi
tadzik :)
masak so if I found such a place, I'd be happy.
tadzik masak: oh, they're everywhere
www.gastronauci.pl/restauracje/krakow
masak \o/ 16:16
tadzik you can easily buy those in a supermarket, put on a frying pan and they're actually good
masak Poland. I could totally live here.
well, I'm in a hotel, so no frying pans nearby.
tadzik I think you can find "Pierogarnia" quite easily
phenny: "pierogarnia"?
phenny tadzik: Language guessing failed, so try suggesting one!
tadzik phenny: I thought so
masak: a Pierogi-specific restaurant, like a Pizzeria
masak a "pirogeria" :) 16:17
tadzik masak: you can check a "pierogarnia" combobox on that site I gave you
masak excellent. I'm glad I asked.
and chance things are open on a Sunday evening? 16:18
moritz miso2217_: point is that every regex, if ratcheting or not, tries every start position until a match is found
tadzik moritz: www.gastronauci.pl/7294-pierogarnia...cek-krakow looks good
masak: I'm quite certain most of those are open
moritz miso2217_: the example doesn't need to backtrack to match
16:19 xinming left
masak "#perl6: helps you find a place to eat" 16:19
thanks, guys.
tadzik "Poland. You're welcome"
phenny: "gościnność"?
phenny tadzik: "hospitality" (pl to en, translate.google.com)
16:20 xinming joined
tadzik I think hospitality is known to be a good side of Poland 16:20
well, they say so :)
masak except for the people sitting in information desks. :(
both the girl at the airport and the woman at the train station were clearly uninterested in assisting a tourist. 16:21
oh well. I found the hotel without much trouble. 16:22
tadzik oh, the white-collar people happen to be annoying sometimes
16:23 eternaleye_ joined
masak I wondered if it was because I was speaking English. that generally gives mixed results around here. 16:23
moritz try with Swedish next time :-) 16:24
masak puts on a chef hat and sprinkles flour all over the place
bork bork bork! 16:25
masak --> nommery
16:26 mtk left, risou_ joined, eternaleye left 16:27 risou left, Helios` left, chitragupt left, _jaldhar joined, jaldhar left, Helios` joined
miso2217_ moritz: strange, this one works: if 'aaaab ab' ~~ / :ratchet (<[ab]>* ab) \W+ $0 / { say '3.1 match:', $/ } else { say '3.2 no match' } 16:28
rakudo: if 'aaaab ab' ~~ / :ratchet (<[ab]>* ab) \W+ $0 / { say '3.1 match:', $/ } else { say '3.2 no match' }
p6eval rakudo 4bf132: OUTPUT«3.2 no match␤»
moritz rakudo: say 'aaab' ~~ /<[ab]>* ab/; # should match 16:30
16:30 chitragupt joined
moritz rakudo: say 'aaab' ~~ /:ratchet <[ab]>* ab/; # shouldn't match 16:31
p6eval rakudo 4bf132: OUTPUT«aaab␤»
rakudo 4bf132: OUTPUT«␤»
moritz rakudo: say so 'aaab' ~~ /:ratchet <[ab]>* ab/; # shouldn't match
p6eval rakudo 4bf132: OUTPUT«Bool::False␤»
moritz rakudo: say so 'aaab ab' ~~ /:ratchet (a* b) \s $0/; # matches for the same reason as above 16:32
p6eval rakudo 4bf132: OUTPUT«Bool::True␤»
16:34 MayDaniel joined, kaare_ joined 16:37 amkrankruleuen left, amkrankruleuen joined 16:46 am0c joined
takadonet i got a lazy grammar! 16:57
moritz \o/ 16:59
moritz was lazy and let takadonet write the lazy grammar :-)
takadonet had to interface directly with parrot but I got somewhat what I wanted 17:00
17:00 mdxi left 17:02 jql left 17:03 mdxi joined 17:04 phenny left 17:05 sorear left 17:06 masak left 17:10 Zapelius_ joined, __rnddim__ joined, MayDaniel_ joined 17:11 Zapelius left, lue left, szbalint left 17:12 yahooooo joined 17:13 szbalint joined 17:14 MayDaniel left, sorear joined 17:15 rgrau joined 17:19 p6eval joined, ChanServ sets mode: +v p6eval 17:20 SHODAN joined
miso2217_ Ok, si is there any difference between the following two?: 17:21
rakudo: if 'aaaab ab' ~~ / :ratchet (<[ab]>* ab) \W+ $0 / { say '3.1 match:', $/ } else { say '3.2 no match' }
p6eval rakudo 4bf132: OUTPUT«3.2 no match␤»
miso2217_ rakudo: my regex word3 { :ratchet <[ab]>* }; my regex dup3 { :ratchet <word3=&word3> \W+ $<word3> }; if 'aaaab ab' ~~ m/<&dup3>/ { say '4.1 match:', $/; } else { say '4.2 no match'; }
p6eval rakudo 4bf132: OUTPUT«4.1 match:ab ab␤»
moritz miso2217_: (<[ab]>* ab) doesn't match under :ratchet 17:23
miso2217_: because the <[ab]>+ uses up the 'aaaab', and nothing left for the 'ab' to match
it doesn't even get to the \W+ 17:25
miso2217_ moritz: there is sitll ' ab' left for matching no? 17:27
17:28 MayDaniel_ left
miso2217_ moritz: I'm matching against 'aaaab ab' not just 'aaaab' 17:28
17:29 masak joined
moritz miso2217_: yes, but there's nothing in the regex that could match the ' ' 17:30
masak mmm, pierogi...
moritz miso2217_: the <[ab]>* matches 'aaaab'. Then the 'ab' of the regex is matched against the ' ab' of the string
miso2217_: since it's implicitly anchored, it doesn't match
masak tadzik: what're you using a lazy grammar for? 17:31
tadzik masak: I'm not 17:32
miso2217_ rakudo: if 'aaaab ab' ~~ / :ratchet (<[ab]>*) \W+ $0 / { say '3.1 match:', $/ } else { say '3.2 no match' } 17:34
p6eval rakudo 4bf132: OUTPUT«3.1 match:ab ab␤»
17:35 birdwindupbird left
masak tadzik: oops, sorry. mis-tab. 17:35
takadonet: what're you using a lazy grammar for? FASTA?
miso2217_ moritz: ok I see, my mistake. So should the previous one match or not under ratchet?
moritz miso2217_: it should match, but not if it's part of another regex 17:36
miso2217_: there's a fundamental asymmetry between calling a regex directly, and calling it from within another regex 17:37
miso2217_: in the first case there's an always-backtracking .*? implied at the front 17:38
miso2217_ moritz: ah ok. So what about the one from the book?
rakudo: my regex word3 { :ratchet <[ab]>* }; my regex dup3 { :ratchet <word3=&word3> \W+ $<word3> }; if 'aaaab ab' ~~ m/<&dup3>/ { say '4.1 match:', $/; } else { say '4.2 no match'; }
p6eval rakudo 4bf132: OUTPUT«4.1 match:ab ab␤» 17:39
moritz miso2217_: that's probably explained wrongly (or less than awesome) in the book 17:41
miso2217_ moritz: hmm... the book says it shouldn't match and it matches, this is clearly less than awesome :-) 17:43
17:47 Mowah joined 17:50 molaf left
moritz agreed 17:53
17:53 rgrau left, araujo left 17:54 risou_ left 17:57 Mowah left
miso2217_ so this is a book issue, the Backtracking chapter requires a working example? 17:58
moritz yes
miso2217_ rakudo: my regex word { \w+ }; my regex dup { <word=&word> \W+ $<word> }; if 'strand and beach' ~~ m/<&dup>/ { say 'match ', $/; } else { say 'no match'; } # the book says: no match, doesn't match the 'and' in 'strand' without backtracking
p6eval rakudo 4bf132: OUTPUT«match and and␤»
miso2217_ moritz: Ok, thx. for your time. 17:59
17:59 Chillance joined 18:00 Chillance left
moritz miso2217_: thank you for checking the book 18:00
pmurias what's the state of the book? 18:02
18:02 Chillance joined, envi left
miso2217_ pmurias: The best available doc on Perl 6, I would say. 18:02
moritz and LTA 18:03
moritz has difficulties finding a real world example of a regex that needs backtracking, even if carefully crafted 18:05
18:07 molaf joined
pmurias is there a kindle edition for the book? 18:07
dalek ok: 4507df3 | moritz++ | src/regexes.pod:
[regex] add a note about a wrong example, found by miso2217_++
moritz pmurias: we currently only have xhtml (though headers are missing) and pdf
miso2217_ pmurias: kindle reeds pdf 18:08
sorear good * #perl6
wolverian you don't really want to read pdf on a non-dx kindle. the screen is a bit too small.
pmurias sorear: hi
18:08 uniejo joined
pmurias has a non-dx kindle 18:09
moritz has a non-kindle
18:09 molaf left
miso2217_ pmurias: ah, a non dx won't be ok for A4/letter format 18:09
masak greetings sorear
moritz the build system of the book accepts arbitrary page dimensions 18:10
I just don't know how the output will look like
18:10 xaphod joined
moritz ok, speaking of the book 18:11
we wanted another chapter on statements (+ maybe expressions)
what should go into that chapter? 18:12
18:13 ymasory joined, alester joined
masak moritz: that's feels like a question without sufficient context. 18:15
why do we want another chapter on statements and maybe expressions?
what prompted the need?
moritz masak: I don't. You wanted, as well as others.
masak huh :) 18:16
masak doesn't remember conversations from day to day anymore... :/
moritz masak: more like 'from year to year' 18:17
masak ah. I feel better now.
moritz what was #phasers called before? 18:20
18:20 icwiener left 18:21 icwiener joined
tadzik perl6sketch? 18:21
Not that I remember :)
18:21 _sri joined
moritz I can't find it in the logs, maybe we discussed it at YAPC::EU 18:21
tadzik aaand, remember about the book-ideas
18:22 ymasory left 18:23 ymasory joined
pmurias sorear: what sort of analysis would niecza's .net backend most benefit from? 18:26
sorear moritz: #rakudosketch was a used for a while 18:27
IIRC 18:28
moritz sorear: thanks
18:28 _jaldhar left, _jaldhar joined 18:29 hudnix left
pmurias sorear: container elimination, type inference, checking if &take is used so we can drop CPS? 18:30
sorear CPS-dropping is unfeasable because it requires global analysis 18:31
18:32 phenny joined
sorear type inference belongs in the middle/front end, because 90% of its value is catching type errors at compile time 18:33
so I guess that leaves container elimination
18:35 mj41 left
pmurias what are the things that make niecza slower than C#? 18:39
18:39 imamelia joined
imamelia Hey, I need a bit of help with the Perl Package Manager. 18:40
masak imamelia: just keep in mind that this is #perl6, not #perl5.
imamelia ...Okay. 18:41
18:41 TheMartianGeek left, imamelia is now known as TheMartianGeek
TheMartianGeek Well, I used it only once before, and I've forgotten how to add new modules. 18:41
pmurias sorear: other than containers, CPS and dynamic typing
TheMartianGeek (And apparently forgotten to change my nick...)
pmurias TheMartianGeek: why not ask on #perl?
TheMartianGeek Oop, I"ll be back in a minute...
sorear pmurias: boxing, generic calling conventions, ... 18:52
18:58 jql joined 19:00 am0c left 19:02 ymasory left 19:04 ymasory joined
pmurias sorear: what has the biggest impact? 19:05
19:08 masak left
sorear dunno 19:08
19:09 masak joined
masak Niecza has ruined my ability to spell 'Nietzsche'. 19:10
19:13 Alias_ joined 19:15 Alias left 19:19 ymasory left 19:25 alester left 19:30 s1n left, silent_h_ joined 19:42 SHODAN left 19:45 ymasory joined
tadzik :) 19:46
19:52 zer0o joined
dalek ok: e0c859e | moritz++ | src/multi-dispatch.pod:
[mmd] MAIN example
19:54
19:55 __rnddim__ is now known as lue
lue hello world! o/ 19:56
tadzik hello lue
TheMartianGeek Hi.
sorear Hello lue.
19:58 proller joined
masak hellue! 19:59
tadzik masak: how are Pierogis? 20:00
masak they were all that I wished for, and more. :)
colomon where are there pierogis?
TheMartianGeek Well, I can't figure this out.
The more programming I do, the more I start to hate Windows...
masak colomon: in Kraków. 20:01
moritz TheMartianGeek: was the same for me
masak (for example)
colomon alas, that's a bit far for me to make it there for dinner. :(
masak TheMartianGeek: the more programming I do, the less Windows seems to matter to me.
colomon: but rest assured that I would welcome you with open arms :)
colomon not if you knew how many pierogis I'd eat. I love those things. ;) 20:02
masak I bought mine.
I'd assume that if you ate a lot, you'd pay correspondingly :P 20:03
TheMartianGeek I suppose I couldn't just move Gtk2.pm and the files that go with it into C:\Perl64\site\lib... 20:05
pmurias masak: you are in Kraków?
masak pmurias: yes! where are you?
pmurias Wrocław
masak: what brought you to Kraków? 20:06
masak pmurias: a three-day course for $work.
pmurias: ah, Wrocław. that's what I thought. 20:07
moritz hopes it tastes good
masak moritz: :P
sorear moritz: I'm looking at perl6/errors now; did you ever see STD.pm6 around line 5980, where 'Confused' is s|||'d into a bunch of different messages? 20:21
moritz sorear: no, thanks for pointing it out 20:22
sorear I think EX::Matcher can be written like when :message<Foo> & :subsystem<bar> { ... } 20:24
masak it's 'X::', no?
moritz let's not bikeshed about that :-) 20:25
20:25 silent_h_ left
moritz sorear: the matcher isn't the problem - it can either be a junction or a class with an overriden .ACCEPTS 20:25
masak no, I'm not willing to bikeshed on that. just seem to recall that it was, according to some Apocalypse or other. 20:26
moritz sorear: the big problem is really how to presen the category values
sorear: for example if I represent the list of phasers as an enum, and soembody adds more phasers, can he augment that enum? 20:27
dalek rors: b3bf1e3 | moritz++ | error-list.txt:
missing erros messages from STD, sorear++ for pointing them out
20:30
20:32 TheMartianGeek left 20:35 kaare_ left
moritz phenny: "vydayutsya"_ 20:35
phenny: "vydayutsya"?
phenny moritz: Language guessing failed, so try suggesting one!
moritz phenny: "vydayutsya" ru?
sorear phenny: ru:"vydayutsya"? 20:38
phenny: "ru:vydayutsya"?
phenny sorear: "ru: vydayutsya" (ru to en, translate.google.com)
masak :)
20:39 takadonet1 joined
jnthn phenny: видаюця? 20:39
phenny: "видаюця"?
phenny jnthn: "vidayutsya" (ru to en, translate.google.com)
jnthn :)
dalek rors: 7862889 | moritz++ | error-list.txt:
[error-list.txt] add quotes to some error messages, more errors, error message modifiers
jnthn phenny: "выдаюця"? 20:40
phenny jnthn: "vydayutsya" (ru to en, translate.google.com)
jnthn heh...
There's probably a few more permutations. The joy of translit... :)
sorear is it a proper name? 20:41
jnthn No idea :)
20:41 takadonet left
jnthn It's not a word I recognize. 20:41
20:41 MayDaniel joined
moritz sorear: somebody in #mojo used it like a verb 20:41
sorear phenny: "en:vydayutsya"? 20:42
phenny sorear: "and: vydayutsya" (nl to en, translate.google.com)
moritz sorear: but that doesn't mean it means anything :-)
masak if it's a verb, then it's a reflexive one.
sorear phenny: "en:ru:vydayutsya"?
phenny sorear: "en: ru: vydayutsya" (ru to en, translate.google.com)
sorear sbp: can phenny tanslatate waay from english? 20:43
20:43 MayDaniel left 20:48 TheMartianGeek joined
sbp phenny: en fr "tell sorear that yes, she can!"? 20:48
phenny sbp: "sorear dire que oui, elle peut!" (en to fr, translate.google.com)
20:49 xinming left, xinming joined
moritz (the result doesn't sound quite correct, but that's not phenny's fault) 20:50
phenny: "sorear dire que oui, elle peut!"?
phenny moritz: "sorear say that yes it can!" (fr to en, translate.google.com)
moritz that's what I thought
masak phenny: "dit a sorear que oui, elle peut!"? 20:51
phenny masak: "sorear told that yes it can!" (fr to en, translate.google.com)
masak fails French :P
phenny: "dis a sorear que oui, elle peut!"?
phenny masak: "sorear say that a yes, she can!" (fr to en, translate.google.com)
moritz it confuses object and subject
sorear also imperative and indicative
masak maybe indirect objects are tricky for it. 20:52
moritz indirect object syntax is tricky for me too
masak :)
moritz (both in p5 and p6, for that matter)
tadzik indirect object syntax in 6? 20:53
lue
.oO(Je parles un peu français parce que j'ai un classe de français à l'école.)
er, s/parles/parle/
moritz std: new :Int
p6eval std 4608239: OUTPUT«ok 00:01 118m␤»
moritz same as Int.new
moritz hates it
tadzik . o O ( moi capote ein buton, marchon )
masak o.O
tadzik or whatever, I know fonetics :)
sbp no, object and subject confuses it
tadzik oh wow
rakudo: say sqrt :5 20:54
p6eval rakudo 4bf132: OUTPUT«===SORRY!===␤Malformed radix number at line 22, near ""␤»
moritz wait
masak no-one said Rakudo implements it :)
moritz shouldn#t the invocant colon come after it?
masak btw, I doubt that the colon can really be there.
moritz std: new Int:
p6eval std 4608239: OUTPUT«ok 00:01 121m␤»
masak new Int:
yes.
moritz std: new
p6eval std 4608239: OUTPUT«ok 00:01 117m␤»
tadzik pffff
masak huh.
moritz std: foo
p6eval std 4608239: OUTPUT«===SORRY!===␤Undeclared routine:␤ 'foo' used at line 1␤Check failed␤FAILED 00:01 117m␤»
masak stdbug?
moritz new is ok, foo not?
std: foo 5: 20:55
p6eval std 4608239: OUTPUT«ok 00:01 120m␤»
moritz *that's* indirect object syntax
moritz still hates it
masak :)
then don't use it.
sorear niecza: say chars 12:;
p6eval niecza v4-47-gfffa4cd: OUTPUT«===SORRY!===␤␤Invocant handling is NYI at /tmp/q8GHI45Yz0 line 1:␤------> say chars 12:⏏;␤␤Unhandled exception: Check failed␤␤ at /home/p6eval/niecza/boot/lib/CORE.setting line 388 (CORE die @ 2)␤ at
../home/p6eval/niecza/src/STD.pm6 line 1141 (…
sorear aww.
tadzik aciidentally remove it from the spec :)
sorear I think it used to work...
masak moritz: it's partly for emulating the 'print STDOUT @stuff' thing. 20:56
moritz: that becomes 'print $*OUT: @stuff' in p6.
moritz masak: I know. I still hate it.
tadzik: he, I could try to temporarily stop email notifications and dalek, and patch it out :-)
20:57 colomon left
sorear moritz: hide it in a branch marge, nobody reads those 20:57
20:57 imamelia joined
moritz sorear: :-) 20:57
tadzik :)
masak go for it.
moritz it seems nobody here is particularly attached to it, right?
20:57 TheMartianGeek left, imamelia is now known as TheMartianGeek
tadzik no worries, we will provide cover fire 20:58
quick! break rakudo!
masak I'm not attached to it. but I would perhaps reserve judgement until we have tried it out a little.
moritz well, let's wait for a veto from TimToady -- if that doesn't come, I'll happily remove it next week
masak hating something on paper is just as bad as liking something on paper :)
but I'm generally happy about parts of the spec that no-one cares for disappering. :) 20:59
moritz masak: I've seen TimToady use it as input to std here on #perl6
masak: it always took me quite some time to parse it correctly myself 21:00
lue What is this indirect object syntax for, anyway? 21:01
masak lue: see my explanation above.
lue: it's at least partly for emulating p5 indirect object syntax.
and p5 indirect object syntax is generally not well-liked.
tadzik to be gentle 21:02
moritz in fact people have gone great length to remove all uses of it from the core docs, except in those spots where the syntax is explained
masak but p6 removes the reason for not liking it in p5, namely that things get hard to parse (by the parser).
lue was there ever a reason for it besides another WTDI? 21:03
moritz masak: it was never about the parser, always about humans
masak: the parsing rules are well defined, even if a bit odd
masak no, even the parser gets flakey due to things like module load order. 21:04
see mst's post about it.
moritz foo bar $stuff # parsed as bar->foo($stuff) if bar is not predeclared as a function
21:05 benabik left
tadzik bleh 21:05
masak exactly. 21:06
tadzik heh, I remember this indirect method calls examlep
my pal fires up `perl` in the shell, of course nothing happens, so he writes `perl` once again, then `prel` once again 21:07
after my "press ^D" we see "method prel not found for invocant of class perl"
or some other way around
masak :(
we could really use a good REPL there instead of... nothing.
tadzik I actually fired -MO=Deparse to see wtf 21:08
21:08 frooh left, frooh joined 21:09 mikemol left
moritz I don't like the case foo (some lengthy expression): 21:09
where the : in the end changes the meaning of the leading foo
tadzik yeah, disturbing 21:10
masak there's a similar garden-path problem in the Chinese language. 21:11
a single 的 somewhere halfway down a sentence can change the whole reading of the sentence so far.
it's especially clear when you're doing real-time translation while reading text. 21:12
21:12 TiMBuS joined
masak I hope I didn't just give TimToady a linguistic reason to keep the feature :P 21:12
21:16 y3llow_ joined 21:17 pothos_ joined 21:18 MUILTFN left, pothos left, pothos_ is now known as pothos 21:19 y3llow left, y3llow_ is now known as y3llow
masak 'night, #perl6 21:19
21:19 masak left
lue goodnight masak o/ 21:19
21:20 ggoebel joined 21:23 bacek left 21:25 dual left 21:29 Rotwang joined 21:35 dual joined 21:36 _jaldhar left, proller left 21:45 PacoLinux left 21:50 bacek joined
lue moritz: in error-list.txt (in the errors repo), did you mean obsolete on line 30 (instead of obsolescent)? 21:52
21:56 tylercurtis left, sivoais left, tylercurtis joined, sivoais joined
miso2217_ phenny: выдаются 22:05
phenny: "выдаются"?
phenny miso2217_: "issued" (ru to en, translate.google.com)
22:05 Rotwang left
miso2217_ moritz: I think you were trying to translate this russian word: "выдаются" 22:07
22:18 donri left 22:43 icwiener left 22:59 sufrosti1o left, sufrostico joined 23:07 donri joined 23:11 dayangkun_ joined, dayangkun__ joined 23:14 dayangkun joined 23:15 dayangkun_ left 23:16 dayangkun__ left 23:22 risou joined 23:25 pmurias left 23:30 nymacro joined
miso2217_ rakudo: if "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18" ~~ m/^^ [.*? ','] ** 14 P / { say "\t match"; } else { say "\t no match"; } 23:32
p6eval rakudo 4bf132: OUTPUT«(timeout)»
miso2217_ rakudo: if "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18" ~~ m/:ratchet ^^ [.*? ','] ** 14 P / { say "\t match"; } else { say "\t no match"; }
p6eval rakudo 4bf132: OUTPUT« no match␤»
sorear What's "P" for? 23:33
miso2217_ moritz: An idea for the Backtracking paragraph of the book, (taken from: www.regular-expressions.info/catastrophic.html) 23:34
sorear: it's only to demonstrate the Backtracking in the book, the current example is bad. 23:35
moritz: if "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18" ~~ m/^^ [.*? ','] ** 14 P / { say "\t match"; } else { say "\t no match"; }
23:36 imamelia joined
miso2217_ moritz: if "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18" ~~ m/:ratchet ^^ [.*? ','] ** 14 P / { say "\t match"; } else { say "\t no match"; } 23:36
23:36 imamelia left, imamelia joined 23:37 TheMartianGeek left, imamelia is now known as TheMartianGeek 23:41 risou_ joined 23:43 risou left
sorear niecza: my $i; "aaaaaaaaa" ~~ / [a || a]* { $i++ } <!>/; say "Tried to match $i ways@ 23:44
niecza: my $i; "aaaaaaaaa" ~~ / [a || a]* { $i++ } <!>/; say "Tried to match $i ways"
p6eval niecza v4-47-gfffa4cd: OUTPUT«===SORRY!===␤␤Any()Unable to parse double quotes at /tmp/xJZmcqFZzU line 1:␤------> aaa" ~~ / [a || a]* { $i++ } <!>/; say "⏏Tried to match $i ways@␤Couldn't find final '"'; gave up at /tmp/xJZmcqFZzU line 1 (EOF):␤------> i++
..} <!>/; say "…
niecza v4-47-gfffa4cd: OUTPUT«Tried to match 2036 ways␤»
sorear niecza: my $i; "aaaaaaaaaaaa" ~~ / [a || a]* { $i++ } <!>/; say "Tried to match $i ways"
p6eval niecza v4-47-gfffa4cd: OUTPUT«Tried to match 16369 ways␤»
sorear niecza: my $i; "aaaaaaaaaaaaaaaaa" ~~ / [a || a]* { $i++ } <!>/; say "Tried to match $i ways"
p6eval niecza v4-47-gfffa4cd: OUTPUT«Tried to match 524268 ways␤»
sorear niecza: my $i; "aaaaaaaaaaaaaaaaaaaaa" ~~ / [a || a]* { $i++ } <!>/; say "Tried to match $i ways" 23:45
p6eval niecza v4-47-gfffa4cd: OUTPUT«(timeout)»
sorear niecza: my $i; "aaaaaaaaaaaaaaaaaaaa" ~~ / [a || a]* { $i++ } <!>/; say "Tried to match $i ways"
p6eval niecza v4-47-gfffa4cd: OUTPUT«(timeout)»
sorear niecza: my $i; "aaaaaaaaaaaaaaaaaaa" ~~ / [a || a]* { $i++ } <!>/; say "Tried to match $i ways"
p6eval niecza v4-47-gfffa4cd: OUTPUT«Tried to match 2097130 ways␤»
sorear miso2217_: perhaps useful
23:49 hudnix joined 23:51 risou_ left