»ö« 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.
dalek p/ctmo: 4e2bed3 | jonathan++ | src/ (2 files):
Remove magical loading of the NQP meta-objects library, and just do it with a use statement in the setting.
00:02
p/ctmo: 8147a0f | jonathan++ | src/stage0/ (6 files):
Update bootstrap, just to be sure the previous works out there too.
jnthn That'll do for one day's hacking. :-) 'night o/ 00:03
lestrrat is it possible to do the equivalent of P5 my %HoH = ( key1 => \%args ); while ( my($k, $v) = each %HoH ) { MyClass->new(%$v) #<-- this } 02:43
currently my constructor thinks it's getting one hash argument, so I'd like to flatten it or do the equivalent. 02:44
I guess it's new(|$v) ? 02:46
hmm, guess not...
dwhipp lestrrat: did you try: for %hoh.kv -> $key, %h { MyClass.new(|%h) } 03:12
lestrrat for ... -> $k, %v gave me a compile error :/ something about "Nominal type check failed for parameter '%v'; expected Associative but got Seq instead" 03:15
dwhipp rakudo: my %hoh = ( 'a' => { 'b' => 1 } ); class X { has $.b }; for %hoh.kv -> $k, %h { my $x = X.new(|%h); say $x.perl } 03:18
p6eval rakudo ecc4ef: OUTPUT«X.new(b => 1)␤»
tylercurtis rakudo: my %hoh = a => {c => 1, d => 2}, b => {c => 3, d => 4}; class X { has $.a; has $.b }; for %hoh.kv -> $k, %h { my $x = X.new(|%h); say $x.perl } 03:37
p6eval rakudo ecc4ef: OUTPUT«X.new(a => Any, b => Any)␤X.new(a => Any, b => Any)␤»
tylercurtis rakudo: my %hoh = a => {c => 1, d => 2}, b => {c => 3, d => 4}; class X { has $.a; has $.b }; for %hoh.kv -> $k, $h { my $x = X.new(|$h); say $x.perl } 03:38
p6eval rakudo ecc4ef: OUTPUT«X.new(a => Any, b => Any)␤X.new(a => Any, b => Any)␤»
tylercurtis rakudo: my %hoh = a => {c => 1, d => 2}, b => {c => 3, d => 4}; class X { has $.c; has $.d }; for %hoh.kv -> $k, %h { my $x = X.new(|%h); say $x.perl }
p6eval rakudo ecc4ef: OUTPUT«X.new(c => 1, d => 2)␤X.new(c => 3, d => 4)␤»
tylercurtis lestrrat: Can you give more details about the code you're trying that isn't doing what you want? 03:44
snarkyboojum I get a fail in t/spec/S19-command-line/dash-e.t when running the spec test suite on OS X. Unicode related. I have ICU installed and parrot build uses it. Yay unicode related test failures. 04:41
on another note, it's the only test which fails out of the whole spectest! o/ 04:42
(for me)
sad that the option explanation when using --help was taken out - was nice to get an explanation of what options meant and what params they took 04:44
lestrrat tylercurtis: hmm, that works? 05:31
odd...
I'll try it after $day_job
masak good Friday, #perl6. 06:46
isBEKaml goodfriday,masak. :) 06:47
sorear hi masak! 06:54
masak hello there. 06:55
sorear: question: what's your reaction on blogs.perl.org/users/martin_berends...ntest.html ? 06:59
PerlJam thinks mberends has a different definition of "almost" than him ;) 07:00
masak I mean, do you think it would help niecza to (let's say) help improve it with those scripts in mind?
sorear yes 07:01
I haven't read the post yet
masak I'd like to create an editable web resource somewhere to keep track of (1) the errors or faulty results from the scripts, (2) why they occur, (3) if and how they can be worked around, and (4) what features niecza would need for them to run. 07:04
sorear mberends doesn't seem to be on planetsix 07:05
BOO
masak that can probably be ameliorated. 07:06
sorear mberends++ for confirming my suspicion that the spectests are a reasonable cross-section of "real world" Perl 6 07:08
if more than one sample says "Niecza can run 10% of real code", I feel more confidence
thanks masak 07:09
TiMBuS will the new 6model will change how .^methods work? im assuming so 07:11
as in, theres a bug in ^add_composable that makes the object lose its type. is it worth investigating at this point? 07:12
masak ah, here we go: github.com/perl6/misc/wiki/Niecza-and-p6cc2010 07:15
masak sorear: the spectests both are and aren't a "reasonable cross-section". the one thing that application code does that spectests don't: application code tends to "sweep" over the configuration space of possible programs, and thus discover more bugs in the implementation. 07:17
moritz s/more/other/ 07:30
masak right.
TiMBuS: I'd say it's worth investigating, or at least noting down in a rakudobug. 07:38
TiMBuS masak, youve already done it :> 07:51
i was investigating why typed arrays infinitely looped out on access 07:53
masak oh, ok. 07:57
pmurias phenny: tell sorear the p6 coding contest entries represent the subset of "real world" Perl 6 programms that actually run on rakudo 09:11
phenny pmurias: I'll pass that on when sorear is around.
masak I think that was already clear... :) 09:15
pmurias and as they were supposed to be idiomatic they are likely to be stretching the limit of what rakudo can do 09:17
masak some do, some don't.
also, depends what you mean by "limits" :) 09:18
pmurias are the submission somewhere in a repo?
masak: meaning that they use all the new cool features like junctions etc.
* submissions
masak junctions are notably absent from most submissions. except in some if statements.
pmurias: they are in a repo, but one I've kept private since I used it during the whole contest. 09:19
I could probably pull out the submissions themselves and publish them in a public repo.
pmurias as strangelyconsistent.org/p6cc2010/ seems a very inconvinient iterface to download them all 09:20
masak yes; having it on github would be far superior. 09:23
I'm a bit tied up right now with the #cqrs-perl6 hackathon. 09:24
but later I will throw it up as a github repo.
tadzik friday, friday... hello zebras! 09:44
tadzik has his both hands free :)
moritz \o/ 09:53
masak tadzik: congrats! 10:12
tadzik :) 10:35
tadzik also, I now have internets at the garden, thanks to my mother's way of thinking 10:37
where I look for technology, she expands the existing solution. Where I worry about wifi, she thinks of dropping a 10-or-20 meter ethernet cable out of the window
the most awesome workplace I ever had <3 10:38
pmurias tadzik: so how do you close the window now? 11:13
moritz if the weather in Poland is as good as in Germany right now, I don't see why anyone would want to close a window :-) 11:15
jnthn and masak just had lunch outside. It's even nice weather this far north. :)
tadzik pmurias: as always, shift+super+c 11:16
i.imgur.com/nD0Hn.jpg :) 11:17
jnthn tadzik: nice :) 11:21
tadzik so out-chilling :) 11:22
tadzik who misses glob()? Hands up! 11:46
\o 11:47
pmurias where is max {...} defined? 11:47
wisdom_of_ack core/Any-List.pm 11:48
pmurias in the spec 11:48
tadzik oh
pmurias i'm trying to get the pcc entries to work on niecza 11:50
tadzik S03-operators.pod I believe 11:50
pmurias it's defined as an infix operator there 11:57
so it's seems to be a rakudo extension
arnsholt pmurias: Could be something about it in S32 as well 12:34
colomon masak, jnthn: how goes the hacking? 12:57
masak colomon: live at #cqrs-perl6 :)
colomon ooooo
masak :)
colomon with logs, even! 12:58
masak moritz++
colomon was hoping DDD was the DataDisplayDebugger, which he was just looking at this morning... 13:01
pmurias masak: max {...} seems very suspect as being an unspecced thing 13:32
tadzik rakudo: sub a { ??? }; a(); say 'alive' 13:37
p6eval rakudo ecc4ef: OUTPUT«Stub code executed in 'a' at line 22:/tmp/lfDUrX2WQP␤alive␤»
tadzik bug? 13:38
perl6: sub a { ??? }; a(); say 'alive'
p6eval rakudo ecc4ef: OUTPUT«Stub code executed in 'a' at line 22:/tmp/7u9ism9XpP␤alive␤»
..niecza v4-67-g1f44650: OUTPUT«Unhandled exception: >>>Stub code executed␤ at /tmp/AVgl5o0zGz line 1 (MAIN a @ 3)␤ at /tmp/AVgl5o0zGz line 1 (MAIN mainline @ 1)␤ at /home/p6eval/niecza/lib/CORE.setting line 1311 (CORE C552_ANON @ 2)␤ at /home/p6eval/niecza/lib/CORE.setting line 1312 (CORE
..module-CORE @ 39)␤ …
..pugs: OUTPUT«*** Cannot cast from VUndef to GHC.IO.Handle.Types.Handle (VHandle)␤ at /tmp/X6I2Ea4A6w line 1, column 9-13␤»
tadzik oh, just a REPLfail 13:41
pmurias sorear: hi 14:44
bbkr_ any idea why panda returns 14:53
Unknown option: e
while installing MIME::Base64 ?
masak no, but that sounds odd. 14:54
colomon Seems like that was an error I used to get (with neutro) when I tried to test things with an older version of prove? 14:55
bbkr_ I have "prove v2.64, using Test::Harness v2.64 and Perl v5.10.0" 14:56
masak yeah, it's probably in that area, with prove and Test::Harness. 14:59
colomon bbkr_: the one I have now (which works) says TAP::Harness v3.17 and Perl v5.12.3
bbkr_ confirmed. it is prove that does not accept -e switch (called from lib / Panda / Tester.pm line 14) 15:02
tadzik oh, not this again 15:11
Mac OSX, right?
oh ok, it's already figured out 15:12
tadzik yeah, I'm afraid you need to update your prove 15:12
bbkr_ this occured on Debian 5.0. when tested on Ubunto 10.04 LTS everything works fine, so indeed this is prove lacking --exec param. 15:15
and just for curiosity i'll test panda on MacOS X 10.6.7 at home :)
tadzik :) 15:34
I think colomon's case was on OSX, and that was the first one
ray24 Do you have to go to school to learn perl? 16:57
moritz sure
there's a town called Perl in the north of Germany
and that's where you can learn perl in school
www.perl-mosel.de/ 16:58
sadly about half of the students are distracted by the beautiful landscape 17:00
and leave Perl without substatial Perl knoweledge
ray24 I want mastery I don't care about self gratifications 17:06
I need to maximize my potential 17:07
perl will be a mastery
moritz then I suggest quitting IRC, and get on with it
ray24 can do without it?
moritz you have much more time for programming without IRC
and mastery needs time
ray24 True, very true. 17:16
But also, it's going to be lonely without IRC :(
ray24 And so you are saying all these people here don't have mastery 17:16
moritz not at all
many just reached mastery before joining IRC
rindolf Hi all. 17:24
ray24 Can we be with mastery in one language alone? 17:26
ray24 can I learn perl without c++ 17:26
rindolf ray24: yes, you can. 17:27
ray24: only three people in the world really know C++.
ray24 But I want more mastery than one
rindolf ray24: that's a good idea.
tadzik hi rindolf 17:28
rindolf tadzik: what's up?
tadzik rindolf: not bad. My hand recently got freed from a cast 17:29
rindolf tadzik: ah, that's good.
sorear hello pmurias 17:30
phenny sorear: 09:11Z <pmurias> tell sorear the p6 coding contest entries represent the subset of "real world" Perl 6 programms that actually run on rakudo
sorear good * #perl6
pmurias sorear: hi 17:33
sorear: are variables bound by letn mutable?
ray24 Any programmers here a regular chess player? 17:34
sorear phenny: tell pmurias Yes 17:34
phenny sorear: I'll pass that on when pmurias is around.
ray24 What is the rate of success for programmers? 17:48
How often do individual programmers build a successful program that impact the market?
rindolf ray24: how can you measure? 17:50
ray24: you seem to be talking to yourself.
ray24: define "impact".
ray24 Don't we all talk to ourselves?
But I tend to expand , i need insight
masak ray24: it's an interesting question, for sure. 17:51
ray24 facebook impact
ray24 I mean, if there are so many productive programmers .. how come there aren't more innovations of social media 17:51
masak ray24: but the answer isn't quantifiable.
ray24 why is there only one
So... 17:52
huf if there are so many productive $x, how come there arent more innovations in $field_of{$x}? 17:52
where are my flying cars? :D
masak innovation is more difficult than people think.
the principle behind it is simple. but it takes a lot of hard work.
most people aren't up to it.
ray24 facebook doesn't seem like that difficult of an idea to come up with
huf ray24: an *unsuccessful* fb-clone doesnt seem like a difficult idea to come up with 17:53
masak ray24: there are probably hundreds of applications like Facebook out there at this point.
huf a successful one however... there's only one
masak ray24: and Facebook might not even have been the first one.
ray24: they just got a lot of stuff right.
jnthn git pull 17:54
oops
huf pull the other one 17:55
ray24 How many hours should I put in a day for perl?
I have to build something like facebook 17:56
masak ray24: you shouldn't be asking that question.
ray24: you should try it out for yourself.
we're not better judges of your time investment than you are. 17:57
ray24 You bring good points
I dont know why I tend to need reassurances
tadzik huf: they're called planes 17:58
huf tadzik: i've seen those and there's no glove compartment
ergo not a car.
tadzik hrm 18:00
Exodist What is the terminology used when you return something, but what that something is is never actually calculated unless it is used? 18:25
moritz Exodist: lazy evaluation
Exodist thank you 18:26
masak rakudo: sub foo { gather say "OH HAI" }; my $a = foo; say "A"; say $a 18:41
p6eval rakudo ecc4ef: OUTPUT«A␤OH HAI␤␤»
moritz rakudo: sub foo { gather say "OH HAI" }; my $a := foo; say "A"; say $a 18:43
p6eval rakudo ecc4ef: OUTPUT«A␤OH HAI␤␤»
moritz rakudo: sub foo { gather {take; say "OH HAI"} }; my $a := foo; say "A"; say $a 18:44
p6eval rakudo ecc4ef: OUTPUT«A␤OH HAI␤␤»
ray24 lol @ moritz 18:46
"lazy evaluation"
moritz ray24: what's so funny about it?
masak ray24: no, that's what it's called.
ray24 oh..
That's funny -- the fact that I thought it meant to be funny but actually it's really what it's called 18:47
jnthn doesn't mention phasers and lols 18:48
masak the only thing that could have lead to that situation is lazy research :P
ray24 Anyone here find that google is overdoing flash banner? 18:51
Google.com They have a very lagging flash 18:52
Why are they doing that
TimToady it's free advertising for them when you come here and ask us about it :) 18:54
sorear does google need advertising? they're a monopoly
TimToady s/advertising/branding/ 18:55
donri ray24: not flash
masak ...which is part of the reason they're doing it, I guess. 19:04
ray24 btw, is this an offtopic channel? 19:30
moritz normally not
ray24 You're pretty quick with the responses 19:35
Are you working on a project?
moritz on multiple 19:35
tylercurtis From a formal languages point-of-view, what class of languages is Perl 6 in (optionally ignoring "supercede slang MAIN")? 20:31
perigrin is there a reference for "formal languages point-of-view" ? 20:32
perigrin is curious
sorear I think tylercurtis means secure.wikimedia.org/wikipedia/en/..._hierarchy 20:35
sorear tylercurtis: context-sensitive 20:36
Wikipedia says that if a language can be recognized in O(N) space, it is no worse than context-sensitive
and STD is O(N) space
no context-free language can implement declaration before use (making my $x; $y invalid) 20:37
except for Haskell, most serious programming languages are context-sensitive
many though are described as "context free + a few semantic constraints" 20:38
I would love to see a non-p6regex parser for full Perl 6 20:39
partly because I'm not fully convinced p6regex can be made "fast enough"
perigrin give Moore enough tiem. 20:40
tylercurtis sorear: Haskell isn't context-sensitive? 20:44
sorear tylercurtis: I remain to be convinced that the Haskell 98 grammar is even recursive. 21:04
Moukeddar hello pandas 21:05
good and evil
sorear hello Moukeddar 21:06
moritz evil pandas? what did I miss?
Moukeddar how you doing today ? 21:07
yeah evil panda can kill you
masak that's why it's important to upgrade your modules. 21:08
tylercurtis sorear: oh, I see. I misinterpreted your statement that it's not context-sensitive. Common Lisp shares the trait of not being context-sensitive, I believe. 21:11
moritz perl can run code at compile time, so not even a Turing complete parser is enough 21:12
masak 'night, pandas 21:27
colomon Lisp can run code at compile time as well, yes? 21:49
Moukeddar what's the benefits of that ? 21:50
pmurias Moukeddar: you can extend the grammar 21:52
phenny pmurias: 17:34Z <sorear> tell pmurias Yes
Moukeddar how ? 21:53
pmurias i have to look that up 21:54
macro circumfix:«<!-- -->» ($text) is parsed / .*? / { "" } # example from the spec
Moukeddar: and if most of the metaprogramming is done at compile time we won't have to pay a performance price at runtime 21:57
Moukeddar ahh 21:58
sounds pretty
tylercurtis Moukeddar: you can also do more simple things like defined new operators.
rakudo: sub postfix:<k>($n) { $n * 1024 }; say 10k;
p6eval rakudo ecc4ef: OUTPUT«10240␤»
Moukeddar new operators ? 21:59
Moukeddar not just override them ? 21:59
pmurias yes
Moukeddar wow
pmurias or it's possible to have marcos which use the standard subroutine syntax and generate code
Moukeddar you mean generating other code blocks at compile time ? 22:00
other than the original
pmurias macro foo { 'say 1+' ~ '1; # ' }; foo(); 22:03
pmurias Moukeddar: so can generate code at compile time an insert it using a macro 22:04
Moukeddar wow
amazing stuff
pmurias i'm not sure it's implemented yet 22:05
sorear there's a patch for ~Mar10 rakudo which implements basic string macros 22:06
pmurias sorear: how hard would it be to have them in niecza?
sorear it's built on too many hacks though
pmurias: once somebody figures out how to implement BEGIN in niecza, macros will be easy 22:07
pmurias BEGIN seems like a lot of refactoring 22:08
we would have to switch to building up the program piece by piece and the serialising it 22:09
pmurias sorear: as code in BEGIN can use all the subs which were defined on top 22:10
pmurias sorear: didn't we have that discussion before? ;) 22:11
if i remember correctly the problem is how do we serialise foreign pointers and open filehandles/sockets 22:13
sorear: but we could just raise an error on those 22:14
as being able to precompile things is vastly more important then C pointers surviving the BEGIN phase
Moukeddar oooh 22:15
i need many many years to grasp all that
pmurias Moukeddar: you know perl5? 22:16
Moukeddar no
Moukeddar i mean some advanced topics in programmation in general 22:17
but hey
still young :p
Tene pmurias: macros are completely feasible in rakudo; I've done some pretty promising little experiments. I just haven't had the time and resources to work on it. 22:23
sorear pmurias: We probably did. It's been a major TODO since almost the beginning. 22:30