»ö« 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 araujo joined 00:02 daniel-s left
japhb Switching to bigint ops, Str.Numeric() stress is about 10% slower again, but does way better in the type correctness test. 00:03
dalek p/nfa: 5680b10 | jnthn++ | src/QRegex/NFA.nqp:
Fix NFA construction for the empty literal, so / '' / now gets its NFA built properly. Gets 45-smartmatch.t building and passing again.
jnthn japhb: Well, correct first, then we can work on performance. The bigint code only just landed; I'm sure there's some room yet for making things faster :) 00:04
japhb jnthn, yup, my feelings exactly. :-) 00:05
Sanity check -- Are the following true statements: 1. It doesn't make any sense to do 'my int $foo :=', because you can't bind to a native var. 2. For 6model types (including importantly Int), binding is faster than assignment. 00:07
jnthn Both correct 00:09
And in the case of 2 the optimizer should be able to do something intelligent to give a further benefit at some point too. 00:10
japhb Excellent, thank you jnthn++
jasonmay perl6: say ...; 00:30
p6eval rakudo abc35c: OUTPUT«Failure.new()␤»
..pugs b927740: OUTPUT«*** Cannot use this control structure outside a 'routine' structure␤ at /tmp/y_QZfP1KIL line 1, column 5-8␤»
..niecza v11-23-g18f7db0: OUTPUT«Unhandled exception: >>>Stub code executed␤ at /tmp/I8yVseOS5W line 1 (mainline @ 1) ␤ at /home/p6eval/niecza/lib/CORE.setting line 2224 (ANON @ 2) ␤ at /home/p6eval/niecza/lib/CORE.setting line 2225 (module-CORE @ 58) ␤ at /home/p6eval/niecza/lib/CORE…
jnthn 'night, #perl6
diakopter o/
japhb o/ 00:31
00:39 Guest52379 left, whiteknight joined, whiteknight is now known as Guest5557
japhb nom: for 0 .. 20 -> $exp { my $foo = 16 ** $exp; say "broken if ! @ 16 ** $exp" if !$foo; say "broken unless @ 16 ** $exp" unless $foo; } 00:43
p6eval nom abc35c: OUTPUT«broken unless @ 16 ** 16␤broken unless @ 16 ** 17␤broken unless @ 16 ** 18␤broken unless @ 16 ** 19␤broken unless @ 16 ** 20␤»
japhb jnthn, moritz: ^^ 00:44
jnthn, moritz: note that on a 32-bit system, the threshold where unless starts to fail is 16 ** 8 00:45
rjbs perl6: my @a; say defined @a; 00:47
p6eval rakudo abc35c, niecza v11-23-g18f7db0: OUTPUT«Bool::True␤»
..pugs b927740: OUTPUT«1␤»
rjbs Is @a every undefined? 00:48
s/y//
japhb nom: my @a := Mu; say @a.defined; 00:50
p6eval nom abc35c: OUTPUT«Bool::False␤»
japhb rjbs: ^^ 00:51
Mind you, that's kinda pathological. :-)
01:04 tokuhirom left 01:19 woosley joined 01:21 envi_ joined 01:22 envi_ left, envi_ joined, thou left
rjbs perl6: my @a := Mu; say (@a // 123) 01:25
p6eval rakudo abc35c, niecza v11-23-g18f7db0: OUTPUT«123␤»
..pugs b927740: OUTPUT«*** No such subroutine: "&Mu"␤ at /tmp/MILb5BRICn line 1, column 1-12␤»
rjbs Thanks.
01:32 smash left 01:53 wolfman2000 joined 02:01 hypolin joined 02:06 alvis left 02:20 alvis joined 02:34 ethndbst left 02:35 ethndbst joined, ethndbst left, ethndbst joined 02:42 eiro_ joined 02:43 eiro left 02:56 donri joined
[Coke] ho, rjbs. 03:01
03:03 Guest5557 left
rjbs ahoyhoy 03:04
03:05 cooper left 03:06 cooper joined 03:07 ethndbst left
dukeleto what is the new "master" branch of Rakudo again? nom ? 03:23
are releases being cut from nom?
or is that the dev tip? 03:24
03:26 rjbs left, Tamal joined
Tamal hello every one 03:27
hello 03:28
dukeleto Tamal: howdy 03:31
03:31 risou is now known as risou_awy
Tamal :) 03:31
ci need help
GM
is their any web framework for perl6 03:32
?
03:32 replore joined, ethndbst joined
donri yes 03:38
Tamal hello 03:40
can u tell ?
is their any web framework for perl6 ?
donri yes 03:45
Tamal where ? 03:48
plz tell
03:49 localhost left
lichtkind just look under module.perl6.org 03:50
03:50 Tamal left
lichtkind its called web.pm 03:50
just look under modules.perl6.org
colomon dukeleto: nom is the master now. I think there have been a couple of releases from it. 03:56
dukeleto colomon: awesome 04:00
colomon mind you, it still is missing some features that the old master (now dubbed "b") has. 04:01
dukeleto just submitted a hague grant for PL/Perl6 (Rakudo in Postgres as a stored procedure language)
colomon ooo, interesting!
dukeleto colomon: do most perl 6 modules still work with nom ? 04:02
colomon: pgxn.org/dist/plparrot/html/plperl6.html
colomon I'm not up-to-date, but last time I checked the answer was no.
dukeleto :(
colomon: is there a list somewhere of regressions from "b" to nom ? 04:03
colomon not that I know of. 04:04
:( indeed.
it may be I've just been out of the loop.
dukeleto has been in another loop universe if colomon has been out of the loop 04:05
04:07 envi_ left 04:09 birdwindupbird joined
lichtkind good night 04:13
04:14 lichtkind left 04:15 daniel-s joined 04:31 mkramer joined
moritz nom: say so 2**64 04:39
p6eval nom abc35c: OUTPUT«Bool::True␤»
moritz nom: say so 2**32
p6eval nom abc35c: OUTPUT«Bool::True␤»
moritz nom: say so 16 ** 18 04:40
p6eval nom abc35c: OUTPUT«Bool::True␤»
moritz nom: say "OH NOEZ" unless 16 ** 18 04:41
p6eval nom abc35c: OUTPUT«OH NOEZ␤»
moritz jnthn: it seems that 'unless' doesn't go through .Bool, but tries to unbox the int idrectly
jnthn: or maybe it is related to the boolification protocol (which I don't grok)? 04:47
04:47 packetknife joined 04:49 mkramer left, molaf joined
sorear good * #perl6 04:52
04:59 ethndbst left 05:01 ethndbst joined, ethndbst left, ethndbst joined 05:02 cognominal left 05:03 birdwindupbird left 05:08 cognominal joined 05:09 ethndbst left, cbk1090 joined 05:11 birdwindupbird joined 05:13 odoacre left, odoacre joined 05:21 molaf left 05:28 packetknife left 05:30 kaleem joined 05:31 thou joined 05:34 autin joined 05:35 Chillance joined
Timbus nom: say "foo" unless 1 05:55
p6eval nom abc35c: ( no output )
Timbus nom: say "foo" unless 2 ** 64
p6eval nom abc35c: OUTPUT«foo␤»
Timbus heh
nom: say "foo" if !2 ** 64 05:56
p6eval nom abc35c: ( no output )
Timbus :I
nom: say "foo" if not 2 ** 64 05:57
p6eval nom abc35c: ( no output )
Timbus nom: say "foo" if 2 ** 64
p6eval nom abc35c: ( no output )
Timbus i see 05:58
cbk1090 Timbus, Do you know any good examples of perl6 Grammars on the net?
Timbus aside from std.pm 05:59
hmm many of the languages in parrot use them
check if winxed and lua use them.. 06:00
tadzik no, yes, iirc
plenty of modules from modules.perl6.org use some sort of grammras
Timbus github.com/fperrad/lua/blob/master...grammar.pg
cbk1090 ok... 06:01
Timbus github.com/parrot/cardinal/blob/ma...grammar.pg
theres two good ones
were you looking more for like, a tutorial or simplified breakdown of grammars
moritz the JSON grammar is nice 06:02
Timbus nom: say "foo" if (2 ** 64 but True) 06:03
p6eval nom abc35c: ( no output )
Timbus pfft
tadzik nom: say 2 ** 64
moritz github.com/moritz/json/blob/master...Grammar.pm
p6eval nom abc35c: OUTPUT«18446744073709551616␤»
tadzik nom: say 2 ** 128
p6eval nom abc35c: OUTPUT«340282366920938463463374607431768211456␤»
tadzik awesome :>
Timbus is it using gmp
tadzik nom: say (2 ** 128).WHAT
p6eval nom abc35c: OUTPUT«Int()␤»
tadzik Timbus: libtommath 06:04
Timbus never even heard of it
im assuming its not as fast but more portable. because thats basically how it always goes
moritz neither
Timbus when comparing to gmp
tadzik neither 06:05
until recently, "libtommath" "nqp" "awesome"
Timbus lol
hackage.haskell.org/trac/ghc/wiki/R...asurements well heres some graphs and junk. it'll do 06:10
cbk1090 here is what I have so far.... pastebin.com/nMpp60yB 06:11
I'm not sure if I use rule or token...? 06:12
I was using the JSON::Tiny::Grammar as an example. 06:13
Timbus tokens have significant whitespace. rules don't
cbk1090 ok then I'll use rules. 06:14
Timbus so tokens are more like individual units i guess
sooo whats stardate? 06:15
cbk1090 oh sorry I changed that to date.
Timbus it can't be \N though..
well it can
cbk1090 but sence I was using Zulu time I thought it would be cool to call it stardate. :)
I did use rule date{ \d**4 \- \d\d \- \d\d T \d\d\ : \d\d\ : \d\d Z } but it didn't work. 06:16
Timbus well i guess it depends on your usage 06:18
cbk1090 I'm testing it by doing this: if Record::Grammar.parse($line) { say "MATCH FOUND USING GRAMMER";} else {say "GRAMMAR NOT FOUND.";}
Timbus yeah that'd work. 06:20
so what are you parsing out 06:21
cbk1090 then is should match TOP right?
Timbus yes
cbk1090 the record a line of text stored as: date {TAB} topic {TAB} remarks 06:22
06:23 ethndbst joined, ethndbst left, ethndbst joined
Timbus well yeah, but if its tab delimited, why not just have date, topic and remark as '.+' 06:23
cbk1090 I think I did something like that at first but it didn't work so I found another example and went with the \N+ 06:25
Timbus does the string you are parsing contain any newlines anywhere? 06:26
cbk1090 well no I don't think so, maybe at the end..? 06:27
Timbus well, \N+ seems inappropriate in that case 06:28
\T matches anything but a tab
you should consider using that, unless your line has tabs inside it that aren't delimiters 06:29
cbk1090 the line of text is made like this: $db.say("$dateStamp \t $topic \t $remarks");
I use tabs 06:30
Timbus i mean, if $remarks has a tab in it, 06:32
it might make it a bit messy
cbk1090 the input is taken from the commnd line (topic_remarks)
no remarks will not have a tab ever.
after the input is given the dateStamp is added. 06:33
Timbus in that case, rule parse { <date>=[\T*] \t <topic>=[\T*] \t <remarks>=[\T*] }
uh, rule TOP 06:34
cbk1090 so can you explain <date>=[\T*] for me?
Timbus sure 06:35
cbk1090 as I understand I define date or topic as another rule..?
sorear <date>=[\T*] is a syntax error
perhaps you meant $<date>=[\T*]
Timbus $<data>
beaten
:[ 06:36
it's how you name a submatch in perl6 grammars, without having to make a whole new rule essentially. 06:37
06:39 replore left
Timbus perlcabal.org/syn/S05.html#Named_sc...g_brackets cbk1090 06:39
06:39 replore joined 06:40 koban joined, koban left
cbk1090 ok I'll work with that for a bit. Thank you very much. 06:42
06:50 ethndbst left, autin left 06:57 wtw joined 06:58 cognominal_ joined 07:01 cognominal left 07:39 vmspb joined
sorear o/ vmspb 07:46
vmspb hi 07:47
08:00 ethndbst joined, ethndbst left, ethndbst joined 08:01 vmspb left 08:05 worr left 08:22 vmspb joined 08:35 packetknife joined 08:38 Saran joined
Saran A newbee here :) 08:39
*newbie
08:45 packetknife left
Saran Any one out there? 08:47
Looking forward to contribute on parrot opensource
08:49 mj41 joined 08:50 cognominal joined 08:52 cognominal left, cognominal_ left 08:53 cognominal joined
cognominal Saran, if you are interested in parrot the VM as opposed to Perl 6, a language implemented on top of it, #parrot on irc.perl.org is a better channel that here. 08:55
08:55 thou left
cognominal I mean #parrot would be a more appropriate channel. 08:55
jnthn morning, #perl6 08:58
Saran ok.thanks < cognominal > 08:59
jnthn moritz, japhb: Suspect it's boolification protocol; will fix later today. 09:00
Saran url for parrot..on irc.perl.org? 09:02
cognominal Aran, irc.perl.org is the server and #parrot the channel 09:04
09:06 ethndbst left 09:23 Saran left 09:34 kaleem_ joined 09:38 kaleem left 09:43 muixirt joined
muixirt good morning 09:43
congratulations for bigint and the speedups of rakudo perl made possible! 09:44
Woodi perl6: my $r = ':1'; my Int $l = substr( $r, 1, $r.bytes ); say $l 09:50
p6eval rakudo abc35c: OUTPUT«Type check failed in assignment to '$l'; expected 'Int' but got 'Str'␤ in block <anon> at /tmp/QZffMsf3ma:1␤ in <anon> at /tmp/QZffMsf3ma:1␤»
..niecza v11-23-g18f7db0: OUTPUT«Unhandled exception: Nominal type check failed for scalar store; got Str, needed Int or subtype␤ at /tmp/l87s8Herif line 1 (mainline @ 1) ␤ at /home/p6eval/niecza/lib/CORE.setting line 2224 (ANON @ 2) ␤ at /home/p6eval/niecza/lib/CORE.setting line 2225 …
..pugs b927740: OUTPUT«1␤»
Woodi perl6: my $r = ':1'; my $l = substr( $r, 1, $r.bytes ); say $l 09:51
p6eval pugs b927740, rakudo abc35c, niecza v11-23-g18f7db0: OUTPUT«1␤»
jnthn muixirt: It's nice to be making progress :)
09:53 dakkar joined
mls morning 09:53
phenny mls: 15 Nov 20:47Z <jnthn> tell mls I tried to bring in your directaccess patch to nqp again, but it breaks the Rakudo build.
mls ts ts. ok, I'll fix it. 09:54
Woodi 'ts' like used by E.Weatherwax ?
09:58 replore left
mls Granny weatherwax? From Pterry? 10:00
10:02 am0c left 10:03 hypolin left, woosley left, envi_ joined
Woodi yes. just wonder where 'ts' comes from. maybe just English ? 10:04
# she use 'ts ts ts' during poker rounds
mls dunnu, I'm from germany. It's used here as a sign of disapproval 10:05
Woodi seems universal :)
on: my Int $l = substr( ... : is it bug ? 10:06
jnthn No, it's correct. 10:07
substr returns a Str.
mls I should re-read some of the discworld books, I don't remember that 'ts ts ts' quote.
mux Ook! Oook! 10:08
mls bad monkey!
Woodi jnthn: should, but I hope for autoconversion
jnthn Woodi: It's a type *constraint*. 10:09
Woodi ...for $lenght var... 10:11
work on pugs 10:12
mls: from: Witches Abroad probably
mls thanks.
10:13 ab5tract joined
Woodi do 'pugs' comes from 'Riftwar Saga' ? 10:13
10:15 snearch joined
Timbus nay, it comes from hugs 10:18
www.haskell.org/hugs/ 10:19
Woodi oh, k :)
mls jnthn: the build works for me. now running spectest 10:38
jnthn: did you re-apply both ae3236c8 and ca125937? 10:39
jnthn mls: Oh! I somehow missed ca125937, it seems 10:40
mls that explains it ;)
10:57 daxim joined
vmspb rakudo: $_=2; say "1 $_ #" 11:05
p6eval rakudo abc35c: OUTPUT«===SORRY!===␤Confused at line 1, near "say \"1 $_ "␤»
vmspb rakudo: $_=2; say " $_ #" 11:09
p6eval rakudo abc35c: OUTPUT«===SORRY!===␤Confused at line 1, near "say \" $_ "␤»
vmspb rakudo: $_=2; say " $_ #"
p6eval rakudo abc35c: OUTPUT«===SORRY!===␤Confused at line 1, near "say \" $_ #"␤»
jnthn rakudo: $_=2; say " $_ " 11:14
p6eval rakudo abc35c: OUTPUT« 2 ␤»
jnthn rakudo: $_=2; say " $_ x#"
p6eval rakudo abc35c: OUTPUT« 2 x#␤»
jnthn rakudo: $_=2; say " $_ #"
p6eval rakudo abc35c: OUTPUT«===SORRY!===␤Confused at line 1, near "say \" $_ #"␤»
jnthn rakudo: $_=2; say " $_ # "
p6eval rakudo abc35c: OUTPUT«===SORRY!===␤Confused at line 1, near "say \" $_ #"␤»
jnthn std: $_=2; say " $_ # "
p6eval std be1f10e: OUTPUT«ok 00:01 122m␤»
jnthn ugh
vmspb perl6: $_=2; say "$_#" 11:20
p6eval rakudo abc35c: OUTPUT«===SORRY!===␤Confused at line 1, near "say \"$_#\""␤»
..pugs b927740, niecza v11-23-g18f7db0: OUTPUT«2#␤»
12:12 Psyche^ joined 12:16 Patterner left, Psyche^ is now known as Patterner 12:21 wtw left, lestrrat left, skangas left, tomaw left, buubot_backup left, felipe left, literal left, skangas joined 12:24 wtw joined, lestrrat joined, tomaw joined, buubot_backup joined, literal joined 12:37 bluescreen10 joined 12:51 mtk left 12:53 molaf joined
vmspb perl6: say "\x40_\x[40]" 12:58
p6eval pugs b927740, rakudo abc35c, niecza v11-23-g18f7db0: OUTPUT«@_@␤»
vmspb perl6: say «\x40_\x[40]»
p6eval pugs b927740: OUTPUT«decodeUTF8': bad data: '\171'␤decodeUTF8': bad data: '\187'␤@_@␤»
..rakudo abc35c, niecza v11-23-g18f7db0: OUTPUT«@_@␤»
vmspb perl6: say <<\x40_\x[40]>>
p6eval pugs b927740, niecza v11-23-g18f7db0: OUTPUT«@_@␤»
..rakudo abc35c: OUTPUT«\x40_\x[40]␤»
13:01 envi_ left 13:06 molaf left 13:11 mtk joined 13:17 daniel-s left
colomon phenny: tell arnsholt Oh, I've already implemented big hunks of this continued fraction code without knowing it. Check out the infinite precision Pi code I blogged about back in spring. 13:31
phenny colomon: I'll pass that on when arnsholt is around.
dalek p: 86080ba | mls++ | src/ (3 files):
reapply directaccess patches now that we again build against an up-to-date parrot
13:40
13:41 kaleem_ left 13:43 snearch left 13:44 Patterner left, slavik1 left, takadonet left, jjore left, imarcusthis left, ascent_ left, frettled left, kthakore left, jfried left, sivoais left, daniel-s joined 13:48 Patterner joined, slavik1 joined, takadonet joined, jjore joined, imarcusthis joined, ascent_ joined, frettled joined, kthakore joined, jfried joined, sivoais joined 13:49 sivoais left, sivoais joined
[Coke] (regressions) - ack "nom regression" t/spec is a good start. 13:50
)(for dukeleto's comment yesterday)
13:52 benabik left 13:56 tokuhirom joined 14:01 envi_ joined 14:04 risou_awy is now known as risou 14:08 DarthGandalf left 14:13 benabik joined, benabik left, benabik joined 14:23 sayu joined 14:24 envi_|2 joined 14:25 DarthGandalf joined
dalek kudo/nom: 8f1f5d1 | coke++ | t/spectest.data:
track failure modes
14:25
mls hi guys 14:26
I just merged my exception branch into parrot master
jnthn mls: nice - what does it bring?
mls not much, except speed
jnthn mls: Note that we can't do anything in nom (or nqp master) related to it until after this month's Rakudo release.
mls and you can inline blocks with hjandlers
handlers
jnthn mls: But feel free to make branch in nqp if there's updates needed to take advantage of it there 14:27
mls (this needs a change in the invoke_skipnextctx op)
14:27 jjore_ joined
jnthn OK 14:27
Feel free to patch that in a branch too
We merge them after tomorrow's release
Or just wait a day or so :) 14:28
mls: How much is the speed win, ooc?
14:28 _jfried joined, ascent__ joined
mls uh, what I was trying to say: because of the implementation changes rakudo will need the following patch once it uses the new parrot: gist.github.com/1370157 14:28
14:28 Psyche^ joined, frettled_ joined 14:29 kthakore_ joined
mls about the speed win: exception handlers can now be created with a const "key" pmc as argument, thus only one pmc needs to be created 14:29
also finding the correct handler should be much faster 14:30
I didn't do any real measurements, though
jnthn \o/
Great, I will do a Parrot bump and take care of that patch after the release. (Prob Friday.)
mls I basically changed the implementation to support a "pop_upto_eh" opcode, it op pops the eh stack until the specified handler is reached 14:31
you can also specify an exception, like with the finalize op
[Coke] if you didn't measure anything, what drove the change? 14:32
mls I needed that op because currently there's no way to pop the handlers when an exception occurs, as we don't know how many handlers where pushed after our handler was installed
[Coke] </troll>
ah, so the potential speedups are a side effect? hokay. 14:33
mls so currently we really must do a ".return" at the end of the handler, which prevents inlining of code
14:33 envi_ left, Patterner left, slavik1 left, takadonet left, jjore left, imarcusthis left, ascent_ left, frettled left, kthakore left, jfried left, Psyche^ is now known as Patterner
mls for rakudo, we'll need to change the "rethrow_skipnextctx" op again: we can't skip all handlers from the context 14:34
(it was ok when there was no inlining) 14:35
so we need to change the op to take two exceptions as arguments, the exception to rethrow and the exception to get the current handler position from 14:36
jnthn meeting - bbl & 14:38
mls++ # exceptional hacking
mls ;)
14:40 frettled_ is now known as frettled
mls coke: see github.com/parrot/parrot/pull/194 for all the changes 14:40
14:40 takadonet joined 14:43 slavik1 joined 14:46 mkramer1 joined 14:53 mkramer1 left 14:54 tokuhirom left 14:58 molaf joined 15:03 bluescreen10 left, vmspb left 15:16 tty234 left 15:17 tty234 joined 15:18 bluescreen10 joined 15:24 wtw left 15:32 muixirt left 15:45 takadonet left 15:47 icwiener joined, thou joined 15:58 _jaldhar left
dalek : 56852c7 | jimmy++ | docs/zh-cn/syn/S02-bits.pod:
fixed wording in docs/zh-cn/syn/S02-bits.pod
16:04
16:07 birdwindupbird left 16:10 alester joined 16:12 mkramer joined 16:16 sayu left 16:22 wolfman2000 left 16:25 frettled left 16:26 frettled joined 16:28 thou left 16:32 ab5tract left 16:35 zostay_ is now known as zostay
Util In [S03], regarding the xx operator: 16:36
Since the expression on the left is treated as a thunk that is re-evaluated
each time, expressions that rely on this behavior are possible
vs:
The left side of
an C<xx> is evaluated only once. (To call a block repeatedly, use a C<map>
Looks like TimToady changed the former in the "Replication" section (git show 68d062fc),
but not the latter in "Changes_to_Perl_5_operators".
16:37 cosimo left 16:40 kaleem joined
dalek ecs: 421501c | larry++ | S03-operators.pod:
fossil dug up by Util++
16:40
16:42 icwiener left
Util TimToady: thanks 16:42
colomon pre-report: 16:54
* Did nothing p6ish except worry that the state of the module tools is sadly lacking in both nom and niecza.
plan:
* Hope to get the mandelbrot script working in Gtk (note: potential Advent calendar topic) 16:55
* Continue advocating for the modules
EOR
TimToady um 16:56
ww
colomon dang it! 16:57
TimToady++
ack, it's just been that kind of year
17:01 daniel-s left
Woodi loop (...) { my $head = substr( $data, 0, 1 ); if $head eq '+' { $tail = substr( $data, 1, $s.bytes ); push @results, $tail; next } } 17:04
TimToady colomon: Perl 6 is a force of nature, but it's also grace. <-- obligatory Tree of Life reference 17:05
Woodi is a way to not do substr two times ? something like cutting head from string or replace second substr with fast truncate front element ?
TimToady in short, you want strings structured as Lisp lists :) 17:07
benabik Or ropes.
There are lots of strings are made of shorter strings data structures. 17:08
colomon shouldn't that be easy to do as a regular expression?
Woodi yes, [head,tail] :)
TimToady but Perl 6 does not require such a representation for strings, except insofar as it might be an optimization
Woodi benabik: but i ask about Perl6 :) 17:09
benabik Woodi: So implement a MyString class in P6. :-D
Woodi i ask for whatever is faster
TimToady if you don't mind getting lists out instead of strings, you can transform a string into a cons list, which in Perl 6 is represented using =>
lessee... 17:10
17:10 cosimo joined
TimToady perl6: my $s = 'abc'; say [=>] $s.comb 17:11
p6eval rakudo 8f1f5d, niecza v11-23-g18f7db0: OUTPUT«"a" => "b" => "c"␤»
..pugs b927740: OUTPUT«abc␤»
Woodi i gets strings from network, such pure string protocol. converting would probably cost more then substr...
TimToady well, that depends on a lot of things, but your substr algo is O(N*2)-ish
it depends on how your p6 implementation represents strings internally, and how you want to process the tails 17:12
Woodi i thinked about lazy split too... is something available ?
TimToady are you only caring about the front characters? or are you actually doing something with the tails? 17:13
Woodi head for decide what to do. if '+' then push tail and next, else proces tail 17:14
TimToady: what that example do ? 'cons list' is just list ?
TimToady well, it's a pair list, not a p6 list 17:15
but if you only want to strip leading +, it's likely overkil
Woodi .comb is split ? 17:16
split // ? 17:17
TimToady in regex it's more like / '+'+? (.*) { push @tails, $1 } <!> /
split // is replaced by .comb
but it doesn't sound like you want to split the whole string, just the first few chars 17:18
17:18 kaare_ joined
Woodi yes. just wondering about 'lazy' comb 17:18
and just get first elem. it can have better performance ? 17:19
TimToady well, maybe, but there's some overhead to setting up a lazy list too
which approach is better is likely to be implementation dependent 17:20
so this is starting to sound like premature optimization to me
Woodi hmm, just version 0.4 :) 17:21
need to test regex version 17:23
colomon comb was lazy in b. 17:24
I can't tell if it is in nom or not.
17:24 kaleem left
Woodi just using b :) 17:25
colomon It looks like it isn't lazy in nom? 17:28
17:28 daxim left
TimToady colomon: maybe your pi code will work under nom with the new Ints? 17:28
colomon TimToady: that it might! 17:29
TimToady then you might get your subsigs back
then it might happily show up on rosettacode :)
colomon :) 17:30
TimToady or point out other places nom has regressed, which is also a form of progress :)
Util #phaser time? 17:32
17:32 orafu left, uniejo_ left
colomon wait, did it move forward with the time change? 17:33
Woodi can head and tail are in spec ?
do* ? 17:34
are ?
colomon not sure what you're trying to ask, but I think the answer is no. :)
arnsholt Woodi: It's "are", and I don't think so 17:36
phenny arnsholt: 13:31Z <colomon> tell arnsholt Oh, I've already implemented big hunks of this continued fraction code without knowing it. Check out the infinite precision Pi code I blogged about back in spring.
17:36 mj41 left
Woodi just wonder about std functional language feature :) but maybe it is not required in spec... 17:36
thanx arnsholt :)
arnsholt colomon: Ooh, that's spiffy. I'll definitely take a look at that
TimToady you can bind lists to ($head, *@tail), but strings aren't lists
17:36 orafu joined
colomon arnsholt: I'd be interested in collaborating on a module for continued fractions, if you're up for it. 17:37
arnsholt But I think head would by $list[0] and rest would be $list[1..], or something like that
TimToady subscripting is often a smell in Perl 6
arnsholt Yeah, that sounds interesting
Woodi right, just unshift ? :)
arnsholt Collaboration is often a good way for me to keep working on stuff =)
Collaboration is generally a good fit for me, in general, really 17:38
TimToady shift/unshift can also be a smell, if you're trying for immutable semantics
Woodi what if i name it iterator ? :) 17:40
colomon arnsholt: okay, what do we call the module?
Woodi hmm, iterator do not destroy probably... 17:41
colomon arnsholt: Math::ContinuedFraction ? 17:42
arnsholt My working name has been CFRat
But Math::ContinuedFraction sounds good
colomon I dunno, Math::CFRat? :)
arnsholt Lots more descriptive 17:43
Math::* is probably a good idea, at any rate
colomon I guess it might depend on how often you have to explicitly spell out the name in code that uses them.
arnsholt Yeah 17:44
Isn't there supposed to be some way of aliased import though? =)
17:44 ethndbst joined, ethndbst left, ethndbst joined
colomon Want to go with Math::ContinuedFraction for the moment? 17:46
I'm just looking for a name for a github repo. (Unless you've already got one?)
arnsholt Nope, no repo yet
So Math::ContinuedFraction works fine for me 17:47
colomon okay, I'll get on that in the next couple of minutes. you have a github id?
arnsholt (Which timezone are you in, BTW?)
I'm arnsholt on github as well
colomon Eastern US 17:48
17:48 _jfried is now known as jfried, mberends joined
arnsholt 'k. I'm CET, so you're six hours behind me if memory serves 17:48
17:57 ksi joined 18:02 mkramer left, felher left 18:03 mkramer joined
colomon arnsholt: okay, we've got a github repo: github.com/colomon/Math-ContinuedFractions 18:03
do you want to start by adding what you've got so far to it? 18:04
arnsholt Nah, there's not really any code yet
All in my brane, unfortunately
colomon ah, no worries. :)
TimToady I always cringe a little when languages force you to declare that you're using "math", when the whole universe is arguably made out of math 18:05
18:06 dakkar left
TimToady admittedly, continued fractions are a bit out there on the barbie spectrum 18:07
but I'm not sure math should be ghettoized 18:08
Woodi perl6: loop ( my $i; $i<10; $i++ ) { # / '+'+? (.*) { push @tails, $1 } <!> /; say 'hi' }
p6eval rakudo 8f1f5d: OUTPUT«===SORRY!===␤Missing block at line 1, near "( my $i; $"␤»
..pugs b927740: OUTPUT«*** ␤ Unexpected end of input␤ expecting "use", statements or "}"␤ at /tmp/G0o5mnyey_ line 2, column 1␤»
..niecza v11-23-g18f7db0: OUTPUT«===SORRY!===␤␤Whitespace required before < operator at /tmp/Xt3VfRljvd line 1:␤------> loop ( my $i; $i<⏏10; $i++ ) { # / '+'+? (.*) { push @tai␤␤Parse failed␤␤»
Woodi that comment is to complicated :) 18:09
on separate line too
TimToady read niecza's actual error message 18:10
arnsholt The "barbie spectrum" nicely put =)
Woodi yes, niecza cannot parse after ' < ', but at least b have problem with that
sorear I don't quite get barbie spectrum 18:11
TimToady b is incorrect in allowing infix < where postfix < is expected
"Math is hard, let's go shopping." --Barbie
Woodi rakudo: loop ( my $i; $i < 10; $i++ ) { # / '+'+? (.*) { push @tails, $1 } <!> /; say 'hi' } 18:12
p6eval rakudo 8f1f5d: OUTPUT«===SORRY!===␤Unable to parse blockoid, couldn't find final '}' at line 1␤»
sorear note, everything after # is ignored 18:13
TimToady why are you trying to use a comment there?
TimToady is tempted to invoke mjd
diakopter I suspect he thinks there are newlines in there
Woodi becouse i must on #perl6
dalek ecza: cdd4e66 | mberends++ | docs/niecza-gtk.html:
[docs/niecza-gtk.html] slides used at London Perl Workshop 2011
TimToady the comment still makes no sense whatsoever
Woodi exploded on separate lines in b 18:14
TimToady even if there are newlines
diakopter oh
Woodi nah, my mistake, ' < ' was real problem.
so spaces are required in v6 now ? 18:15
sorear it's funny, most of the great mjd quotes are actually mjd-pretending-to-be-mst
slavik1 someone needs to use perl6 in production so I can get that job 18:16
PerlJam sorear: I doubt that. 18:17
slavik1 "what perl6 qualifications do you have?" "I have it installed and hang out in #perl6 all the time" "hired"
best job eva!
PerlJam sorear: unless you mean that mst does a good job of pretending to be mjd sometimes ;) 18:18
18:19 plobsing left
TimToady mjd is not the sort of person to pretend to be anyone other than his own pretend personna 18:19
he's kind of a "primary source", as it were... 18:20
18:20 the-golem joined
slavik1 are we talking football now? 18:21
18:21 plobsing joined
Woodi it would be OT... 18:21
TimToady mst has his own shape, distinct from either kind of football
er, mjd 18:22
well, mst too
18:25 buubot_backup left
PerlJam If mjd waxed prosaic more often he'd start to look like tchrist to me, so I can kind of see the mst/mjd connection in a similar way 18:26
18:32 Vlavv` joined 18:35 Vlavv_ left
sorear hmm. I am not aware of tchrist's work. 18:37
flussence he's the Crazy Unicode Guy :D 18:38
TimToady that's only his latest incarnation...
www.perl.com/doc/FMTEYEWTK/ 18:39
sorear I would have thought khw would get that epithet 18:40
18:41 localhost joined
TimToady he's also a co-author of the Camel Book 18:41
and the Perl Cookbook 18:42
and he's one of the honorary crazy uncles of my family 18:44
though it's not clear that anyone who associates with my family can be considered entirely sane 18:45
18:46 risou is now known as risou_awy 18:47 buubot_backup joined 18:51 ethndbst left 19:05 mkramer left, mkramer joined 19:16 mj41 joined 19:23 mj41 left 19:25 integral left 19:26 Moukeddar joined, integral joined, integral left, integral joined
Woodi rakudo: my @a; push Any, @a; say @a 19:33
p6eval rakudo 8f1f5d: OUTPUT«No applicable candidates found to dispatch to for 'push'. Available candidates are:␤:(Positional @a, Positional @elems)␤␤ in block <anon> at /tmp/RsOOwstYD2:1␤ in <anon> at /tmp/RsOOwstYD2:1␤»
Woodi how to get eg.: ['a', Any, 'b'] ? 19:34
19:35 mkramer left
colomon rakudo: my @a = 'a', Any, 'b'; say @a.perl 19:36
p6eval rakudo 8f1f5d: OUTPUT«Array.new("a", Any, "b")␤»
19:36 ethndbst joined, mkramer joined 19:38 bluescreen10 left, bluescreen10 joined, the-golem left
Woodi hmm :) but i need to add to existing array 19:38
rakudo: my @a; my $b = Any; @a[1] = 'c'; undef @a[1]; say @a 19:40
p6eval rakudo 8f1f5d: OUTPUT«===SORRY!===␤Unsupported use of undef as a verb; in Perl 6 please use undefine function or assignment of Nil at line 1, near " @a[1]; sa"␤»
19:40 bluescreen10 left, Moukeddar left
colomon rakudo: my @a; push @a, Any; say @a.perl 19:41
p6eval rakudo 8f1f5d: OUTPUT«===SORRY!===␤Confused at line 1, near "\x{4} say @a.p"␤»
19:41 bluescreen10 joined
colomon rakudo: my @a; @a.push: Any; say @a.perl 19:41
p6eval rakudo 8f1f5d: OUTPUT«===SORRY!===␤Confused at line 1, near "\x{4} say @a.p"␤»
colomon rakudo: my @a; @a.push(Any); say @a.perl
p6eval rakudo 8f1f5d: OUTPUT«===SORRY!===␤Confused at line 1, near "\x{4} say @a.p"␤»
colomon huh
rakudo: my @a; @a[0] = Any; say @a.perl 19:42
p6eval rakudo 8f1f5d: OUTPUT«===SORRY!===␤Confused at line 1, near "\x{4} say @a.p"␤»
Woodi 'my'
19:42 bluescreen10 left
colomon std: my @a; @a[0] = Any; say @a.perl 19:42
p6eval std be1f10e: OUTPUT«ok 00:01 123m␤»
19:42 bluescreen10 joined
colomon rakudo: my @a; say @a.perl 19:42
p6eval rakudo 8f1f5d: OUTPUT«Array.new()␤»
colomon rakudo: my @a; @a[0] = Any; say @a.perl 19:43
p6eval rakudo 8f1f5d: OUTPUT«Array.new(Any)␤»
colomon rakudo: my @a = 'a'; @a[+@a] = Any; say @a.perl
TimToady colomon: you were using "ay" instead of "say"
p6eval rakudo 8f1f5d: OUTPUT«Array.new("a", Any)␤»
TimToady or no, there was a ^D in your input somehow 19:44
colomon TimToady: errr, no I wasn't. everything I typed... yeah, must have been something like that.
rakudo: my @a = 'a'; push @a, Any; say @a.perl
p6eval rakudo 8f1f5d: OUTPUT«Array.new("a", Any)␤»
Woodi rakudo: my @a = ['a']; @a[-1] = Any; say @a.perl 19:45
p6eval rakudo 8f1f5d: OUTPUT«Cannot use negative index -1 on Array␤ in method <anon> at src/gen/CORE.setting:6388␤ in <anon> at src/gen/Metamodel.pm:2082␤ in find_method_fallback at src/gen/Metamodel.pm:2080␤ in find_method at src/gen/Metamodel.pm:787␤ in block <anon> at /tmp/YaIHuWl3DL:1… 19:46
TimToady std: my @a = ['a']; @a[-1] = Any; say @a.perl
p6eval std be1f10e: OUTPUT«===SORRY!===␤Unsupported use of [-1] subscript to access from end of array; in Perl 6 please use [*-1] at /tmp/vwTpm__dlr line 1:␤------> my @a = ['a']; @a[-1]⏏ = Any; say @a.perl␤Parse failed␤FAILED 00:01 123m␤»
Woodi rakudo: my @a = ['a']; @a[*-1] = Any; say @a.perl
p6eval rakudo 8f1f5d: OUTPUT«Array.new(Any)␤»
Woodi rakudo: my @a = ['a']; @a[*-1] = Any; say @a
p6eval rakudo 8f1f5d: OUTPUT«Use of uninitialized value in string context␤␤»
TimToady also, note that the first element of @a is not 'a' 19:47
you didn't need teh []
which makes an array of array 19:48
colomon b: my @a = ['a']; @a[-1] = Any; say @a.perl # thought we had a better error message for this....
p6eval b 1b7dd1: OUTPUT«Cannot modify readonly value␤ in '&infix:<=>' at line 1:src/metamodel/RoleToInstanceApplier.nqp␤ in main program body at line 22:/tmp/wD78MPr2gw␤»
colomon ugh!
niecza: my @a = ['a']; @a[-1] = Any; say @a.perl # thought we had a better error message for this....
p6eval niecza v11-24-gcdd4e66: OUTPUT«===SORRY!===␤␤Unsupported use of [-1] subscript to access from end of array; in Perl 6 please use [*-1] at /tmp/QsFFPmVVmz line 1:␤------> my @a = ['a']; @a[-1]⏏ = Any; say @a.perl # thought we had a b␤␤Parse failed␤␤»…
TimToady niecza essentially uses STD's grammar 19:49
Woodi rakudo: my @a = 'a', 'b'; push @a, Any; say @a
p6eval rakudo 8f1f5d: OUTPUT«Use of uninitialized value in string context␤a b ␤»
Woodi rakudo: my @a = 'a', 'b'; push @a, Any; say @a.perl
p6eval rakudo 8f1f5d: OUTPUT«Array.new("a", "b", Any)␤»
Woodi b: my @a = 'a', 'b'; push @a, Any; say @a.perl
p6eval b 1b7dd1: OUTPUT«["a", "b", Any]␤»
Woodi tada :)
thanks colomon++ 19:50
colomon you're welcome
sorry my attempts to help were so noisy!
19:53 bluescreen10 left
Woodi rakudo: my $c = '+'; if $c ~~ any('+',':') { say '+:' } 19:56
p6eval rakudo 8f1f5d: OUTPUT«+:␤»
Woodi is this faster or || version ?
colomon Woodi: why don't you time it and find out? :) 19:59
Woodi becouse I cannot trust numbers in development env. want to know 'technology' below syntax... 20:00
colomon my guess is no one really knows the answer at this point, and it's subject to change, too. 20:02
also, why not $c eq any('+', ':') 20:03
not that I know eq would be faster than ~~
Woodi colomon: I was not sure about this and first in memory was ~~ 20:04
20:04 bluescreen10 joined
Woodi theoretically junctions can autothread but only 2 cases here... max 3 20:04
20:05 MayDaniel joined, MayDaniel left, MayDaniel joined
Woodi k, gn #perl6 20:06
colomon I think this is where TimToady is supposed to show up and mumble about premature optimization....
o/
moritz \o from Oslo 20:07
moritz haz the internetz
colomon \o/
jnthn o/ moritz
mberends o/ moritz
moritz ... but time for bed, got up 16 hours ago 20:13
20:16 pothos joined 20:18 MayDaniel left 20:22 y3llow joined
dalek p/nfa: 46e0f9e | jnthn++ | src/QRegex/Cursor.nqp:
Fix an LTM tie-breaking bug; diakopter++ for spotting.
20:24
20:24 Transformer joined 20:25 Trashlord left 20:27 Transformer left 20:30 felipe joined 20:32 thou joined 20:39 Sarten-X left 20:43 fsergot left 20:45 bluescreen10 left
dalek p/nfa: cecd970 | diakopter++ | src/QAST/ (2 files):
move node() from QAST::Regex to QAST::Node; add $!node to QAST::Node
20:50
p/nfa: abf900a | diakopter++ | src/QRegex/Cursor.nqp:
Merge branch 'nfa' of github.com:perl6/nqp into nfa
diakopter sigh. me and my merging branches
20:56 Sarten-X joined 20:58 tokuhirom joined 21:00 MayDaniel joined 21:01 ksi left
tadzik ===SORRY!=== 21:04
Incorrect pre-compiled version of src/gen/Metamodel.pm loaded
I've already rebuilt Rakudo, any more ideas?
jnthn tadzik: Hm
tadzik: What're you doing to get that? 21:05
21:05 fsergot joined
jnthn tadzik: It normally happens when there's leftover pre-compiled modules 21:05
tadzik jnthn: env PERL6LIB=/home/tadzik/src/perl/panda/blib/lib:/home/tadzik/src/perl/panda/lib:/home/tadzik/.perl6/lib perl6 --target=pir --output=blib/lib/Panda/Ecosystem.pir lib/Panda/Ecosystem.pm
they're all make-cleaned
or freshly built
env PERL6LIB=/home/tadzik/src/perl/panda/blib/lib:/home/tadzik/src/perl/panda/lib:/home/tadzik/.perl6/lib perl6 --target=pir --output=blib/lib/Pies.pir lib/Pies.pm
jnthn tadzik: Have you an installed perl6?
tadzik ^ that finishes successfully
jnthn: yes
jnthn tadzik: Are you running the installed one? 21:06
Or your build directory one?
tadzik installed one
oh wait 21:07
it uses Shell::Command, which is installed
okay, nvm
jnthn phew :)
tadzik phew :) It could use a "when loading xxx" :) 21:08
jnthn seems so 21:09
It's really meant to report the module itself
21:09 fsergot left, molaf left
tadzik nom: class A { has $!a }; class B is A { method foo { $!a = 5} } 21:11
p6eval nom 8f1f5d: OUTPUT«===SORRY!===␤Attribute $!a not declared in class B at line 1, near " = 5} }"␤»
tadzik correct?
jnthn Yes
21:12 MayDaniel left
tadzik nom: class A { has $.a }; class B is A { method foo { $.a = 5} } 21:12
p6eval nom 8f1f5d: ( no output )
tadzik mhm
oh, no Test::Mock on nom? 21:14
jnthn tadzik: Didn't update it yet
dalek kudo/protoregexes: 88f6945 | jnthn++ | src/Perl6/Grammar.pm:
Parse current protoregex syntax; keep older deprecated ones for now, though we'll put a warning in the next * release about them.
21:15
kudo/protoregexes: 829f9d3 | jnthn++ | src/Perl6/Actions.pm:
Update actions so we can, in theory, handle protoregexes, though the NFA construction explodes for some reason.
21:22 am0c joined
dalek kudo/protoregexes: a8b2873 | jnthn++ | src/Perl6/Metamodel/BOOTSTRAP.pm:
Add nqpattr cheat used for now by protoregexes implementation, so the NFA builder can get at NFAs for subrules. And with this, we seem to have workingish protoregexes - to the limit of the NFA engine (which still means more powerful than the literal only we had before).
21:28
p/nfa: ad45f01 | jnthn++ | src/QRegex/NFA.nqp:
Twiddle NFA subrule merge logic to avoid needing to boolify.
jnthn gist.github.com/1371475 # runs now 21:30
(In the branch, which also needs your nqp to be built from the nfa branch latest.)
tadzik woohoo!
jnthn++
tadzik fixing panda, one test at a time 21:31
jnthn Some failing tests, it seems
[Coke] jnthn: woot. Do you have a beer card I can top off?
jnthn ...beer card? :)
tadzik it's like a credit card, but better
[Coke] like a credit card that only works on beer. ;)
tadzik: exactly!
jnthn What a wonderful tidea!
*idea
Wish I had one :) 21:32
tadzik let's turn it into a startup!
PerlJam imagines [Coke] having trouble making the rent because he topped off jnthn's beer card ;)
colomon tadzik++
[Coke] PerlJam: no doubt!
jnthn OK, question.
We have a nom compiler release tomorrow. 21:33
Nobody signed up to release manage yet.
colomon looks shocked
moved up a week because of the US holiday?
jnthn colomon: Parrot release was tue, no?
colomon no, I just missed the 1st on my calendar. 21:34
jnthn :)
21:34 ethndbst left
colomon it's really hard to see it in the dark, honest! 21:34
jnthn So, at this point I could in theory try and land some protoregex support for the release.
tadzik # Method 'copy' not found for invocant of class 'IO'
who wants an LHF?
# Method 'uniq' not found for invocant of class 'List' 21:35
another one
PerlJam jnthn: if you had an extra day, would you still be asking the question?
21:35 Sarten-X left
PerlJam (or just do it?) 21:35
colomon tadzik: what's IO.copy supposed to do? 21:36
jnthn PerlJam: I'm mostly saying, there's some risk landing something sizable a day before - or on the day of - the release.
tadzik colomon: I suppose copy files from place to place; worked in b, istr it was non-speccy
PerlJam jnthn: there's always risk ;-) 21:37
jnthn ;-)
tadzik jnthn: I like the way you spell "fun" 21:38
also, I suppose everyone using nom is ready for suprises :)
PerlJam tadzik++
jnthn OK
21:39 felher joined
jnthn I need to spend tomorrow day time at $dayjob. I'll have the evening. I may be able to deal with the couple of test regressions tonight. 21:40
PerlJam If there are still any "early adopters" for each compiler release, they'll shake out any bugs quickly and then everyone will be looking forward to the Dec release
jnthn If I can do that, then I get things merged tomorrow evening, then either (a) somebody wants to step up to do the release but is willing to do it later on tomorrow, or (b) nobody does and I have to release it.
PerlJam Speaking of Dec ... is everyone ready for another advent calendar?
colomon hopefully someone will step up. 21:42
jnthn Would be appreciated. :)
PerlJam I was thinking about it, but decided my life was in enough disarray right now that I wouldn't have any time. 21:43
(Though, if we waited to release the Friday after tukey day, I'd probably be able to do it) 21:44
er, turkey day
colomon I might have the time, but my life is in enough disarray right now I can't really commit 24 hours ahead.
PerlJam So ... sounds like "surprise release manager" this month :) 21:45
[Coke] jnthn: what country are you in?
(regularly)
jnthn [Coke]: Sweden
21:49 envi_|2 left 21:50 thou left 21:51 thou joined 21:52 fsergot joined 21:53 kaare_ left 22:04 mkramer1 joined, mkramer left 22:08 mkramer joined, mkramer1 left
jnthn nom: m/abc (:i def) ghi/ 22:08
p6eval nom 8f1f5d: OUTPUT«Method 'match' not found for invocant of class 'Any'␤ in block <anon> at /tmp/zOseEUZvAX:1␤ in <anon> at /tmp/zOseEUZvAX:1␤»
dalek p/nfa: 0bbd9c1 | jnthn++ | src/QRegex/NFA.nqp:
Handle empty concat nodes in NFA builder; fixes tests we regressed in the protoregexes branch.
22:11
kudo/protoregexes: e41953a | jnthn++ | src/Perl6/Grammar.pm:
Ensure that regex compiler sees the name of the regex. Fixes use of <sym> in protoregexes, and protoregex.t now passes all but one test (which seems to be unrelated to protoregexes themselves).
22:26
diakopter jnthn: test 4 in nqp/t/nqp/32-protoregex.t fails because $<symbols><sym> is empty 22:27
fyi
even when the correct token is run
jnthn yeah 22:28
Not got to that one yet
diakopter starts to really grok NFA.nqp finally
PerlJam Did NQP ever get the new % regex syntax? 22:38
jnthn PerlJam: Not yet
Unless it sneaked in without me noticing
22:43 benabik left 22:48 Moukeddar joined
dalek p/nfa: 2668e04 | jnthn++ | src/QRegex/P6Regex/Actions.nqp:
Ensure that <sym> captures.
22:50
jnthn diakopter: ^ fixes 32-protoregex.t
Timbus did moritz ever blog about software dev models/design patterns and the like? He's talked about them a few times in here.. 22:53
sorear good * #perl6
Timbus I'm undertaking a pretty big task for work and I'm not sure if I should be reaching for perl or C#/mono
sorear C#/mono is pretty cool and very underloved by OSS folks 22:54
Timbus yeah 22:55
22:57 Chillance left 22:58 Moukeddar left 23:02 thou left, buubot_backup left 23:04 thou joined
sorear Timbus: there are questions like "how big" and "what kind" 23:04
C# isn't the best tool for extraction and reporting (yes I know this is a backronym) 23:05
23:12 imarcusthis joined
Timbus sorear, mid-size, probably only me as the dev tho, big gui, many modules, maybe a dozen hardware interfaces 23:13
constant state-tracking of those devices (its laboratory software). to a lesser extent theres some reporting/collating/data munging 23:14
but nothing that needs perl-level lifting. 23:15
23:15 mkramer left 23:24 buubot_backup joined
jnthn night, #perl6 23:27
diakopter o/
23:34 daxim joined
sorear Timbus: Perl5 has no real threads; this might be important 23:38
23:44 alester left 23:46 thou left 23:49 Moukeddar joined
sorear o/ Moukeddar 23:49
Moukeddar hi sorear , how are you doing? 23:50
sorear good
23:50 daemon left
Moukeddar good to hear :D 23:51
sorear bit busy between the end of the semester and holiday prep 23:52
23:52 whiteknight joined, whiteknight is now known as Guest74144
Moukeddar oh, hard times heh? 23:52
23:54 daemon joined
sorear I wouldn't say that 23:57
in colloquial English usage, "hard times" means you're struggling to get food
Moukeddar aw, i didn't know that 23:59