»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:, or /msg camelia p6: ... | irclog: irc.perl6.org or colabti.org/irclogger/irclogger_logs/perl6 | UTF-8 is our friend!
Set by moritz on 22 December 2015.
AlexDaniel is aaronsherman here? 00:13
AlexDaniel ah nvm, just realized that I actually have a reddit account… 00:21
seatek where can i submit grammatical corrections to the docs.perl6.org stuff? should I just point them out here? just ran across one. 00:41
MasterDuke seatek: a PR here would be much appreciated: github.com/perl6/doc 00:52
seatek MasterDuke, done -- 186 open on that page.. didn't search for it to see if it already was reported. 00:57
MasterDuke looks like you're in the perl6 team, you can probably directly edit the file from github 01:00
seatek MasterDuke, ok I'll try 01:01
dalek c: fe5f6d7 | adaptiveoptics++ | doc/Language/typesystem.pod6:
Update typesystem.pod6 in Class section for minor grammar fix
01:03
seatek MasterDuke, well, it worked. 01:05
MasterDuke great, glad to see people contributing 01:06
seatek MasterDuke, I suppose I'm expected to resolve my own bug now... ;)
seatek MasterDuke, do you guys like those tracked in the bug system, or just making the changes in version control ok? 01:07
MasterDuke something small like that is fine to just change 01:08
seatek k
AlexDaniel seatek++ 01:28
dalek c: f78c962 | adaptiveoptics++ | doc/Language/typesystem.pod6:
Update typesystem.pod6, clarifying comma and clarifiying negation added
01:31
dalek c/spellcheck: 9398f28 | coke++ | doc/Language/traps.pod6:
fix typos
01:43
c/spellcheck: d2574de | (Zoffix Znet)++ | doc/Type/Numeric.pod6:
Clarify special cases in Numeric.log

don't hide words file
seatek does anyone know of any good documention on the syntax for dispatching on attribute handles? 01:47
[Coke] github.com/perl6/doc/blob/master/d....pod6#L627 - what's the N<> here? 02:51
[Coke] Looks like we could remove the N<> and move that whole sentence to ethe end of the P. 02:52
m: say nextcallee.perl; 02:56
camelia rakudo-moar 906719: OUTPUT«nextsame is not in the dynamic scope of a dispatcher␤ in block <unit> at <tmp> line 1␤␤»
seatek m: say '12ab' ~~ m/<[a .. f 0 .. 9]> ** 4/ ?? 'good' !! 'bad'; 03:25
camelia rakudo-moar 906719: OUTPUT«good␤»
seatek say '12a' ~~ m/<[a .. f 0 .. 9]> ** 4/ ?? 'good' !! 'bad'; 03:26
m: say '12a' ~~ m/<[a .. f 0 .. 9]> ** 4/ ?? 'good' !! 'bad';
camelia rakudo-moar 906719: OUTPUT«bad␤»
seatek m: say '12abc' ~~ m/<[a .. f 0 .. 9]> ** 4/ ?? 'good' !! 'bad';
camelia rakudo-moar 906719: OUTPUT«good␤»
seatek it's not wanting exactly 4 of that list... less than 4 is bad. more than 4 is ok. I understand why.... 03:27
but is there way to enforce exactly 4 of the list, like you could use {4} in perl5 ?
now i can't remember if perl5 actually did enforce exactly 4 in a list 03:31
MasterDuke you need to wrap it in ^ $
seatek MasterDuke, oh man. duh. yeah. thanks :) 03:33
MasterDuke m: say '12a' ~~ m/<xdigit> ** 4/ 03:34
camelia rakudo-moar 906719: OUTPUT«False␤»
MasterDuke m: say '12ab' ~~ m/<xdigit> ** 4/
camelia rakudo-moar 906719: OUTPUT«「12ab」␤ xdigit => 「1」␤ xdigit => 「2」␤ xdigit => 「a」␤ xdigit => 「b」␤»
MasterDuke <xdigit> is a builtin character class for <[a .. f 0 .. 9]>
seatek oo that's handy 03:35
c/spellcheck: 5111425 | coke++ | / (5 files):
Use 2 dict files -

one for words, jargon, programs, methods, classes, etc. one for code that looks like words
track more words
seatek that' can't be subset typed though can it?
MasterDuke not sure what you mean? 03:38
seatek it's not a "type" that can have subsets created of that type... 03:40
dalek c: 34ca6b4 | coke++ | doc/Language/ (2 files):
fix typo
c: 0fce86b | coke++ | doc/Language/ (4 files):
alternate forms.
seatek m: subset hexword of xdigit where *.chars == 40;
camelia rakudo-moar 906719: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Invalid typename 'xdigit'␤at <tmp>:1␤------> 3subset hexword of xdigit7⏏5 where *.chars == 40;␤»
dalek c/spellcheck: 34ca6b4 | coke++ | doc/Language/ (2 files):
fix typo
c/spellcheck: 0fce86b | coke++ | doc/Language/ (4 files):
alternate forms.
c/spellcheck: ebefa37 | coke++ | doc/Language/ (6 files):
Merge branch 'master' into spellcheck
seatek m: subset hexword of xdigit where *.chars == 4; 03:41
camelia rakudo-moar 906719: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Invalid typename 'xdigit'␤at <tmp>:1␤------> 3subset hexword of xdigit7⏏5 where *.chars == 4;␤»
MasterDuke m: subset Hex of Str where /^ <xdigit>..5 $/; my Hex $a = "ab3"; say $a 03:42
camelia rakudo-moar 906719: OUTPUT«Type check failed in assignment to $a; expected Hex but got Str ("ab3")␤ in block <unit> at <tmp> line 1␤␤»
seatek ok so yeah -- it stays in regexes then :)
much clearer 03:43
weird i seem to remember that from ages ago.. a long list of those in regexes 03:44
i'm having flashbacks
MasterDuke typo in my example though, should have been <xdigit>**5 03:46
seatek yeah
MasterDuke++ thanks 03:47
MasterDuke np. btw, i'm outa here now, but if you've got a min or two could you create a docs issue that the builtin char classes aren't documented? 03:48
geekosaur I think you can add one, but yes, needs docs 03:49
regexes are a built-in grammar which can have terms and such added to it
seatek MasterDuke, sure thing
[Coke] yay, down to 85 files with spelling issues. 03:54
geekosaur oj, the implementation isn't composable :/ 04:02
AlexDaniel m: my regex xdigzit5 { [ <xdigit> | ‘z’ ]**5 }; say ‘12z3b’ ~~ /^ <xdigzit5> $/ 04:19
camelia rakudo-moar 906719: OUTPUT«「12z3b」␤ xdigzit5 => 「12z3b」␤ xdigit => 「1」␤ xdigit => 「2」␤ xdigit => 「3」␤ xdigit => 「b」␤»
AlexDaniel seatek: ↑ ?
geekosaur thought they wanted a subset
although actually that should be doable to 04:20
AlexDaniel sure
geekosaur [ <xdigit> - whatever [
er
]
AlexDaniel ummm don't think this is going to work
<[\w] - [\d]> works, but <xdigit> probably won't 04:21
ShimmerFairy geekosaur: you mean like <+xdigit + [z]> ?
geekosaur hm. speculations said it should; I don't know if the impl does it though
AlexDaniel ShimmerFairy is right, it does work 04:22
ShimmerFairy m: say "CEF" ~~ /<+alpha - [Ff]>+/
camelia rakudo-moar 906719: OUTPUT«「CE」␤»
AlexDaniel yea
cool
AlexDaniel anyway, just wanted to say that you can create your own regexes/rules/tokens if you need that kind of stuff. And these basically give you infinite freedom, so you can have subsets or whatever else you wish 04:25
dataf4l hey guys 04:45
I just posted my first perl6 bug
rt.perl.org/Public/Bug/Display.html?id=129909
I wonder if I’ll ever be able to actually compile perl6 programs to binary executables or at least jar files so my clients can run them without hassle. 04:46
seatek ooo, yeah, very cool Shimmer, Alex & geek 04:56
seatek yeah my thing was wanting a custom "variable type" of Sessid where it's a 40-character long hex thang.... settled on: subset Sessid of Str where m/^<xdigit> ** 40$/; 04:57
the xdigit replaced my <[a..f 0..9]> 04:59
seatek say '123abcg' ~~ /<xdigit + [g]>+/ 05:03
m:say '123abcg' ~~ /<xdigit + [g]>+/ 05:04
m: say '123abcg' ~~ /<xdigit + [g]>+/
camelia rakudo-moar 906719: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Quantifier quantifies nothing␤at <tmp>:1␤------> 3say '123abcg' ~~ /<xdigit +7⏏5 [g]>+/␤»
seatek m: say '123abcg' ~~ /<+xdigit + [g]>+/
camelia rakudo-moar 906719: OUTPUT«「123abcg」␤»
seatek that is interesting -- needs the + up front...
m: say '123abch' ~~ /<+xdigit + [g]>+/
camelia rakudo-moar 906719: OUTPUT«「123abc」␤»
seatek very cool you can modify those inline 05:05
m: say '123abch' ~~ /<0 .. 9 a .. f + [g]>+/
camelia rakudo-moar 906719: OUTPUT«5===SORRY!5===␤Unrecognized regex metacharacter < (must be quoted to match literally)␤at <tmp>:1␤------> 3say '123abch' ~~ /<7⏏050 .. 9 a .. f + [g]>+/␤Regex not terminated.␤at <tmp>:1␤------> 3say '123abch' ~~ /<7⏏050 .. 9 a .. …»
seatek m: say '123abch' ~~ /<[0 .. 9 a .. f] + [g]>+/ 05:06
camelia rakudo-moar 906719: OUTPUT«「123abc」␤»
seatek m: say '123abch' ~~ /<+[0 .. 9 a .. f] + [g]>+/
camelia rakudo-moar 906719: OUTPUT«「123abc」␤»
seatek hmm
circ-user-8mgj7 NICK msanderson 05:58
about
ABOUT
sigh 05:59
andrzejku hello 07:03
good morning
FROGGS morning andrzejku
El_Che morning 08:02
andrzejku El_Che: communist? 08:04
lizmat clickbaits p6weekly.wordpress.com/2016/10/17/...ease-time/ 08:58
El_Che lizmat: could interest some people on the weekly: github.com/nxadm/rakudo-pkg/releas...ag/2016.10 (deb and rpms for 2016.10) 09:05
lizmat El_Che: thanks, will do so next week :-) 09:06
moritz El_Che: fwiw I'm still planning to create a Debian repo hosted somewhere on *.perl6.org; I've tried the simplest thing that could possibly work on the past weekend, but it didn't work :/ 10:40
pmurias hi 11:03
moritz \o pmurias 11:04
masak oh hai pmurias 11:06
masak today's word: "gnaborretni" 11:12
(something people apparently sometimes call the inverted interrobang)
El_Che moritz: what do you mean? a fully integrated debian/ubuntu pkg? My approach for the monthly rakudo releases differs by having no dependencies and installing everything in /opt/rakudo. The idea is not to have a conflct with a future debian/ubuntu/centos package 11:25
moritz El_Che: the charm would be to only have to configure the repo once, and then being able to upgrade (or install new versions) with apt 11:27
El_Che I think the packages are repo friendly -> they have a version and revision number 11:29
moritz yes 11:51
I just need to do a bit of scripting to teach aptly to have several published repos, not just one 11:52
Woodi_ hi #perl6 :) 12:58
iBakeCake \o
Woodi_ after git was invented it's possible, that someday we would like to have "versions" being like switching branches. hmm, or maybe just drop thet fs thing asap ? ;) 12:59
raiph hi all 13:00
iBakeCake hi 13:00
Woodi_ yo raiph :)
[Coke] m: StructObj.new 13:02
camelia rakudo-moar 20d37a: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Undeclared name:␤ StructObj used at line 1␤␤»
raiph iBakeCake: clicking "Run this code" buttons on perl6.party/post/IRC-Client-Perl-6-...IRC-Module yields "Could not find IRC::Client"
iBakeCake raiph: yeah, the widgets only run anything glot.io can run. In the alternate universe with non-lazy Zoffix unrunnable code samples have the feature disabled :) 13:04
dalek c: 420e381 | coke++ | doc/Language/nativecall.pod6:
use full word
pmurias Woodi_: just using the HEAD of a git repo is not a replacement for having versions despite what a lot of people want to do 13:09
Woodi_ pmurias: of course that that is just idea. actually for versions like this you need git repo for every file or some set of related files. so fs working like git with set of heads :) 13:40
Woodi_ ...per user :) there was some plans for fs as db but probably still too futuristic :) 13:47
iBakeCake What's "fs"? File system?
Woodi_ yes 13:50
[Coke] m: '{'.uniname.say # docs refer to these as curleys, curlys, curlies, braces... 13:51
camelia rakudo-moar 20d37a: OUTPUT«LEFT CURLY BRACKET␤»
iBakeCake curleys and curlys look like incorrect spelling of curlies :)
[Coke] I agree. I'd be happy to use 'curly brackets' everywhere we have the other version. 13:52
iBakeCake sounds good to me 13:53
seatek i think they can't really be called curly unless they loop around themselves. they're curvy brackets. :) 13:53
gfldex [Coke]++ # for many words
jnthn
.oO( moustache brackets )
13:54
seatek that works!
dalek c/spellcheck: 420e381 | coke++ | doc/Language/nativecall.pod6:
use full word
c/spellcheck: fb7ddd2 | coke++ | doc/Language/nativecall.pod6:
Merge branch 'master' into spellcheck
c/spellcheck: c61c7d1 | coke++ | xt/ (2 files):
more words
c: cbaed78 | coke++ | doc/Language/rb-nutshell.pod6:
curley -> curly
13:55
[Coke] (curly)? brace appears many times, that's some editing to update that. 13:56
I at least killed the 'e'
El_Che I like the sound of curley
sound french
s
dalek c: df250da | coke++ | doc/Type/Parameter.pod6:
fix typo
13:59
seatek I love how integrated types are into the DBIish stuff. You can have variable defined as a DateTime type, and it JUST WORKS for timestamp column types. :) 14:00
iBakeCake Isn't that simply 'cause it stringifies to a timestamp? 14:01
m: DateTime.now.Str.say
camelia rakudo-moar 20d37a: OUTPUT«2016-10-18T16:01:31.664285+02:00␤»
seatek Could be... but it's not something I'm used to. I'm used to having all kinds of hassle with timestamps 14:02
usually you have to treat them as strings, and insert them in
seatek but it's all transparent now ;) 14:03
seatek wow -- it even works backward -- when you load the colum from the database into a variable of a type DateTime, it auto-creates a DateTime object for you based on the string in the database. very Cadillac. :) 14:11
Woodi_ taking lots of fuel ;) 14:11
seatek hehe :) 14:12
iBakeCake sub is-approx-rel (|c) { is-approx :rel-tol(1e-15), |c } 14:13
Is that how to curry in Perl 6 or is there some better way?
raiph m: (&say.assuming: 'foo')() # iBakeCake 14:15
camelia rakudo-moar 20d37a: OUTPUT«foo␤»
iBakeCake awesome. raiph++ 14:16
[Coke] can we pick a standard tempfile name in doc/Language/exceptions.pod6 that might pass a spell checker? 15:33
iBakeCake Yes! 15:34
s|/tmp/0IeSX_XSWO|my-script.p6| 15:35
[Coke] roger. 15:44
dalek c: 6a285c2 | coke++ | doc/Language/glossary.pod6:
fix typo
15:46
c: d7ecb33 | coke++ | doc/Language/exceptions.pod6:
use readable file names
c/spellcheck: cbaed78 | coke++ | doc/Language/rb-nutshell.pod6:
curley -> curly
c/spellcheck: df250da | coke++ | doc/Type/Parameter.pod6:
fix typo
c/spellcheck: 6a285c2 | coke++ | doc/Language/glossary.pod6:
fix typo
c/spellcheck: e8a3012 | coke++ | doc/ (3 files):
Merge branch 'master' into spellcheck
c/spellcheck: d7ecb33 | coke++ | doc/Language/exceptions.pod6:
use readable file names
c/spellcheck: 882da05 | coke++ | doc/Language/exceptions.pod6:
Merge branch 'master' into spellcheck
El_Che moritz: the repo idea would be a good thing. In my opinion standalone rakudo packages (maybe including zef/panda, now a install script) cover a different base than rakudo star (get a full distribution, but you have to compile it) and real OS packages (best QA and integration, but old). 17:17
El_Che moritz: I think specifically of my use case: docker, and applications with limited local dependencies 17:18
skids
.oO(everyone must've had to leave until the firemarshal was gone.)
17:36
dalek c: 31fa161 | (Zoffix Znet)++ | doc/Language/testing.pod6:
Correct is-approx behaviour with no tolerances

The function has been made[^1] to DWIM when no explicit tolerances are provided instead of assuming a default absolute tolerance of 1e-5, which proved nearly useless in real-world use cases.
  [1] github.com/rakudo/rakudo/commit/82...444d9991d5
18:44
dalek c: 6a93543 | (Zoffix Znet)++ | doc/Language/testing.pod6:
Mention DWIMMY is-approx uses *absolute* $expected

  ... to figure out what sort of tolerance to use
18:57
samcv is there a way to make perl6 let me redefine variables with 'my'? I know that shouldn't be done, i'm just trying to run a bunch of example code and want to check it to make sure nothing else is wrong with it 19:02
iBakeCake samcv: well, it does let you. It simply issues a warning 19:03
samcv: I think if you add CONTROL { when CX::Warn {.resume} }; somewhere at the top of the program it'll do the trick to silence them
m: CONTROL { when CX::Warn {.resume} }; my $foo = 42; my $foo = 88; say $foo 19:04
camelia rakudo-moar 82432a: OUTPUT«Potential difficulties:␤ Redeclaration of symbol '$foo'␤ at <tmp>:1␤ ------> 3:Warn {.resume} }; my $foo = 42; my $foo7⏏5 = 88; say $foo␤88␤»
iBakeCake m: CONTROL { default {.^name;} }; my $foo = 42; my $foo = 88; say $foo
camelia rakudo-moar 82432a: OUTPUT«Potential difficulties:␤ Redeclaration of symbol '$foo'␤ at <tmp>:1␤ ------> 3fault {.^name;} }; my $foo = 42; my $foo7⏏5 = 88; say $foo␤88␤»
iBakeCake ... or not :/
samcv yeah that didn't fix it. i get a ton of warnings and it doesn't run 19:04
i'm working to get the learnxinyminutes for perl6 much clearer and make sure 100% of the code is actually valid and has the correct response 19:05
iBakeCake m: class Foo {}; class Foo {}; say 42
camelia rakudo-moar 82432a: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Redeclaration of symbol 'Foo'␤at <tmp>:1␤------> 3class Foo {}; class Foo7⏏5 {}; say 42␤ expecting any of:␤ generic role␤»
samcv would be nice to run the whole thing at once, though at least the sections i've worked on i've checked sections of code.
iBakeCake Yeah, it doesn't let you redefine just any old thing
Split on lines that start with # and stick stuff into separate files :) 19:06
(or just .EVAL
)
m: my $code = Q:to/E/;␤class Foo {};␤# tis just a class␤#hehe␤class Foo {}␤say "hi"␤E␤$code.split(/(^^'#'\N+\n)+/)».EVAL 19:09
camelia rakudo-moar 82432a: OUTPUT«===SORRY!===␤Could not locate compile-time value for symbol Foo␤»
iBakeCake heee :}
samcv well # don't always seperate things. i could just seperate it at the spots it redefines things there's like 7 of them or rename the variables. i think it'd be nice to make it able to run 19:12
because the site lets you download a .pl file that has all the code in it 19:13
so not repeating variable names may be the way to go
iBakeCake +1
samcv i think i've fixed the multiple places where pseudocode was used as an example and replaced that with a working example. but i'm sure i'll find more when i fix the variable redefinition 19:14
gfldex samcv: you may want to peek into the following tool that we use to extract examples from the docs. It doesn't use EVAL to make compile time errors explode early. github.com/perl6/doc/blob/master/u...xamples.p6 19:16
samcv oh nice. great 19:17
fumlead Hi #perl6, could you please help me with: 19:20
method calc-op:sym<add> ($/) { make [+] $<num>; }
What is the [+] ?
Is it circumfix operator?
gfldex m: say [+] 1,2,3; # reduction + operator AKA sum 19:21
camelia rakudo-moar 82432a: OUTPUT«6␤»
[Coke] fumlead: docs.perl6.org/language/operators#..._Operators 19:22
fumlead [Coke]: thanks, exactly what I want 19:23
Searching in docs lead me to the array constructor 19:24
[Coke] someone should open a ticket in perl6/docs to make [] point to that. 19:26
gfldex i will fix it right away 19:27
iBakeCake gfldex++
dalek c: 6eddfd2 | gfldex++ | doc/Language/operators.pod6:
index reduction meta operators
19:29
dalek c: 47bbf0a | gfldex++ | doc/Language/operators.pod6:
index cross meta operator
19:33
c: c58aa6f | gfldex++ | doc/Language/operators.pod6:
index zip meta operator
rindolf Hi all! Is there any work being done on optimising the performance of sprintf in latest rakudo perl6? Can I help? 19:55
timotimo i don't think anybody has been working on that recently 19:58
[Coke] no one is actively working on sprintf, nope.
timotimo you can, of course, work on it if you like
[Coke] let us know if you need pointers on where to dig in. 20:02
samcv is it correct to say a variable declared with my $var is globally scoped in perl6? idk what do you call the part of the code not in MAIN and just by itself. like how it's scoped 20:21
mst it's still lexically scoped, just to the file 20:22
samcv yeah.
mst I often refer to that, in perl5, semi-innacurately, as "file scoped"
since it's not accessible from outside the file so it's arguably not global qua global
samcv yeah. i think that's good i'll call it $file_scoped. that makes it very clear the scope of it 20:23
rindolf [Coke]: hi! Sorry for the late response, and I could use some pointers. 22:16
samcv i think i'm correct about this, but in perl6 hashes are stored similarly to arrays unlike perl 5 22:17
and hashes in perl6 retain their order but perl5 does not. i think in perl 5 it's literally a 'hashtable' in the computer science definition making lookup very fast and deduplicating.
ok perl6 seems to remove duplicates too, but are the other things i said correct or are they not completely correct? 22:18
geekosaur I think perl6 hashes do not retain order, but the default presentation sorts the keys? 22:20
(for some reason)
samcv ah, so they are not stored the same as arrays right 22:22
that's what i would expect. learnxinyminutes says ‘Hashes are actually arrays of Pairs’ but i don't think that's correct
want to double check before i change it :) 22:23
geekosaur does not recall actual implementation, sadly
samcv i know they can be used ‘as’ arrays more easily than perl5 but i *think* they are converted by perl 6
geekosaur might be more a question for #perl6-dev 22:24
samcv i will try to dig a little more
i'll ask in there
cognominal m: $_ = 'abcd'; my ($b, $d) = @( m/a(b)c(d)/ ); say $b; say $d 22:26
camelia rakudo-moar eb6907: OUTPUT«「b」␤「d」␤»
cognominal m: $_ = 'abcd'; my ($b, $d) = m/a(b)c(d)/; say $b; say $d
camelia rakudo-moar eb6907: OUTPUT«「abcd」␤ 0 => 「b」␤ 1 => 「d」␤(Any)␤»
cognominal I thought the @() would be unecessary 22:27
geekosaur perl5 does that, but perl 6 needs to be more careful or it gets some other use cases wrong 22:28
more specifically, m// returns an item ($/), not a list/array-type thing 22:29
cognominal geekosaur, I thought the my ($b, $d) would set an array context 22:31
geekosaur, what use cases ? 22:32
geekosaur any time you have a thing that is an object that presents different scalar vs. array results (as $/ does), you need to provide some way to get either one
cognominal but again, the my ( ) should set an array context. Or is this Perl 5 thinking ? 22:33
geekosaur if you treat $/ as a single thing, you get the matched string and a list of Pair for captures. if you treat as an array then you just get the captures.
that's p5
p6 doesn't have contexts in that sense
cognominal I have not done Perl 6 in months, that's my perl 5 background taking over :( 22:34
geekosaur so, a problem with the p5 behavior is that the context at the callsite has action-at-a-distance on the function (cf. wantarray) 22:35
geekosaur whereas you'd kinda like functions to be consistent. so p6 does not magically propagate context, you need to tell it what you want (in this case with @()). (but then you end up with things like the single arg rule to produce behavior that people expect that context did in p5...) 22:36
timotimo rindolf: well, first of all you really need to have a benchmark so that you can measure not only improvements that you make, but also to find out what exactly is slow 22:44
rindolf timotimo: OK, sorry, but I need to go to sleep. 22:45
timotimo: good night.