»ö« 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.
lue [Coke]: yes I would. 00:16
phenny lue: 26 Nov 16:38Z <[Coke]> ask lue if he wants rdstar to be added to the planet sixperl feed.
[Coke] lue: what name do you want listed with the blog? 00:44
lue lue is fine. (unless you're not talking about my name)
[Coke] added. 00:46
[Coke] (may take some time to propagate) 00:46
moritz good morning 05:12
oh noez, the test failure in Bailador is related to precompilation :(
perl6 -Iblib/lib t/05-post-content.t # fails
perl6 -Ilib t/05-post-content.t # works
sorear o/ moritz 05:23
moritz \o sorear 05:43
moritz nr: multi postfix:<!>($x) { $x == 0 ?? 1 !! $x * ($x-1)! }; say 5! 05:57
p6eval rakudo e6e158, niecza v22-44-g0247fe5: OUTPUT«120␤»
mtymula Hello;p 06:24
sorear Hello mtymula 06:28
mtymula Does optional parameters work in subroutine signatures? Or maybe it is not implemented yet...? 07:28
FROGGS mtymula: it does work, ya 07:29
IIRC you have to prepend the whatever-* to the parameter variable
tadzik append ?, I think 07:30
mtymula Hm.. than wtf? I get runtime error when calling such sub. 07:31
sorear rn: sub foo($x?) { say $x } ; foo 5; foo 07:34
p6eval rakudo e6e158, niecza v22-44-g0247fe5: OUTPUT«5␤Any()␤»
sorear rn: sub foo($x = 12) { say $x } ; foo 5; foo
p6eval rakudo e6e158, niecza v22-44-g0247fe5: OUTPUT«5␤12␤»
sorear both optional parameters and optionals with defaults work in both major impls
mtymula_PC ok, let me show you what i wrote... maybe it's my foult... 07:35
i have sub like this:
multi sub process_template($input, $output, %params?){ say "open $input"; say "replace {%params.perl}"; say "save $output"; }
i execute it like this:
process_template("from.tmpl", "to.html");
and i get that: 07:36
open from.tmpl Method 'perl' not found for invocant of class 'Hash' in 'process_template' at line 12:multiple_signatures.p6 in main program body at line 25:multiple_signatures.p6
sorear mtymula_PC: is it possible you are confusing optional parameters with slurpy parameters? 07:37
mtymula_PC well i don't think so...
what i want to do is write a sub with some parameters that are optional so i don't need to write the same sub few times just to handle all cases 07:39
so in this case i don't need a %params....
to do this i should write %params? and then it would be optional right?? 07:40
FROGGS then you would be able to pass a hash optional 07:41
but it must be a hash then
FROGGS or you have to flatten your params when calling your sub 07:41
mtymula_PC yes but i do that 07:42
beside this one hash i have also two scalar
^scalars
$input, $output, %params?
FROGGS r: multi sub process_template($input, $output, %params?){ say "open $input"; say "replace {%params.perl}"; say "save $output"; }
mtymula_PC whan i call $input, $output
p6eval rakudo e6e158: ( no output )
FROGGS r: multi sub process_template($input, $output, %params?){ say "open $input"; say "replace {%params.perl}"; say "save $output"; }; process_template("from.tmpl", "to.html"); 07:43
p6eval rakudo e6e158: OUTPUT«open from.tmpl␤replace ().hash␤save to.html␤»
FROGGS looks good, no?
r: multi sub process_template($input, $output, %params?){ say "open $input"; say "replace {%params.perl}"; say "save $output"; }; process_template("from.tmpl", "to.html", 1); # should die
p6eval rakudo e6e158: OUTPUT«===SORRY!===␤CHECK FAILED:␤Calling 'process_template' will never work with argument types (Str, Str, Int) (line 1)␤ Expected any of:␤ :($input, $output, %params?)␤»
FROGGS r: multi sub process_template($input, $output, %params?){ say "open $input"; say "replace {%params.perl}"; say "save $output"; }; process_template("from.tmpl", "to.html", |(1 => 2)); # should die 07:44
p6eval rakudo e6e158: OUTPUT«Unexpected named parameter '1' passed␤ in sub process_template at /tmp/VeDlxHesKc:1␤ in block at /tmp/VeDlxHesKc:1␤␤»
mtymula Is it possible that by instalation of rakudo does not hande that becouse it is obscure?
FROGGS r: multi sub process_template($input, $output, %params?){ say "open $input"; say "replace {%params.perl}"; say "save $output"; }; my %optional; process_template("from.tmpl", "to.html", %optional); # should work
p6eval rakudo e6e158: OUTPUT«open from.tmpl␤replace ().hash␤save to.html␤»
FROGGS mtymula: dont think so 07:45
it is not obscure what you want
mtymula_PC r: multi sub process_template($input, $output, %params?){ say "open $input"; say "replace {%params.perl}"; say "save $output"; } process_template("from.tmpl", "to.html"); 08:01
p6eval rakudo e6e158: OUTPUT«===SORRY!===␤Confused␤at /tmp/ZGZsFGsHLH:1␤»
mtymula_PC multi sub process_template($input, $output, %params?){ say "open $input"; say "replace {%params.perl}"; say "save $output"; }; process_template("from.tmpl", "to.html");
r: multi sub process_template($input, $output, %params?){ say "open $input"; say "replace {%params.perl}"; say "save $output"; }; process_template("from.tmpl", "to.html");
p6eval rakudo e6e158: OUTPUT«open from.tmpl␤replace ().hash␤save to.html␤»
mtymula_PC here it works... on my PC it does not... 08:02
azawawi hi 08:08
phenny azawawi: 26 Nov 19:49Z <tadzik> tell azawawi I told panda to install random files from lib as well :) Hope this suits you
azawawi when is the release of rakudo star 2012-11 ? 08:09
FROGGS in the next days I suppose
azawawi and what are the expected features/enhancements?
FROGGS there is an announcement in the repo 08:10
rakudos changelog shows a bit more though
azawawi takes a look at github.com/rakudo/star/blob/master...ce/2012.11 08:11
FROGGS mtymula_PC: can you show us your script and your error message that you get at home? 08:12
using a no-paste service of your choice
azawawi no threading... oh well :)
FROGGS not yet ;o)
mtymula In a minute
dalek p: e9ab312 | (Tobias Leich)++ | src/ (2 files):
add indirection for 'Unrecognized backslash sequence'
08:40
mtymula_PC FROGGS: ok i am back 08:41
my programm:
use v6; multi sub process_template($input, %params){ my $output = substr($input, 0, -4) ~ "html"; say "open $input"; say "replace {%params.perl}"; say "save $output"; } multi sub process_template($input, $output, %params?){ say "open $input"; say "replace {%params.perl}"; say "save $output"; } my %data = ( fname => "Foo", lname => "Bar", ); process_template("index.tmpl", %data); say "-- two subroutines with different sig
ups ... there is a char limit here... 08:42
moritz IRC generally has
mtymula_PC than once again:
moritz NO
don't paste it here
paste it to a nopaste site
and tell us the URL
mtymula_PC ??
moritz !!
mtymula_PC what is it??
moritz en.wikipedia.org/wiki/Pastebin 08:43
sorear pick one, there are thousands to choose from
moritz FROGGS: re commit b6145c1, you can use $*W directly inside src/Perl6/Grammar.pm
FROGGS: so you can do { $*W.throw($/, 'X::Backslash::NonVariableDollar') 08:45
mtymula_PC ok, it is here: pastebin.com/t99UNhy5
moritz FROGGS: I mean directly, without the indirection 08:46
FROGGS moritz: ahh, cool, thanks
moritz mtymula_PC: upgrade to a newer version of rakudo 08:48
mtymula_PC: which one are you using?
FROGGS moritz: you get a better pull request then 08:49
mtymula_PC 2011 04
FROGGS wow
grondilu mtymula_PC: that's old indeed
moritz mtymula_PC: that's like, 1 and a half year old
FROGGS mtymula_PC: we are almost in the year 2013 ;o)
moritz lots of bugs have been fixed since then
mtymula_PC oh come on... 08:50
grondilu mtymula_PC: rakudo is growing very fast, so you really want to keep up to date
moritz in particular, the bug you are experiencing has been fixed in the mean time
mtymula_PC just tell me how exactly can i do it in a save way:)
sorear where did you get that version?
distribution?
mtymula_PC from rakudo.org/ 08:51
quite some time ago...
moritz then do the same thing that you did back then, but do it with a newer version :-)
mtymula_PC ok, so it will overide what i have right now 08:52
?
moritz actually it's best if you remove the current installation first
mtymula_PC oh.. crap... can you tell me what i need to do exactly? 08:53
moritz not without more information
where is rakudo installed? what operating system do you use?
the first thing you should do is switch off the "tell me exactly what to do" mode, and turn on the "think and provide useful data" mode :-) 08:54
mtymula_PC ok lets do it 08:59
i have a windows xp32 and fedora
FROGGS for winxp I'd recommend the rakudo star distribution from last month 09:00
github.com/rakudo/star/downloads 09:01
the first one called "Windows installer for Rakudo Star 2012.10 "
mtymula_PC_ ok, i am back... connection was terminated.. 09:02
location of my rakudo on winxp is C:\Rakudo
FROGGS <FROGGS> for winxp I'd recommend the rakudo star distribution from last month 09:04
<FROGGS> github.com/rakudo/star/downloads
<FROGGS> the first one called "Windows installer for Rakudo Star 2012.10 "
FROGGS rename that C:\Rakudo to something else, and install the msi 09:04
mtymula_PC_ ok than
FROGGS if you think you have everyhing (your scripts an all), then remove that renamed foler 09:05
folder
on your linux box do that: github.com/rakudo/rakudo/blob/nom/INSTALL.txt
but I'm not sure if the step in line 54 work, IMO there is no perl6 executable in the build directory at that time 09:06
moritz why not? 09:07
line 45 should have created one
FROGGS hmmmm 09:08
I need to check
I always use the install/bin/perl6 ... 09:09
moritz that's the saver alternative, yes
but not before you ran make install
FROGGS right
mtymula89 Ok i installed rakudo on win, anything else to do? 09:10
tadzik hack!
FROGGS well, test your script.. 09:12
mtymula89 Wooooooohooooo.... hey, guess what? It works;) 09:13
FROGGS ;o)
moritz had to add a * in the substr() call to make it work
FROGGS to install on your fedora follow this one: github.com/rakudo/rakudo/blob/nom/INSTALL.txt
mtymula89 Indeed mortiz 09:14
That i can grasp:)
moritz should reinstall his hilight for mortiz
arnsholt I don't think I ever type in more than three or four letter prefixes of any given nick =D 09:15
mtymula89 Ok, I will deal with fedora later... 09:16
moritz (tab completion)++ 09:17
sorear too many tims
mtymula89 Thanks a lot! 09:18
jnthn morning, #perl6 09:28
FROGGS morning jnthn 09:29
moritz \o jnthn
sorear morning #jnthn 09:30
jnthn Spontaneous hardware failure. Didn't have that one happen while teaching before...
(thankfully, not the machine I was delivering the course from...) 09:31
moritz the chair you were sitting on? :-)
jnthn :P 09:32
No, one of the student computers.
Just started emitting a series of loud bleeps. I suspect overheating, but the fact that half an hour later turning it on only produces the same and no output suggests it's a fairly drastic hardware fail... 09:33
*suspected
mtymula89 Capacitors on a mainboard or ram mems 09:34
Or a gpu on your graphic card 09:35
Start from it than check rams if all fails look carefuly on the motherboard 09:36
moritz wrong approach 09:37
the teacher isn't responsible for the student's hardware
tadzik it would be way too easy to avoid doing anything in class 09:38
moritz go get a replacement, and have somebody else fix it :-)
tadzik like swapping mouse and keyboard cables back in the days when they were on ps/2...
mtymula89 Ok, just do nothing.. than
jnthn yes, replacement hardware is l'answer 09:49
mtymula89 L'answer ?? Meaning lame ?? 09:51
moritz "the answer", but with french article 09:52
mtymula89 Oh.. i almost felt offended;p joke ofc 09:53
jnthn :P 09:54
Playing with languages. We does it. :)
sorear jnthn: clearly you should teach at my old college, we had projectors die on us weekly
jnthn sorear: ouch...I only saw that happen once 09:56
Smoke came out!
mtymula89 Where do you teach?? 09:57
sorear jnthn: These were mostly just soft failures that forced the profs to wing it for the rest of the period
jnthn mtymula89: Various places in Sweden :) 09:58
In Malmo today
mtymula89 Oh than maybe the teason is a tempetature differences:)
*Reason 09:59
jnthn bah, it's not even cold here :P
mtymula89 Joking:)
jnthn Dang, we get snow on Friday and I won't be here for it... 10:00
mtymula89 At least you get it... from where i sit it looks like there will be snowing after new yers eve 10:01
jnthn ok, back to teaching stuffs...bbl :) 10:02
mtymula89 tadzik: are there any lectures about perl6 in our butiful country 10:03
:)
tadzik mtymula89: well, I did one once :) 10:04
2 or 3 years ago, or something. Just before the first Rakudo Star
mtymula89 In wa-wa?
tadzik yep
I should still have slides somewhere, if you want to have a look
I think someone reused them in Spain later :) 10:05
mtymula89 It would be great:)
sorear hah, wikipedia actually has a redirect wa-wa -> Warsaw
mtymula89 But the reason i ask is that i really would like to parricipate nex time 10:06
huf wa-wa?
tadzik github.com/tadzik/Perl6-slides, one of my oldest repos it seems :)
mtymula89 sorear... clever
tadzik huf: it's an abbreviation of WArszaWA
huf ah
sorear It's funny because it's also the (US) English onamatopoeia for crying 10:08
(probably with a different value for 'w' though)
mtymula89 So it is more accurate than you think...
sorear How so? 10:09
tadzik oh, I don't associate Warsaw with crying :)
mtymula89 No? Read the history books... 10:10
Woodi morning everyone :)
tadzik if I only thought about history I'd have to cry everywhere I go
mtymula89 Well you are right 10:12
Woodi moritz: "precedence related traits" - what's they are/do/usefull for ? it's looks so specialized that hard to imagine it usefullness... 10:14
mtymula89 Tadzik this is exactly what i need:) meaning these slides.
huf tadzik: but if your w is a v, what is v? 10:15
... or is it a v?
tadzik we don't have 'v' in Polish alphabet
huf tadzik: whoa. 10:15
Woodi btw. on Debian testing rakudo 2012.10 is available straight from repos :) 10:16
tadzik mtymula89: they're pretty outdated ins ome places, especially regarding the ecosystem
Woodi huf: no x too :)
nor q :)
huf Woodi: well yes, we dont have x or q either
mtymula89 Yes i see that but nevertheless usefull
huf and y only in compounds
but v feels so standard to me ;)
oh well
Woodi huf: here is ... ? :) 10:17
huf hungary
Woodi haloo bro ! :)
huf oh right, we drink and fight together 10:17
or as the rhyme is known in hungarian, "we drink each other's wine together" 10:18
sorear what amuses me is the j
French, English, Spanish, and German have clearly different js
huf the germans are correct tho, the others are wrong ;) 10:18
Woodi huf: I had something like that in mind :) 10:19
what it sounds in German ? :) 10:20
bonsaikitten Woodi: like a "j" of course 10:21
what a silly question!
Woodi o, sorry that I ask... ;)
sorear Woodi: I think german and polish have the same j
mtymula89 I agree 10:22
Woodi I realy need to learn some "niemiecki" :)
sorear the German j is used in most places to the east, until you get to the Cyrillic zone
mtymula89 E! gosciu!! Ja ci dam cyrylice;) 10:23
Woodi Russians have j too, but, hmm, ciphered in writting language :) 10:24
|-O I think...
huf star trek?
i see you call them "német"-s too :) 10:25
sorear .u CYRILLIC LETTER IO
phenny U+0451 CYRILLIC SMALL LETTER IO (ё)
sorear .u CYRILLIC LETTER YO
phenny sorear: Sorry, no results for 'CYRILLIC LETTER YO'.
sorear .u ю 10:26
phenny U+044E CYRILLIC SMALL LETTER YU (ю)
sorear I suppose it's a question of cultural norms relative to transliteration 10:28
Woodi yea, all our languages are correct for us :) 10:29
so, there are plans for 3-months release of * ?
mtymula89 Just like religion, politics, rase, belive...
sorear when you get to Japan, they have the syllable じ, which sounds like it starts with an English j, and is usually transliterated ji, except when they use zi instead 10:30
mtymula89 Untill you jump to the more abstract level of understanding
Woodi mtymula89: no, no... religion, politics and rase ar no 'all the way down' correct :) 10:31
sorear the Japanese cultural interpretation of the Latin alphabet is fairly closely aligned with the English one
mtymula89 I am not saying they are, i am saying they feel like they are
sorear whereas the Chinese interpret it in a way completely unlike anything in Europe 10:32
they're just squiggly lines, there is no one correct way to interpret them as sounds
Woodi I realy wonder how that babel thing happened :) 10:34
sorear I blame radiation.
Woodi I blame time and separation :)
dalek kudo-js: 184c9e4 | (Paweł Murias)++ | / (2 files):
[nqp] start of work on rules
kudo-js: 4ff91b7 | (Paweł Murias)++ | / (3 files):
[nqp] Pass test 31, very basic rules support.
Woodi sorear: so niecza NativeCall can be .pm compatible ? 10:35
sorear Woodi: yes ideally 10:37
Woodi suuuper!
mtymula89 Who wrote using perl 6 book, chapter 4 ??
Every example reminds me about eating.... 10:38
Woodi pls tell you want to shoot someone or thanks ? :)
mtymula89 I want him to buy me lunch 10:39
Woodi I think someone from here :) 10:40
Woodi coffe making
arnsholt git blame can probably tell you who wrote most of it =)
sorear looks like jnthncode 10:41
huh, git blame is very mixed 10:42
arnsholt Yeah, food and beer definitely sounds like jnthn =D 10:42
sorear chromatic, moritz, jnthn, tim bunce, Przemysław Wesołek on one page
kresike hello all you happy perl6 people 10:43
sorear yo kresike
kresike sorear, o/
mtymula89 Hi
Woodi sorear: one more question: if you would want to implement ropes for niecza you will do it ib C# or in C ? 10:48
just hoping for nice, new C lib... 10:49
sorear Woodi: c# for current-niecza, C for the hypothetical C backend 10:50
I do not think foreign calls are cheap enough to use here
Woodi k, thanx 10:51
arnsholt Woodi: And if some part of NativeCall turns out to be completely incompatible with Niecza, we'll probably want to change S21 10:52
sorear bear in mind that I have not read any of the new S21 and I have only the barest minimum understanding of NativeCall 10:53
I just know that it's a high priority and the CLR can support the backend aspects of it
arnsholt How familiar are you with the C# (CLR?) foreign function interface stuff, BTW? 10:54
sorear arnsholt: somewhat. it doesn't seem particularly different from what I know from Parrot, Haskell, and VB6 10:56
arnsholt Cool. There're some aspects of FFI I'm not sure how should be done (complex value types, specifically) 10:59
sorear We'll come up with something together.
arnsholt And jnthn suggested looking into how the C# FFI handles it, as it needs to tackle similar problems as Perl 6
Woodi arnsholt: while using NativeCall it happens to me wanting to call C preprocessor macro. for now I hardcoded correct numbers inserted by macro in .pm. I there a way to call C macro from Perl6 ? 11:00
arnsholt That's impossible
Woodi ok :) 11:01
arnsholt preprocessor macros are handled at compile-time, and they're not available in the library
sorear arnsholt: oh, and I've also more or less completely read the x86 and amd64 C and C++ ABI specs (plus a much smaller amount of 68k and PPC)
arnsholt Oh, that's awesome!
Another area I'm less knowledgeable in than I should be 11:02
dalek c: fe0907e | (Pawel Pabian)++ | lib/Capture.pod:
Fixed missing closing bracket in example.
11:19
isBEKaml OHHAI, #perl6! 11:27
moritz LOL IT'S isBEKaml
tadzik oh hai 11:28
isBEKaml R* release in a couple days? 11:29
isBEKaml excitedly looks forward to it
moritz maybe even today
there's a release candidate already
moritz.faui2k3.org/tmp/rakudo-star-...RC0.tar.gz 11:30
isBEKaml moritz++ #fast, as ever! 11:31
BTW, I think the last R* release msi didn't include modules. Was that intended? 11:32
*msi*
how do I build this dist? Do I have to build parrot, nqp and rakudo separately(cd'ing into them, out of the tarball) 11:38
Don't we have an unified Configure.pl/Makefile for this? 11:39
moritz just perl Configure.pl --gen-parrot && make install
isBEKaml --gen-parrot won't clone a new parrot repo if it finds one in the current directory?
moritz correct 11:40
isBEKaml awesome.
I hate to clone an 100mb repo again.
FROGGS moritz: do you need some more information about RC0? 11:41
some module tests are failing, but just the ones that were discusses here yesterday 11:42
moritz FROGGS: no
isBEKaml rn: say $::x; 11:47
p6eval niecza v22-44-g0247fe5: OUTPUT«Unhandled exception: System.NullReferenceException: Object reference not set to an instance of an object␤ at Niecza.StashCursor.Core (System.String key, Boolean final, Niecza.StashCursor& sc, Niecza.Variable& v, Niecza.Variable bind_to) [0x00000] in <file…
..rakudo e6e158: OUTPUT«===SORRY!===␤Variable $x is not declared␤at /tmp/Y6HqLX3ofD:1␤»
isBEKaml rn: my $::x = 3; 11:48
p6eval rakudo e6e158: ( no output )
..niecza v22-44-g0247fe5: OUTPUT«Potential difficulties:␤ $x is declared but not used at /tmp/V56t3OwDst line 1:␤------> my ⏏$::x = 3;␤␤»
sorear sleep& 11:48
isBEKaml g'night, sorear
FROGGS moritz: here we go: github.com/rakudo/rakudo/pull/92 11:49
isBEKaml r: say (;:[]) 11:55
p6eval rakudo e6e158: OUTPUT«␤»
moritz r: say (:[]).perl 11:56
p6eval rakudo e6e158: OUTPUT«[]␤»
FROGGS I thought : is for named params, what does it do without the routine call? 11:57
moritz create a pair, normally
r: say ( :a ).perl
p6eval rakudo e6e158: OUTPUT«"a" => Bool::True␤»
FROGGS ahh, two dots, I see
moritz r: say ( :a<b c> ).perl 11:58
jnthn But the semicolon seems to impair it somehow...
p6eval rakudo e6e158: OUTPUT«"a" => $("b", "c")␤»
jnthn That's odd.
moritz r: say (;:[]).perl
p6eval rakudo e6e158: OUTPUT«[]␤»
FROGGS r: say (;:a).perl
p6eval rakudo e6e158: OUTPUT«"a" => Bool::True␤»
moritz the semicolon doesn't seem to do anything
jnthn oh!
I missed the lack of .perl :) 11:59
phew, not a weird bug then :P
FROGGS *g*
moritz so, what does the colon in :[] do?
jnthn At least I got to make a pun :)
Good question...
moritz how fitting for your role
moritz waits for a pun on role punning
isBEKaml moritz, jnthn: That's merely RT#115284 12:00
:)
FROGGS nothing? I mean it is supposed to devide terms... but there is none before ;
moritz it's supposed to do quite a lot of different things, depending on context
std: :[]
p6eval std a8bc48f: OUTPUT«ok 00:00 42m␤»
isBEKaml std: say (;:[]) 12:01
p6eval std a8bc48f: OUTPUT«ok 00:00 44m␤»
moritz n: say (:[]).perl
jnthn It certainly should parse, says STD
p6eval niecza v22-44-g0247fe5: OUTPUT«"" => []␤»
moritz pugs: say (:[]).perl
p6eval pugs: OUTPUT«*** ␤ Unexpected ":[])."␤ expecting "::"␤ at /tmp/bmqlZvEEY_ line 1, column 6␤»
isBEKaml FROGGS: I believe it looks like: say ; :[] # the :[] does nothing here.
r: :[] 12:02
p6eval rakudo e6e158: ( no output )
moritz no, it's an argument to say()
FROGGS well, you get the last thing within ()
r: say (1;2;3;4)
moritz r: sub f(|a) { say a.perl }; f (:[])
p6eval rakudo e6e158: OUTPUT«4␤»
rakudo e6e158: OUTPUT«Capture.new( list => ([],).list, hash => EnumMap.new())␤»
isBEKaml moritz: say;
moritz r: sub f(|a) { say a.perl }; f (;:[])
p6eval rakudo e6e158: OUTPUT«Capture.new( list => ([],).list, hash => EnumMap.new())␤»
isBEKaml r: say
p6eval rakudo e6e158: OUTPUT«␤»
moritz r: say []
p6eval rakudo e6e158: OUTPUT«␤»
moritz isBEKaml: that's no prove :-)
r: sub f(|a) { say a.perl }; f (;:[]) # look, &f sees the [] 12:03
p6eval rakudo e6e158: OUTPUT«Capture.new( list => ([],).list, hash => EnumMap.new())␤»
isBEKaml moritz: :) farenuff.
FROGGS
.oO( E_FARENUFF )
12:03
isBEKaml fair, fare, damn homonyms! 12:04
moritz aye, there's a fare amount of them in English :-)
isBEKaml jnthn: when can we see rakudo journeying into jvm land? :-) 12:07
FROGGS he said something about december 12:08
but I guess he starts to work on that then, not finishing it ;o)
isBEKaml FROGGS: yes, I was asking about initial workings. Not the finished product. I thought it'd be interesting to see it evolving. 12:09
moritz: rakudo star doesn't install precompiled modules into ~/.perl6 ? 12:11
moritz isBEKaml: no 12:12
erm, I hope not, at least
if so, I need to fix it
~/.perl6/lib is deprecated
isBEKaml I was wondering because the build seemed to be compiling those modules.
moritz install/lib/parrot/4.6.0/languages/perl6/lib/LWP/Simple.pm 12:13
install/lib/parrot/4.6.0/languages/perl6/lib/LWP/Simple.pir
isBEKaml: it installs them, but not into ~/.perl6/lib
isBEKaml moritz: ah, I didn't see that one. :-) 12:14
moritz: any reasons for deprecating ~/.perl6/lib apart from usability issues between distributions? 12:15
moritz isBEKaml: usability between different rakudo installations too 12:18
isBEKaml moritz: I remember that one. Stale pirs and others. Yapsi once bit me there. :) 12:21
moritz: would be nice to see p6doc installed along with other binaries in install/bin instead of modules/doc/bin. 12:22
moritz agreed 12:23
isBEKaml: could you open a ticket in github.com/rakudo/star/issues for that please?
isBEKaml moritz: done. github.com/rakudo/star/issues 12:26
whoops> github.com/rakudo/star/issues/12
moritz isBEKaml++ 12:27
isBEKaml moritz: github.com/svatsan/star/commit/cf0...0930b9241d 12:36
moritz: does this look like the fix?
moritz isBEKaml: might very well be 12:38
isBEKaml moritz: want me to send a pull request? 12:39
moritz isBEKaml: yes please
isBEKaml moritz: done. 12:42
isBEKaml perl6 -n -e '' hangs my machine. This behaviour is different from the one shown in RT#107992 12:50
moritz hangs?
it's supposed to read from standard input 12:51
and terminate when you send an EOF
isBEKaml boo, I should read. :|
sergot hi ! o/ 12:54
isBEKaml hello, sergot 12:55
jnthn phenny: tell isBEKaml once December comes, $dayjob gets much less intense and I expect to get some initial JVM things pushed, and will probably have LHF tasks for interested hackers. ;-) 13:45
phenny jnthn: I'll pass that on when isBEKaml is around.
FROGGS LHF? 13:46
FROGGS is interested in things he can do
jnthn FROGGS: Low Hanging Fruit
FROGGS ahh
jnthn As in, things that should be relatively easy to dig into without having to learn a mass of background.
FROGGS ya, thats my problem too
moritz I know a nice task 13:51
moritz change the star build system so that it bootstraps panda, and then uses panda to install the rest of the modules 13:52
at least I think that's a good idea to do
because currently we maintain the same logic in panda and in star, and that's a bit... nasty 13:53
tadzik I wonder how panda would react to having non-writable statefile
moritz hm 13:55
might need to have two state files
one non-writable, one writable
tadzik hm 13:56
now bootstrap.pl checks if it can write into %*CUSTOM_LIB, is that right? 13:57
moritz how does Perl 5 do it?
tadzik: correct
tadzik Perl 5 doesn't have local::lib by default :)
moritz ah, right
dalek rlito: cb31482 | (Flavio S. Glock)++ | / (5 files):
Perlito5 - js2 - allow using a string as a reference
14:51
[Coke] aaagh. I know we have some LOTR fans here. one of my favorite authors (Scalzi) just pointed out that we shouldn't get our hopes up about the hobbit... after all, it IS a prequel trilogy.
moritz :-) 14:56
arnsholt =D 14:57
When talking about the books, it's LotR that's the sequel though =) 14:58
kresike bye folks 16:02
dalek rlito: 5eb66c4 | (Flavio S. Glock)++ | / (5 files):
Perlito5 - alternate impl for caret Vars; 3 more tests pass in base/lex.t
16:07
jnthn evening, #perl6 17:01
dalek rlito: 69de328 | (Flavio S. Glock)++ | / (3 files):
Perlito5 - parser - decode caret Vars at compile-time
17:03
dalek rlito: 72f9f0a | (Flavio S. Glock)++ | / (4 files):
Perlito5 - Dumper - encode "unsafe" strings
17:11
diakopter jnthn: howdy 17:13
dalek rlito: 22e3af4 | (Flavio S. Glock)++ | / (3 files):
Perlito5 - js2 - caret Var cleanup
17:16
supernovus How does %*CUSTOM_LIB interact with @*INC, and which paths are searched first? One issue I had come across with users of Rakudo Star is that modules bundled with the distribution override newer versions installed with Panda. It's one of the reasons I never use Star, or any other distribution that includes non-core modules (other than "Test" of course.) 17:32
masak evenin', #perl6 17:33
supernovus I guess overriding wouldn't be a problem if we had the versioning support, so we could have multiple versions of modules installed. Anyone want to tackle that? (and if not, where do I begin to look at module discovery and loading, so I can look at hacking at it?) 17:35
diakopter masak: howdy 17:40
supernovus good * masak 17:43
FROGGS supernovus: If I understand moritz correctly then newer R* will use panda to install modules when installing R*. so there will be just one version of a module at a time 17:46
FROGGS supernovus: versioning support will not always help since sometimes you may want to downgrade to an older version 17:47
supernovus FROGGS: Hurray! That's fantastic! Still, nobody else has tackled module versioning, so if nobody objects, I wouldn't mind taking a look at it. I'm hunting for the location of the module loading stuff. 17:47
FROGGS supernovus++ 17:47
versioning ftw! 17:48
would it be a bad idea to support having different versions of a module installed at a time? 17:49
supernovus FROGGS: that's exactly where versioning is good, you can have a new version, and an old version, and by specifying version constraints in the use statement, you can say, "okay, I want at least this" or "I want newer than this, but older than this" or "I want this version specifically, and only this version, got it!"
FROGGS a path like lib/My/Module/1.0.0/[files] 17:50
so that you can explicitly use version 1.0.0 of a module from withing script A, and version 1.0.1 from script B
right
cool 17:51
supernovus Due to how the paths work, I'm thinking it would have to be more like lib/My/Module.1.0.0.pm6, as the use/require/need statements don't know about every module/class in a bundle, just path names. 17:52
FROGGS but you to fiddle with %*INC, so that the highest non-dev release gets picked when no version is specified
k
is there a spec about versioning? would be good to make one first before hacking 17:53
supernovus perlcabal.org/syn/S11.html specifies some of it, but I think it needs some updates. It was designed before the advent of any package managers for Perl 6, so it doesn't take into account the information from META.info, etc. 17:59
FROGGS I like the idea of having Module-1.0.0.pm6 and other in the same dir, so you would just need to symlink the newest to Module.pm6 18:02
that will work well for .pm's, but not for other things that dont have a version
like images or other resources 18:03
supernovus You wouldn't even need to do that, as if you didn't specify a version constraint in your use statement, it would use the newest version by default.
FROGGS will read S11 this evening
what if you want to require a module by its path? you would need to invent the whole versioning thing again in your code 18:04
with symlinks you can be sure that a Module.pm6 is there
supernovus The versioning spec as it currently exists is a bit lacking when it comes to things like resources or binaries. It was't designed with those in mind unfortunately. We may need to do some spec refining as well as implementation testing. It could take a few iterations to get something that everyone likes :-) 18:05
supernovus FROGGS: symlinks are great, and I use them a lot, but I also realize that many people run Windows, and does Windows have an equivalent to symlinks? Basically, whatever we do in the versioning spec, needs to be able to be supported on any platform. 18:06
FROGGS a fallback of a symlink is a copy of a file ;o) 18:07
supernovus I know some of my own libraries have depended on Unix specific features, and I'm 100% guilty of never testing my stuff on anything but Linux, but I'm trying to get better about writing stuff to be as platform neutral as possible :-)
supernovus prints CLA, signs it, and puts it in the "need to go to snail mail office" pile. 18:09
FROGGS did that last week 18:11
[Coke] supernovus: it is faxable, I think. 18:29
[Coke] or perhaps scannable and emailable. 18:29
[Coke] str parrot, at least, had that part worked out. not sure if TPF does.
tadzik supernovus: email it 18:30
it worked for me :)
supernovus tadzik: Hmm, that's nice to know, they didn't say anything about being able to e-mail it on the form itself. 18:33
That would certainly be a lot faster than snail mail...
Hmm, hope it's just my ISP, but perlfoundation.org is not coming up for me. 18:34
tadzik supernovus: isup.me/perlfoundation.org 18:36
...but it seems down to me as well :)
supernovus I'd say I'm glad I'm not the only one, but if it's down for a bunch of people, that's not a good thing. 18:38
[Coke] seen robrt 18:46
aloha robrt was last seen in 15671 days 18 hours ago .
supernovus Re-reading S11. It seems fairly complex. If we declare a class like "class Foo:auth<github:supernovus>:ver(v1.0.0)" how would we go about accessing the meta data such as "auth" or "ver" (or is that even supported in any implementations yet?)
[Coke] seen allison
aloha allison was last seen in #parrot 18 days 19 hours ago joining the channel.
sorear good * #perl6 19:03
supernovus good * sorear 19:04
FROGGS supernovus: btw, I have several platforms as VMs here to test things 19:43
supernovus Okay, digging in through the code, it appears the colonpairs appended to class/module names are stashed in the LongName and never referred to again. Making things even more complicated, use, require, need, etc. all handle things differently, and none of them seem to support colonpairs attached to the name. I'm going to have a learn a lot more about the guts of this thing before I can do anything useful. A crash course in NQP may h 19:44
elp, thankfully it seems most of the PIR blocks are gone. NQP I can handle, PIR is the devil's work (IMO)
FROGGS: I have Ubuntu 12.10 64 bit, Funtoo Linux current 64 bit, and Windows 8 Pro 64bit. I have Rakudo (not Star, a daily-built git checkout) and Niecza on both Linux distros, and don't even have developer tools on Windows, let alone a Perl 6 implementation. I should give it a try some day. 19:51
FROGGS I've got some BSDs, Mac OS x 10.6, solaris, gnu hurd, win xp and win 7, most of them to test Perl 5 stuff 19:53
supernovus Sweet. I used to have a bunch of test environments, but have gotten lazy. 19:54
grondilu nr: my @a = <f o>; say "foo" ~~ / < @abc > ** 3 /; 20:08
p6eval niecza v22-44-g0247fe5: OUTPUT«Potential difficulties:␤ @a is declared but not used at /tmp/_Myj7OgoCa line 1:␤------> my ⏏@a = <f o>; say "foo" ~~ / < @abc > ** 3␤␤Match()␤»
..rakudo e6e158: OUTPUT«#<failed match>␤»
grondilu nr: my @abc = <f o>; say "foo" ~~ / < @abc > ** 3 /;
p6eval niecza v22-44-g0247fe5: OUTPUT«Potential difficulties:␤ @abc is declared but not used at /tmp/e0LRFYzCgS line 1:␤------> my ⏏@abc = <f o>; say "foo" ~~ / < @abc > **␤␤Match()␤»
..rakudo e6e158: OUTPUT«#<failed match>␤»
grondilu nr: my @abc = <f o>; say "foo" ~~ / <@abc> ** 3 /; 20:09
p6eval niecza v22-44-g0247fe5: OUTPUT«#<match from(0) to(3) text(foo) pos([].list) named({}.hash)>␤»
..rakudo e6e158: OUTPUT«#<failed match>␤»
grondilu NYI in rakudo I guess
FROGGS tadzik: after sending the CLA to TPF, is there any reaction that one could expect? 20:37
masak FROGGS: don't think so.
at least, I don't remember one.
FROGGS masak: k 20:38
masak back when I sent mine in, people voted on #parrotsketch about whether to give out commitbits.
FROGGS interesting
masak I remember backloggin over people doing "+1" on the proposal to commitbit me. made me feel warm all over. :>
FROGGS ahh, so you dont have to dance your name in order to get commit bit? 20:39
masak I didn't. maybe you do. :P
but this was in, hm, 2008. and I haven't seen that voting process in a while.
jnthn We're givin' WHO a commit bit? :P
FROGGS well, is easier for me than for you when I think about it...
masak jnthn: hehe. you're four years late :P
jnthn :P
FROGGS++ # sending in CLA 20:40
FROGGS well, masak++ forced me to ;o)
masak CLA, the gift that keeps on giving.
FROGGS it is a bit like jehovah's witnesses, running around, knocking on doors: "do you believe in Perl?" 20:42
FROGGS but its okay, this way the code is saved 20:43
tadzik FROGGS: I don't remember any particular reaction, no :)
FROGGS thinking of the openstreetmap data in berlin that got "lost" because its "owner" decided to keep it close at some point 20:44
tadzik hehe,
Woodi versioning would be fine for perlcode.pm6. but it will be nice to detect what compiler version was used to precompile modules (in case all precompiled ends in common dir)...
tadzik recently, instead of being knocked to my door I got a hand-written letter from JW 20:45
FROGGS JW?
tadzik that's way more romantic way to get hit on than usual :D
Jehova's Witnesses
FROGGS Woodi: we have to take all this into account, yes
ohh
masak tadzik I got my first girlfriend by handwritten letter :) 20:47
masak fails at privmsg :P
tadzik haha :)
FROGGS *g*
masak I must be tireder than I thought. 20:48
oh well.
tadzik tired deer
masak we were in second grade. a bit too early for serious romance.
tadzik I had a similar crush at the beginning of primary school. She ended up being a world-class model years later 20:51
only to give up the career once it got serious, or something
FROGGS well, its not the best job though
tadzik those were the days, eh?
FROGGS ;o) 20:52
tadzik yeah, I know. "Gosh, this guy was in primary school 3 years ago or something!" :P
FROGGS hehe 20:53
masak you have your whole life in front of you.
unlike geezers like me. :P
tadzik cheer up, grampa! 20:53
masak .oO( not helping... ) :P
jnthn masak: Careful, I'm only a few years behind :P 20:54
FROGGS damnit, I'm thirty! the ppl in medieval were already dead at that age
masak jnthn: come on, you're almost as young as tadzik! :P
FROGGS well, compared to the usual Perl 5 hacker we are pretty young 20:55
tadzik spunky little sisters
FROGGS at least when comparing to the folks at the YAPC::EU
tadzik heh, if it wasn't for pjcj's son I'll probably be the youngest one there 20:56
jnthn I might as well use a picture of a darn whirlpool at this rate...
uh, wrong window
jnthn must be as tired as masak :P
masak at least my mis-window utterance wasn't about something as embarrassing as whirlpools! :P 20:57
sorear tadzik: mberends jr was also pretty young
tadzik yeah, he was the clear winner on the PRS
masak was gonna mention young berends.
tadzik sadly they weren't on the actual yapc
masak mberends has grown disappointed with the deployment rate of Perl 6 :/ 20:58
tadzik well, I'll also prefer it tomorrow :P 20:59
but this is hard stuff
masak yeah. 21:02
I just want to use Perl 6 :) if world domination fails to happen, I'll still have Perl 6, and I'll be a pretty effective programmer with it. 21:03
FROGGS well, today I had to think about of a second systems effect when thinking of Perl 6... but when I see what happens these days I'm sure it will be in a good shape (or maybe it is already) 21:04
masak there are still things to do. 21:07
and still too few to do it. :)
tadzik I still need to refactor keybags and friends
supernovus r: my $short_v = v1.0.0; say $v;
p6eval rakudo e6e158: OUTPUT«===SORRY!===␤Variable $v is not declared␤at /tmp/CKm9jqYst4:1␤»
supernovus r: my $short_v = v1.0.0; say $short_v; 21:07
tadzik I don't think we ever resolved the role attributes dillema
p6eval rakudo e6e158: OUTPUT«v1.0.0␤»
supernovus r: my $long_v = v10.0.0; say $long_v; 21:08
p6eval rakudo e6e158: OUTPUT«===SORRY!===␤Confused␤at /tmp/dnJBrd4Ru6:1␤»
tadzik (or what was that)
FROGGS masak: see, I need commit bit ;o)
masak :) 21:09
tadzik "a private attribute declared using has is private to the class, not to the role"
IIRC this part of spec is a lie
masak read "this part of cake is a lie"
need... sleep... 21:10
tadzik yeah
skids hrm. well were it a lie it kinda makes it hard to componentize a class without exposing all its guts. Unless there's an alternative? 21:11
masak tadzik: I've thought about roles and attributes. I think if roles can *easily* be made to have their own private attribute, then they should. if not, then it's worth having a serious discussion whether it's worth it.
masak tadzik: one of the nice things about interfaces in C# is that you can apply several different concretizations of a generic interface to a class. 21:12
tadzik r: gist.github.com/4157041
p6eval rakudo e6e158: OUTPUT«===SORRY!===␤Attribute $!a not declared in class MyClass␤at /tmp/PLSYm8Y1Ep:10␤»
masak and that kinda presupposes that attributes be private to the role, not the class.
tadzik I don't mind them being private to whatever they want to be, but there was something I wanted to do and couldn't, whatever the way
masak *nod* 21:13
skids I've always just assumed the above gist result was a NYI/bug.
tadzik another one: 21:14
r: gist.github.com/4157055
p6eval rakudo e6e158: OUTPUT«Any()␤»
skids Oh wait, I remember now. You're supposed to use "trusts $*CLASS" which is NYI. 21:17
masak that sounds backward. 21:18
it's the role that declares the attribute, no? 21:19
supernovus Interesting, the <version> rule in the grammar seems limited to a single digit after the 'v'. 21:31
masak it's to prevent Perl 10 from happening... 21:32
supernovus masak: hah!
masak supernovus: no, I think you're reading that wrong...
supernovus If I copy and paste the very same grammar code into a standalone grammar, it matches 'v10.0.0' just fine.
masak github.com/perl6/std/blob/master/STD.pm6#L1610
<?before \d> just means that it expects the next thing to be a digit. 21:33
it's a zero-width match.
supernovus std: v1.0.1 21:35
p6eval std a8bc48f: OUTPUT«ok 00:00 41m␤»
supernovus std: v10.0.1
p6eval std a8bc48f: OUTPUT«===SORRY!===␤Confused at /tmp/KyrrepllGu line 1:␤------> v10.⏏0.1␤ expecting any of:␤ dotty method or postfix␤ postcircumfix␤ postfix_prefix_meta_operator␤ postop␤Undeclared routine:␤ 'v10' used at line 1␤Parse
..failed␤FAILED 00…
masak I stand corrected. 21:36
supernovus It seems STD agrees with Rakudo on this one, both fail when attempting to match a major version larger than 9. 21:37
skids masak: yes the role declares the attribute, and declares what roles/classes it trusts. Which can be $*CLASS if you don't want to name them ahead of time.
supernovus n: v1.0.0
p6eval niecza v22-44-g0247fe5: OUTPUT«===SORRY!===␤␤Action method value:version not yet implemented at /tmp/qpWXza0y2p line 1 (EOF):␤------> v1.0.0⏏<EOL>␤␤Unhandled exception: Unable to resolve method statement_level in type Any␤ at /home/p6eval/niecza/src…
masak supernovus: I don't understand. <vnum> clearly expects one or more digits.
supernovus masak: Yeah, it makes no sense at all to me. I copied the bit from Rakudo's Grammar.pm and stuffed it into a standalone grammar, and it matches perfectly. The same match in Rakudo (and apparently STD) fails. 21:38
masak maybe it's a NFA bug or something. 21:39
skids guesses that's ::?CLASS actually in S14
supernovus This helps clarify things a bit. 21:40
r: v10
p6eval rakudo e6e158: OUTPUT«===SORRY!===␤CHECK FAILED:␤Undefined routine '&v10' called (line 1)␤»
supernovus std: v10 21:41
p6eval std a8bc48f: OUTPUT«===SORRY!===␤Undeclared routine:␤ 'v10' used at line 1␤Check failed␤FAILED 00:00 41m␤»
supernovus The rule to match routines/symbols is overriding the rule to match versions.
I guess just use Version.new('10.0') for now for any major version over 10. 21:43
jnthn Probably because LTM
masak oh, 'course. 21:45
that makes 100% sense.
moritz sorry that I didn't get around to do the R* release 21:47
will do tomorrow
masak no prob. enjoy whatever's distracting you presently ;) 21:48
FROGGS gnight 21:53
masak 'night, FROGGS 21:54
moritz moritz.faui2k3.org/tmp/rakudo-star-...RC1.tar.gz # next RC 22:07
if nobody objects, I'll release that one tomorrow
masak 'night, #perl6 22:15
sirrobert hey all =) 22:21
I'm running the debugger on a very simple script ("my $foo = "bar"; say $foo;"), but I keep getting this error if I try to inspect anything: 22:22
P6opaque only supports type changes where the MRO of the original type is a suffix of the MRO of the new type
Anyone know why or how I can fix it?
jnthn sirrobert: Odd, I was demonstrating latest debugger on a recent Rakudo at LPW at the weekend without problems... 22:24
sirrobert The only thing I changed is a move to 64-bit architecture
I'll pop open a new 32b and see if it happens. 22:25
jnthn sirrobert: oh...
github.com/jnthn/rakudo-debugger/c...a45531447e
Is your debugger at least that new?
sirrobert it's rakudo-star-2012.10
jnthn OK...
I can see how a latest Rakudo + 2012.10 debugger would cause the problem 22:26
sirrobert any fixes come to mind? =)
(and thanks)
jnthn But for me it failed immediately rather than on first inspection, I think.
sirrobert oh, it doesn't fail
I can step all the way through the program, I just can't inspect anything.
even on a script as simple as I said before 22:27
jnthn OK, that's weird.
sirrobert how can I update to the latest debugger?
jnthn I mean, the commit I linked fixed such an issue when we started handling %*LANG differently in Rakudo
Easiest way to have a latest debugger is with a latest R*. But I'm surprised if you're using an R* Rakudo and debugger; those should match up 22:28
(er, surprised if you're using them and getting the problem, that is) 22:29
sirrobert hmmmmmmm
I recompiled and re-installed from scratch and same issue
jnthn I guess you've made sure it's not some kinda version skew?
sirrobert no
I don't even know how to make sure of that
jnthn Like, no different Rakudo or debugger earlier in the path?
sirrobert perl6-debug -v says: This is perl6 version built on parrot 4.6.0 revision 0 22:30
(notice the missing version number)
perl6 -v says: This is perl6 version 2012.10 built on parrot 4.6.0 revision 0
huh 22:32
I just compiled the latest perl6-debug and it worked
but the one with the 2012.10 R* didn't
jnthn Oddness
sirrobert maybe it got bundled badly?
jnthn Maybe, but didn't 2012.10 work for you previously? 22:33
sirrobert I don't remember...
haven't coded in like 2 weeks =)
(well, bash scripting...)
jnthn OK. Hopefully the 2012.11 works out the box for you at lesat...
*least
sirrobert well, either way I can use the version I compiled
jnthn moritz.faui2k3.org/tmp/rakudo-star-...RC1.tar.gz # release candidate if you want to try it
sirrobert easy enough =)
thanks for your help
oh, cool
I'll try that
ok, time for dinner. ttyl 22:35
jnthn o/
time for sleep here & 22:36