»ö« 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.
sorear good * #perl6 05:59
dalek ecza: f9518fb | sorear++ | t/spectest.data:
Resort t/spectest.data
06:22
ecza: 50d44e4 | sorear++ | / (5 files):
Add new types Int, Rat, FatRat, Complex

Also adds a stripped-down copy of the DLR's bignum library, and the license for it.
moritz good morning 07:36
sorear hi moritz
moritz \o/ niecza has Int
sorear my class Int is Cool { }
nothing else yet.
how much continuous integrationy stuff are you doing with niecza? 07:37
moritz I run the spectets now and then :-)
same as rakudo, more or less 07:38
tadzik niecza: my Int $a = 2; sya $a 07:47
p6eval niecza v5-29-g50d44e4: OUTPUT«===SORRY!===␤␤Undeclared routine:␤ 'sya' used at line 1␤␤Unhandled exception: Check failed␤␤ at /home/p6eval/niecza/boot/lib/CORE.setting line 413 (CORE die @ 2)␤ at /home/p6eval/niecza/src/STD.pm6 line 1143 (STD P6.comp_unit @ 77)␤ at
../home/p6eval/niecza/src/S…
tadzik niecza: my Int $a = 2; say $a
p6eval niecza v5-29-g50d44e4: OUTPUT«Unhandled exception: Nominal type check failed for scalar store; got Num, needed Int or subtype␤ at /tmp/R9I_BBjuAI line 1 (MAIN mainline @ 1)␤ at /home/p6eval/niecza/lib/CORE.setting line 1395 (CORE C575_ANON @ 2)␤ at /home/p6eval/niecza/lib/CORE.setting line 1396
..(CORE module-…
sorear tadzik: when I say "add Int type", I mean exactly that. 07:48
tadzik I see
moritz $ mono run/Niecza.exe t/spec/S06-multi/positional-vs-named.t 08:47
1..26
Unhandled exception: Ambiguous dispatch for &earth
that one is new
moritz I wonder if that test is supposed to work 08:51
rakudo also says it's ambiguous 08:54
well, it probably is :-)
moritz rakudo: multi earth($me, :$you!) { say "$me, $you" }; earth('b', you => 4); 09:06
p6eval rakudo 786099: OUTPUT«b, 4␤»
dalek ast: 0058a89 | moritz++ | S06-multi/positional-vs-named.t:
remove ambiguous cases from positional-vs-named.t, fudge for rakudo
09:18
kudo: 4398a2e | moritz++ | t/spectest.data:
add a passing test file
09:22
Garda hi 10:27
who owns p6evel?
moritz Garda: it's open source, all the contributors own it 10:30
moritz and diakopter maintain it, mostly
dalek albot: 5cf1ccc | moritz++ | evalbot.pl:
remove hilighting fossile noticed by Garda++
10:34
donri is there a style guide for perl6? 11:03
stylistic inconsistencies really bug me in languages and with perl6 we have a chance for consistency from the start
sjn donri: language-enforced stylistic consistencies? sounds like you're looking for Python... 11:20
donri not enforced, conventions
moritz donri: most of current Perl 6 style is simply taken from Perl 5 style (see perldoc perlstyle) 11:21
sjn would like something like Perl6::Tidy one day, to at least give an option to create internal consistency within a project 11:21
moritz sjn: since we already have good Perl 6 parsers (std, niecza), development of such a module is very possible right now 11:24
just needs somebody doin' it
sjn moritz: noted :) 12:09
kanishka perl6: say3 13:35
p6eval pugs: OUTPUT«*** No such subroutine: "&say3"␤ at /tmp/iv1TIRre0b line 1, column 1 - line 2, column 1␤»
..niecza v5-29-g50d44e4: OUTPUT«===SORRY!===␤␤Undeclared routine:␤ 'say3' used at line 1␤␤Unhandled exception: Check failed␤␤ at /home/p6eval/niecza/boot/lib/CORE.setting line 413 (CORE die @ 2)␤ at /home/p6eval/niecza/src/STD.pm6 line 1143 (STD P6.comp_unit @ 77)␤ at
../home/p6eval/niecza/src/…
..rakudo 4398a2: OUTPUT«Could not find sub &say3␤ in main program body at line 22:/tmp/Xj4N5bvtBs␤»
kanishka perl6: say 3 13:36
p6eval pugs, rakudo 4398a2, niecza v5-29-g50d44e4: OUTPUT«3␤»
kanishka Segmentation fault I am this error message on every perl6 programme 13:39
TimToady kanishka: which version are you running, and what OS are you on? 13:49
maybe we can find someone with the same setup here to try it
kanishka I am on opensuse 11.4 64 bit perl 5.12.3 gcc 4.5.1 13:50
TimToady which implementation of Perl 6 do you have installed? 13:51
kanishka I installed from packet manager from yast
I will install maullay
TimToady you might do better downloading rakudo directly rather than trying to use a package manager 13:52
tadzik kanishka: which Rakudo version did you install? 13:52
oh
sorear good * #perl6 13:54
tadzik good afternoon sorear 13:55
isBEKaml Hello, #perl6! 14:07
TimToady o/ 14:08
tadzik isBEKaml: o/ 14:09
isBEKaml tadzik, TimToady: \o/
Does anyone know if we have any later versions of perl6 book than jan2011 from github? 14:10
moritz: ^^ ?
tadzik isBEKaml: I can build a fresh one for you :) 14:24
isBEKaml: but there should be a fresh build with R*, isn't there?
isBEKaml tadzik: ah, no. I didn't check R* modules. 14:25
tadzik: I'm currently setting up cpanm and looking to use book-to-html script from the repo. :)
tadzik oh, that requires plenty of LaTeX packages 14:26
isBEKaml Oh. :(
tadzik yeah, it's a pain 14:29
I can tell you what I have installed, maybe that'd help you
isBEKaml tadzik: I just setup cpanm and local::lib. 14:33
tadzik: It now looks like I have to set them up to run the pods one after another. Anyway, I was able to get out the regexes chapter into html (what I wanted ) :) 14:34
tadzik :) 14:38
isBEKaml for i in $(ls ../src/*.pod); do filename=$(ls $i|rev|cut -d. -f2|cut -d/ -f1|rev); perl -Mlocal::lib book-to-html $i > ../dist/${filename}.html; done 14:43
:D
isBEKaml off to reading p6book 14:50
tadzik on writing Java :) 14:53
sorear ruoso!! \o/ 14:58
std: :16< abc * :12<0a> ** 5 >
p6eval std 34fe626: OUTPUT«===SORRY!===␤Malformed radix number at /tmp/mHwH_zJ3Gi line 1:␤------> :16<⏏ abc * :12<0a> ** 5 >␤ expecting number in radix notation␤Parse failed␤FAILED 00:01 111m␤»
sorear std: :16<abc * :12<0a> ** 5 >
p6eval std 34fe626: OUTPUT«===SORRY!===␤Malformed radix number at /tmp/OIvZ2VK8my line 1:␤------> :16<⏏abc * :12<0a> ** 5 >␤ expecting number in radix notation␤Parse failed␤FAILED 00:01 111m␤»
sorear std: :16<abc*:12<0a>**5> 14:59
p6eval std 34fe626: OUTPUT«===SORRY!===␤Malformed radix number at /tmp/OngjyTJHzn line 1:␤------> :16<abc*:12<⏏0a>**5>␤ expecting number in radix notation␤Parse failed␤FAILED 00:01 111m␤»
sorear std: :16<abc*:12<0a>> 15:00
p6eval std 34fe626: OUTPUT«===SORRY!===␤Malformed radix number at /tmp/vuK5RlTieD line 1:␤------> :16<abc*:12<⏏0a>>␤ expecting number in radix notation␤Parse failed␤FAILED 00:01 111m␤»
ruoso hi folks...
tadzik hi ruoso 15:01
ruoso I'm trying to get back to normal routine... 3 months since I moved to NYC
sorear have you played with 6model? 15:02
ruoso nope... what is it? 15:03
sorear it's a new framework for nqp/rakudo which is highly based on smop 15:04
ruoso really??? that's awesome 15:05
where can I read more about it? 15:06
6model?
TimToady latest blog is 6guts.wordpress.com/2011/05/10/raku...-underway/
ruoso feel very happy that smop experiments got to such an important outcome 15:07
sorear TimToady: is STD correct to reject spaces in :16<abc * 10 ** 3> ? 15:08
TimToady it seems like a needless stricture 15:09
sorear Does the ** form imply Num, like 123e0 does? 15:10
TimToady seems sane-ish 15:16
ruoso :) it really is a happy day for me... 15:18
dalek d: 4b1b100 | larry++ | STD.pm6:
allow whitespace in radix notation
15:22
TimToady bbl & 15:23
jnthn oh hai 16:04
phenny jnthn: 16 May 19:59Z <tadzik> tell jnthn can we close rt.perl.org/rt3/Ticket/Display.html?id=65396 ?
jnthn is back from vacation :)
russia++, finland++ :)
tadzik yay, jnthn's back! 16:05
jnthn :) 16:06
It's nice to be home again, though I already miss Russia a bit ;) 16:07
ruoso but you know what a very interesting experiment would be? 16:08
porting 6model to p5guts
tadzik . o O ( 6moose ) 16:09
ruoso not moose, but using SV* as a representation
jnthn ruoso: :)
ruoso jnthn++ while 1; 16:10
and if NQP is bootstrapping, it would mean we would be able to run it in p5 alone
that would be very very interesting 16:11
tadzik oh, I see
jnthn ruoso: My more immediate goal was "get it to spit itself out on the CLR" but yes, if somebody wants to do Perl 5, nice. :)
ruoso lacks CLR knowledge... 16:12
I will try to spend some nights on it
ruoso jnthn: btw... I am very very much happy to see that my smop experiments ended up being useful after all :) 16:14
jnthn ruoso: Yes, it did. Thanks! :) 16:18
ruoso++
woldrich Where's masak when you need him. :(
jnthn woldrich: He may be online later on today.
woldrich okay, thanks
dukeleto good *, #perl6 16:49
masak oh hai, #perl6. 18:06
phenny masak: 19 May 20:26Z <tadzik> tell masak i.imgur.com/envA5.jpg something you may like :)
jnthn masak! \o/ 18:07
masak jnthn! \o/ :P
tadzik lolitsmasak! 18:08
masak tadzik: panda sushi! awwww :)
tadzik I knew it :)
jnthn It's to hard to grammar. ;)
tadzik yay, the channel no longer feels empty 18:09
masak and jnthn is in ur channel, hitting un-pause :)
jnthn
.oO( un-paws )
18:11
woldrich masak, hi. are you going to npw by train? 18:15
jnthn Actually, as the organizers, we plan to show up every day in a stretch limo... 18:17
masak one each.
woldrich jnthn, oh, right. 18:18
jnthn My limo will be so cool it'll have a built-in sauna.
masak woldrich: but technically, I will. since I live 10 minutes away from the venue by train. :)
jnthn oh, wait...
:)
woldrich masak, oh, I thought you lived in uppsala
masak woldrich: I did, until I got my new job in southern Sweden. 18:19
woldrich heh, okay
masak at the YAPC::Russia hackathon, I talked to a person who was worried that sigils in Perl might doom it to forever be a scripting language. 19:04
I listed what I considered to be some of the advantages of sigils -- namespacing, interpolation, separation of "nouns" from "verbs" -- but I felt there was an underlying issue that I couldn't express. 19:05
tadzik I don't quite get the idea
masak something about the "scriptiness" not residing in the sigils. 19:06
tadzik the lack of sigils doesn't make lua any less scripting
masak or Ruby.
masak I agree that many people will mistakenly *think* there is a connection between sigils and scriptiness. 19:07
bash and PHP, I guess, provide some guilt by association. :)
tadzik masak: I like the manifesto
masak (as do many uses of Perl itself, of course)
tadzik: oh, I haven't published it yet. still waiting for jnthn's approval. 19:08
tadzik oh, Carribean Pirates in the TV 19:09
masak` "Must named arguments bind to positional parameters?" -- a Manifesto: gist.github.com/984783 19:21
(the fallout of walking along the Neva and discussing Perl 6 binder semantics) :)
moritz masak`, jnthn: you do realize that renaming parameters is trivial? there's a special syntax for it 19:26
masak` moritz: you mean mapping argument '$a' to parameter '$b'? the syntax being :b($a)? 19:28
dalek p: ed37a36 | jonathan++ | src/ (7 files):
Apply patch from Richard Hainsworth to add Parrot vtable delegation.
p: 606ef7c | jonathan++ | src/stage0/ (6 files):
Update bootstrap.
p: e6326c0 | jonathan++ | src/core/NQPCapture.pm:
Use parrot_vtable_handler trait in NQPCapture for the performance win.
p: 88e0df7 | jonathan++ | src/pmc/sixmodelobject.pmc:
Enable Parrot vtable delegation for invoke.
jnthn moritz: Of course I know about that. I implemented it.
moritz: I don't think it really weakens the argument. 19:29
masak` moritz: if so, I don't see how that is a counter-argument to any of the three arguments in the gist.
masak` the actual parameter names are still just as exposed. 19:29
moritz right
jnthn masak`: It helps in so far as it gives you a way to introduce a new name and keep the old one available.
masak` and when they change in the module, code in the caller will break just as much.
moritz fwiw I'm of two minds about it
jnthn masak`: But that relies on people being aware of the need to do that. 19:30
Which I'm not at all certain will be the case.
masak` right.
moritz another argument against the feature is that it's easy to accidently create ambiguous dispatch
see my last commit to roast
jnthn It's sometimes OK to surprise people when there's a notable win.
masak` to spell it out, the *danger* here is when people go "ooh, a better name for my positional parameter. (good thing that doesn't break the API.)" 19:31
jnthn But in this case it's surprising and the win seems very small.
moritz OTOH I like $thing.split('foo', :limit(3))
masak` then maybe it should be a named parameter :)
Moukeddar Hello :) 19:33
masak` Moukeddar! \o/
Moukeddar how are you doing Sir?
masak` de-trains
good, good. getting off the train :P 19:34
Moukeddar nice 19:34
i've never been on one before
jnthn pushes his rakudo/nom patches he did on vacation 19:35
dalek kudo/nom: 972f1eb | jnthn++ | / (3 files):
Add Perl6::Metamodel::ParrotInterop role, which contains bits of the meta-model that aid integration with Parrot v-tables.
kudo/nom: 106288c | jnthn++ | src/metamodel/ (3 files):
Toss some code that's been (or will be) replaced.
kudo/nom: b97e7e8 | jnthn++ | src/Perl6/Metamodel/C3MRO.pm:
Compute MRO whenever it's needed, if it wasn't already computed yet. Also fix a bug.
kudo/nom: de0c496 | jnthn++ | src/Perl6/SymbolTable.pm:
Remember to actually install the stub code.
kudo/nom: 7f3c56d | jnthn++ | src/Perl6/Metamodel/BOOTSTRAP.pm:
Make Code's $!do attribute be the handler for Parrot's invoke vtable.
kudo/nom: cca4603 | jnthn++ | NOMMAP.markdown:
Update nom roadmap.
kudo/nom: a49f251 | jnthn++ | src/ (2 files):
Start sketching out more efficient approach to handling $_, $/, $! and %_.
kudo/nom: ee847fb | jnthn++ | src/Perl6/Actions.pm:
Toss some legacy trait handling code.
kudo/nom: 61974cc | jnthn++ | src/Perl6/ (2 files):
A few type handling updates.
kudo/nom: 4c6ce66 | jnthn++ | src/Perl6/SymbolTable.pm:
Factor out handling of doing bits of runtime during compile time; make sure the code has appropriate .loadlibs.
sorear good * #perl6 19:43
argggh I missed masak
Moukeddar mornin' 19:44
sorear \o/ 19:46
Moukeddar may i ask , where can i find some book about how to solve real-world problems using OO design and UML ? 19:47
sorear what's UML useful for? 19:48
Moukeddar modeling :)
i just got started using it
i meant learning it
sorear Is it worth learning? 19:49
Moukeddar well , it cleared some things for me
and it's essential (i've been told )
now i want to practice solving some real world problems :) 19:51
ruoso Moukeddar: www.amazon.com/UML-Distilled-Standa...amp;sr=8-5 19:54
I liked this one
sorear ruoso: have you heard of niecza yet?
Moukeddar that book , does it have some real world app analysis ? 19:57
dalek ecza: 800459c | sorear++ | lib/ (3 files):
Str methods for the new types
20:10
Su-Shee if you really can work practically with uml tools, you already can do that school of OO design and therefore don't really need the tool anymore but for illustrative purposes. unless you use visual xy which can generate code from it
sorear rakudo: say ((4 / 3) * (3 / 2)).WHAT 20:29
p6eval rakudo 4398a2: OUTPUT«Rat()␤»
sorear rakudo: say ((4 / 3) * (3 / 2)).perl
p6eval rakudo 4398a2: OUTPUT«2/1␤»
sorear TimToady: is this correct?
jnthn sorear: I'm quite sure that it's correct that it's Rat. 20:33
sorear: Whether it shoulda stripped the /1 I dunno. 20:34
rakudo: say ((4 / 3) * (3 / 2)).Str
p6eval rakudo 4398a2: OUTPUT«2␤»
jnthn I've hazy memories of a deliberate decision that Str does such things, but .perl does 2/1 so that we really end up with a Rat.
(e.g. if the .perl output is eval'd)
sorear rakudo: say (1.).WHAT 21:53
p6eval rakudo 4398a2: OUTPUT«===SORRY!===␤Unable to parse postcircumfix:sym<( )>, couldn't find final ')' at line 22␤»
sorear rakudo: say (1. ).WHAT
p6eval rakudo 4398a2: OUTPUT«===SORRY!===␤Unable to parse postcircumfix:sym<( )>, couldn't find final ')' at line 22␤»
sorear rakudo: say 10.WHAT
p6eval rakudo 4398a2: OUTPUT«Int()␤»
sorear rakudo: say 1.0.WHAT 21:54
p6eval rakudo 4398a2: OUTPUT«Rat()␤»
sorear rakudo: say 1.0
p6eval rakudo 4398a2: OUTPUT«1␤»
tadzik Pivorama. So awesome 22:06
sorear phenny: "rama" 22:07
phenny: "rama"?
phenny sorear: "branch" (es to en, translate.google.com)
sorear phenny: cz "rama"?
phenny sorear: The cz to en translation failed, sorry!
sorear phenny: ru "rama"?
phenny sorear: "rama" (ru to en, translate.google.com)
sorear phenny: pl "rama"?
phenny sorear: "frame" (pl to en, translate.google.com)
sorear phenny: pl "pivorama"?
phenny sorear: "pivorama" (pl to en, translate.google.com)
sorear what's a beer frame 22:08
tadzik Jonathan translated that to "Beer Restaurant"
But it sounds funny, Pivorama like Panorama
jnthn tadzik: The place was called "Pivorama", it described itself as a "Pivny restoran" (e.g. beer restaurant) :)
tadzik świetne :)
jnthn And yes, it's probably a pun on Panorama or some such :) 22:09
sorear there is a Noun-o-rama construction in English
did not expect to see it in slavland
jnthn They brewed their own beer. Several types. Some way too good. :)
sorear: Me either. Was amused. :)
sorear do you have a nice punny name for the slavic language family world?
something at least as nice as "sinosphere" 22:10
tadzik sinusfera?
jnthn slavosphere? :)
tadzik słowianstrefa? :P
jnthn :P
tadzik I never heard of sinosphere before 22:11
jnthn: I'm afraid that the latest performance win in nqp is actually a performance fail 22:12
jnthn tadzik: Oh? 22:13
tadzik make test jumped from 22 seconds to 63
jnthn erm.
tadzik and regex.t fails
jnthn wtf.
That's...odd.
jnthn tadzik: any Parrot update in the meantime? 22:14
tadzik jnthn: I don't think so. I'm going back a few commits to investigate
jnthn I saw bacek++ put in some patch but it looked unharmful performance wise.
sorear btw, jnthn 22:15
will Rakudo/nom support 'my int $x = 5; $x++' ? 22:16
jnthn sorear: Don't plan to do that in this branch.
sorear: Trying to keep it limited in scope.
sorear: Want to do that shortly after the branch work though.
Well, along with some more general container changes. 22:17
tadzik jnthn: good news, it's even worse on 606ef7c0ed, "Update bootstrap" 22:18
sorear MSPL-- # You call this class "BigInteger", why does it have no parsing methods
er
MSPL++ MSFT--
jnthn tadzik: Ah.
tadzik now trying the after-bacek commit
jnthn tadzik: So it's not the patch that caused the regression.
tadzik nope 22:19
sorear rakudo: say 0x1.8 22:21
p6eval rakudo 4398a2: OUTPUT«===SORRY!===␤Confused at line 22, near "say 0x1.8"␤»
jnthn tadzik: Hmm. Seeing some performance drop (though less drastic than you report) on my laptop. 22:22
tadzik jnthn: I think my first test run didn't run the p6regex.t 22:26
tadzik hrm, something else must've changed on my machine by then 22:30
gone sleeping for now &
jnthn sleep & 22:38
ruoso sorear: niecza? 22:48
sorear ruoso: yes 22:49
ruoso no... I haven't... what is it?
sorear it's the compiler I've been working on for the past not-quite-a-year
perl6: say "foobar" ~~ /foo | \w+/ 22:50
p6eval rakudo 4398a2: OUTPUT«foo␤»
..pugs: OUTPUT«Error eval perl5: "if (!$INC{'Pugs/Runtime/Match/HsBridge.pm'}) {␤ unshift @INC, '/home/p6eval/.cabal/share/Pugs-6.2.13.16/blib6/pugs/perl5/lib';␤ eval q[require 'Pugs/Runtime/Match/HsBridge.pm'] or die $@;␤}␤'Pugs::Runtime::Match::HsBridge'␤"␤*** '<HANDLE>' trapped by operat…
..niecza v5-30-g800459c: OUTPUT«foobar␤»
sorear ruoso: that's the feature that stands out most so far. 22:52
ruoso: github.com/sorear/niecza
ruoso: targets .net
(currently)
ruoso interesting 22:53
ruoso looking at the github page...
dalek ecza: 3682a76 | sorear++ | lib/ (4 files):
Backend support for Int and Rat literals
23:45
sorear ruoso: what do you think of it?