Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2010-12-15

Perl 6 | Reference Documentation | Rakudo

| Channels | #perl6 index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
00:00 felliott joined #perl6
00:01 shortcircuit diakopter: I'd be very, very open to being able to integrate Rosetta Code, code on RC and the execution of such. Being able to automate leads to a number of possibilities for rudimentary audimated code review. :)
00:01 TimToady btw, the change to the program worked
00:03 dju joined #perl6
00:03 dju left #perl6
00:03 dju joined #perl6
00:03 shortcircuit TimToady: Any other bugs in the paste?
00:03 TimToady that's the only typo I saw
00:03 * shortcircuit nods
00:04 shortcircuit It occurred to me that I'm engaged to someone with an English degree, and I should probably have her look it over. :)
00:04 TimToady if you want a fun one, there's the turtle graphics in the two matrices
00:04 TimToady http://rosettacode.org/wiki/Spiral_matrix
00:05 fuad left #perl6
00:05 diakopter TimToady: thanks for testing it :)
00:06 TimToady the zig-zag matrix also uses "turtle graphics"
00:06 diakopter I wish my p6 turtle spiral solution was listed as an alternate
00:09 diakopter http://rosettacode.org/mw/index.php?title=S​piral_matrix&diff=89678&oldid=89677
00:10 diakopter oh, globals </singsong> :)
00:11 TimToady it's still there; it just got translated to the classy version
00:12 diakopter oh
00:12 shortcircuit Heh
00:13 TimToady specifically, the inside-out one
00:15 diakopter shortcircuit: well, I watch too many channels already
00:15 diakopter (1-2)
00:16 shortcircuit Heh. I've got enough that I keep losing some every time Freenode netsplits me off; I rejoin so many, I get bumped into an overflow channel.
00:16 * shortcircuit should find a join-ratelimiting script for irssi.
00:18 shortcircuit Erp. Fiancee caught a ? I'd missed while refactoring a sentence.
00:22 pukku joined #perl6
00:22 shortcircuit Candidate final draft: http://pastebin.com/b71DKn9J
00:26 shortcircuit erp. Forgot to add the Spiral matrix links.
00:26 diakopter shortcircuit: maybe mention a relative comparison of how Perl 6's degree of implementation compares with the rest of the languages on the whole
00:26 diakopter (or just tell me, b/c I'm curious) :)
00:26 shortcircuit Heh
00:27 diakopter I guess it's two-humped
00:28 hercynium joined #perl6
00:28 hercynium left #perl6
00:28 hercynium joined #perl6
00:28 shortcircuit The best rough gestimate I can quickly give simply sorts categories by member count. It might be possible to use the new Semantic MediaWiki functionality to come up with real numbers, though.
00:30 * shortcircuit would be amused to see [[Spiral Matrix]] used to generate a 3D mesh.
00:32 shortcircuit http://pastebin.com/rudPqHaZ
00:33 pukku left #perl6
00:35 pukku joined #perl6
00:35 pukku left #perl6
00:35 shortcircuit Let me know if that looks OK, and how you'd like it published.
00:42 soroush joined #perl6
00:44 rgrau left #perl6
00:46 kcwu left #perl6
00:53 shi left #perl6
00:55 sftp left #perl6
00:57 risou joined #perl6
01:02 QinGW joined #perl6
01:03 Trashlord left #perl6
01:03 Guest87704 left #perl6
01:19 muixirt left #perl6
01:19 risou left #perl6
01:53 hercynium left #perl6
01:57 flussence I made a thing! https://github.com/flussence/perl6-XMMS2
02:00 literal left #perl6
02:01 literal joined #perl6
02:11 starcoder left #perl6
02:14 starcoder joined #perl6
02:28 whiteknight left #perl6
02:32 cdarroch left #perl6
02:35 agentzh joined #perl6
02:43 shortcircuit diakopter: Perl 6 comes in at #25, looks like.
02:45 shortcircuit http://pastebin.com/5Qn8bZV8
02:53 ch3ck3r joined #perl6
02:56 buubot left #perl6
02:57 ch3ck left #perl6
02:58 buubot joined #perl6
03:01 TimToady of course, if you add Perl and Perl 6, we're #1 :)
03:01 diakopter hm
03:01 ch3ck3r left #perl6
03:04 Zimbu joined #perl6
03:06 Zimbu So, last night I was here puzzling over this:
03:06 Zimbu perl6: say "match" if 99 ~~ (99, 88, 77)
03:06 p6eval pugs, rakudo :  ( no output )
03:07 Zimbu I've since found that this is apparently the correct behavior, there's even a test case for it, but I can't find anyplace explaining WHY... which is puzzling.  It seems to contradict the smart matching docs.
03:09 diakopter Zimbu: think about how it's different from 99 ~~ 99, 88, 77
03:09 diakopter perl6: say "match" if 99 ~~ 99, 88, 77
03:09 p6eval pugs, rakudo : OUTPUT«match␤»
03:09 Zimbu 99 ~~ 99, 88, 77 returns true because of precedence.
03:10 Zimbu That's not the question, my question is why the list form returns false.
03:10 diakopter no
03:10 diakopter it doesn't
03:10 diakopter perl6: say "match" if 99 ~~ 77, 88, 99
03:10 Zimbu Okay... what am I missing then?
03:10 p6eval pugs, rakudo : OUTPUT«match␤»
03:10 diakopter perl6: say "match" if 99 ~~ 77
03:10 p6eval pugs, rakudo :  ( no output )
03:10 diakopter perl6: say "match" if 99 ~~ 77, 88
03:10 p6eval pugs, rakudo : OUTPUT«match␤»
03:10 diakopter oh wait.
03:10 diakopter HEH
03:10 diakopter TimToady: ^^
03:10 Zimbu perl6: say "match" if 99 ~~ 77, 88
03:10 mberends left #perl6
03:10 p6eval pugs, rakudo : OUTPUT«match␤»
03:11 diakopter yeah.
03:11 Zimbu ~~ binds tighter than "," - right?
03:23 shachaf left #perl6
03:24 shachaf joined #perl6
03:28 shortcircuit perl6: say "this has a newline at the end?"
03:28 p6eval pugs, rakudo : OUTPUT«this has a newline at the end?␤»
03:29 shortcircuit How does one print text without the newline?
03:30 diakopter print...
03:30 Zimbu perl6: print "look, ma, no newline"
03:30 p6eval pugs, rakudo : OUTPUT«look, ma, no newline»
03:48 TimToady yes, 88 is true, but it's not a match :)
03:48 diakopter hm
03:49 TimToady as for why say "match" if 99 ~~ (99, 88, 77) doesn't work, I said that before
03:49 TimToady there are no implicit any semantics to lists
03:49 TimToady it will only match an identical list
03:51 TimToady rakudo: say "match" if (99,88,77) ~~ (99, 88, 77)
03:51 p6eval rakudo : OUTPUT«match␤»
03:51 TimToady say "match" if 99 ~~ any(99, 88, 77)
03:51 TimToady rakudo: say "match" if 99 ~~ any(99, 88, 77)
03:52 p6eval rakudo : OUTPUT«match␤»
04:08 satyavvd joined #perl6
04:08 Helios` left #perl6
04:09 Helios` joined #perl6
04:11 skangas joined #perl6
04:34 Zimbu I believe you - no implicit any() semantics to lists, everything I find agrees with that.  I must have gotten the wrong impression from various descriptions kicking around of smartmatch.  Does anyone know where to find the definitive description of "what smartmatch does"?
04:36 TimToady sure, S03:3533
04:36 TimToady which the irc log translates to http://perlcabal.org/syn/S03.html#line_3533 for you
04:37 Zimbu Thank you.  :-)
04:37 TimToady (if you visit http://irclog.perlgeek.de/perl6/today)
04:38 Zimbu Ok, that's cool.  Hello world!  Sorry, back on topic...
04:39 Zimbu I would have thought, from that table, that "Any ~~ Numeric" would have applied to 99 ~~ (99, 88, 77).  I must be misreading it.
04:41 Zimbu Also thought I read somewhere that smartmatch was communative, so that a ~~ b and b ~~ a are the same.  Can't find it now, so that could have been a fever dream as well.
04:43 Zimbu er... commutative, that is.
04:45 jhuni joined #perl6
04:47 Zimbu ...and a bit of googling shows that was a short-lived phenomenon in 5.10 I'm better off just forgetting about.  Good.
04:49 Zimbu perl6: say "match" if (99, 88, 77) ~~ (*,99,*)
04:49 TimToady sorry, my computer hung
04:49 p6eval rakudo : OUTPUT«match␤»
04:49 p6eval ..pugs:  ( no output )
04:50 TimToady it was temporarily commutative in the P6 design, and P5 borrowed it at the wrong moment
04:53 Zimbu I'll have to spend more time with S03:3533 to grok this.  I take it this random google result is also outdated/incorrect?  http://search.cpan.org/~lichtkind/Perl6-Doc​-0.36/lib/Perl6/Doc/Overview/Smartmatch.pod
04:54 TimToady the synopses are authoritative
04:55 TimToady if rather poorly organized...
04:55 Zimbu Then that's where I'll go, and try to divine some order from it all.  Thanks again!
04:56 TimToady start at http://perlcabal.org/syn/ to get to all of them
05:01 LoRe left #perl6
05:04 Helios` left #perl6
05:08 ascent_ left #perl6
05:10 __rnddim__ is now known as lue
05:10 lue ohai o/
05:12 TimToady
05:15 * lue is reminded of his inability to type umlauts with nifty keyboard shortcuts, and of his indifference towards doing anything about it
05:17 Zimbu left #perl6
05:24 lopaway is now known as lopnor
05:25 ascent_ joined #perl6
05:25 lopnor is now known as lopaway
05:26 redicaps joined #perl6
05:37 lue rakudo: my $a = DateTime.new("2010-10-10T10:10:10Z"); say $a - 7;
05:37 p6eval rakudo : OUTPUT«Can't take numeric value for object of type DateTime␤  in 'Any::Numeric' at line 1418:CORE.setting␤  in 'infix:<->' at line 7294:CORE.setting␤  in main program body at line 22:/tmp/P5ZIuElTxL␤»
05:38 Helios` joined #perl6
05:38 lue rakudo: my $a = Date.new("2010-10-10"); say $a - 7;
05:38 p6eval rakudo : OUTPUT«2010-10-03␤»
05:40 lue is the reason why can't do that kind of arithmetic with DateTime is because you don't know what the person means by '7' ?
05:41 TimToady presumably
05:43 lue too bad there's no way you can do something like    days(7)    or anything. The only way I see of accomplishing it now is with a well-crafted second DateTime object.
05:50 Helios` left #perl6
05:50 Helios joined #perl6
06:05 LoRe joined #perl6
06:11 sorear good * #perl6
06:12 joimox joined #perl6
06:16 lue hello sorear o/
06:17 joimox perl! yeah!
06:17 kcwu joined #perl6
06:32 sorear joimox: welcome!
06:37 sorear TimToady: I saw something about @list ~~ (*, 1, 2, *) once.  Is that also a fossil?
06:40 wtw joined #perl6
06:42 envi joined #perl6
06:46 _kaare joined #perl6
06:51 [Coke] left #perl6
06:57 [Coke] joined #perl6
07:00 moritz_ rakudo: say (1, 2, 4, 7) ~~ (*, 1, 2, *)
07:00 p6eval rakudo : OUTPUT«Bool::True␤»
07:04 IllvilJa left #perl6
07:18 sorear Why hasn't shortcircuit's post hit p6advent yet?
07:30 fhelmberger left #perl6
07:31 lopaway is now known as lopnor
07:36 joimox left #perl6
07:38 joimox joined #perl6
07:43 * moritz_ just saw an expired nopaste in the backlog, nothing more
07:43 sorear joimox: welcome!
07:43 sorear moritz_: ow.
07:43 sorear shortcircuit: we need a STABLE link to your post!
07:45 Max_- joined #perl6
07:45 Caffeine left #perl6
07:52 ss_ joined #perl6
08:00 gimix left #perl6
08:00 glow joined #perl6
08:03 ss_ left #perl6
08:04 justatheory left #perl6
08:08 zby_home_ joined #perl6
08:11 kjeldahl_ left #perl6
08:18 nym joined #perl6
08:18 nymacro left #perl6
08:19 cosimo joined #perl6
08:32 masak joined #perl6
08:32 masak oh hai, #perl6
08:32 masak interesting: http://codahale.com/how-to-safely-store-a-password
08:33 masak November falls into the trap described therein.
08:36 sorear hello masak
08:37 masak greetings, earthling.
08:41 moritz_ the link to the perl bcrypt thing is dead
08:43 nero2x joined #perl6
08:47 nero2x perl6: say Hello;
08:47 p6eval rakudo : OUTPUT«Could not find sub &Hello␤  in main program body at line 22:/tmp/gU8TS51YFm␤»
08:47 p6eval ..pugs: OUTPUT«*** No such subroutine: "&Hello"␤    at /tmp/hP526yCUxn line 1, column 5-10␤»
08:47 masak rakudo: say "OH HAI"
08:48 p6eval rakudo : OUTPUT«OH HAI␤»
08:49 lopnor is now known as lopaway
08:50 masak wow. http://stmts.net/2010/12/09/the-grand-compromise/
08:51 masak it starts out sounding like criticism, but ends up being pure praise.
08:52 Koven is now known as Kovensky
08:53 redicaps Hi there, which pastbin site is for Perl6 channel?
08:54 moritz_ redicaps: I don't think any works with automatic notification
08:54 moritz_ redicaps: so you can use whatever you want, and paste the link here yourself
08:54 redicaps moritz_:  got u
08:57 sjohnson masak: hi
08:58 sjohnson @tell masak hi
08:58 masak sjohnson: greetings
08:58 sorear masak: interesting, I need to read about bcrypt more
08:58 sorear usually I just take sha1 and iterate it a million times
08:59 masak :)
08:59 masak November salts with the user name somehow.
08:59 masak (and uses SHA1, I think)
09:00 sorear just write a pure-Perl6 version of bcrypt
09:00 sorear it'll be slow enough
09:00 moritz_ it will be too slow
09:00 sjohnson does it just encrypt files?  truecrypt or gnupg seem like a better choice
09:01 moritz_ sjohnson: it's for hashing passwords, not encrypting stuff
09:02 sjohnson oic
09:02 sjohnson the slowness being good so bruteforce would be too expensive?
09:03 sorear exactly
09:03 sorear bcrypt is a professionally designed hash algorithm with *tunable* slowness
09:03 sorear so we can make it twice as slow every 18 months
09:04 moritz_ masak: nice blog post
09:08 sjohnson blowfish is a cute block cipher
09:09 sjohnson for a long time i used to think the OpenBSD group designed it, because a pufferfish is their mascot
09:10 Guest87704 joined #perl6
09:15 redicaps Hi Perl6, I am reading advent calendar D14, and I got a error when I try to run the sample code,  here is the pastebin log:    http://pastebin.com/ZpiP3PAe
09:17 sjohnson im no perl6 expert, but do you need a semicolon after class last } bracket?
09:17 moritz_ redicaps: you chopped off the blanks bewteen type name and opening curly brace
09:18 moritz_ sjohnson: no, semicolon is not needed after a } that's followed by a newline
09:18 moritz_ redicaps: so Perl 6 tries to parse B{...} as a subscript
09:18 moritz_ redicaps: adding a space after the class names fixes it
09:21 redicaps moritz_: Thanks,
09:22 moritz_ redicaps: you're welcome
09:22 sjohnson moritz_ == perl 6 master
09:29 redicaps moritz_: is this always needed? I mean, this dose not seen quite reasonable to me that we have to put a space here or else there will be syntax error.
09:30 moritz_ std: class A{ }
09:30 p6eval std a194beb: OUTPUT«ok 00:01 117m␤»
09:31 moritz_ hm
09:31 moritz_ redicaps: seems like this particular case is a bug in rakudo
09:31 moritz_ rakudo: class A{ }
09:31 p6eval rakudo :  ( no output )
09:31 moritz_ hm
09:32 sorear observation: salts don't have to be quality randomness, only unique
09:32 moritz_ redicaps: but in general you're better off using spaces between parts of terms, it reduces possible ambiguty
09:32 sorear the output of uuidgen would work just as well
09:32 ch3ck joined #perl6
09:32 redicaps moritz_: I agree with u on this;-)
09:32 moritz_ std: class A { }; class A is B{ };
09:32 p6eval std a194beb: OUTPUT«[31m===[0mSORRY![31m===[0m␤Illegal redeclaration of symbol 'GLOBAL::<A>' (from line 1) at /tmp/nxYj4js1CJ line 1:␤------> [32mclass A { }; class A [33m⏏[31mis B{ };[0m␤Too late for semicolon form of class definition at /tmp/nxYj4js1CJ line 1:␤------> [32mclass A { };
09:32 p6eval ..class…
09:32 moritz_ std: class A { }; class B is A{ };
09:32 p6eval std a194beb: OUTPUT«[31m===[0mSORRY![31m===[0m␤Too late for semicolon form of class definition at /tmp/vAkSlzsjl6 line 1:␤------> [32mclass A { }; class B is A{ }[33m⏏[31m;[0m␤    expecting any of:␤  horizontal whitespace␤  trait␤Parse failed␤FAILED 00:01 118m␤»
09:33 sorear Why do some people insist on leaving spaces out?
09:33 moritz_ redicaps: see, it's also misparsed by the standard grammar
09:33 moritz_ so not a bug after all
09:33 moritz_ the reason is probably that 'is' is a trait, and after a trait there can really be any term
09:33 sorear rakudo: if( 1 ) { say "Broken" } # lots of code in the wild depends on this bug
09:34 p6eval rakudo : OUTPUT«Broken␤»
09:46 [Coke] left #perl6
09:49 lopaway is now known as lopnor
09:49 cottoo left #perl6
09:52 tzhs joined #perl6
09:52 [Coke] joined #perl6
09:53 redicaps left #perl6
09:54 glow left #perl6
09:54 jhuni left #perl6
09:54 Guest87704 left #perl6
10:01 dakkar joined #perl6
10:01 Guest87704 joined #perl6
10:01 pothos left #perl6
10:02 pothos joined #perl6
10:03 QinGW left #perl6
10:05 IllvilJa joined #perl6
10:19 daxim joined #perl6
10:20 glow joined #perl6
10:22 Trashlord joined #perl6
10:36 moritz_ I likely won't get around to any advent calendar business in the next 7 hours or so
10:36 moritz_ it would be great if someone else could take over
10:37 wamba joined #perl6
10:37 masak what does that entail? prodding someone for a slot #15?
10:38 masak rakudo: sub if($x) { say "in sub" }; if( 1 ) { say "Broken" }
10:38 p6eval rakudo : OUTPUT«Broken␤»
10:39 moritz_ masak: seems that shortcircuit has posted something about rosettacode earlier, but when I looked at it the nopaste had expired
10:39 moritz_ masak: getting him to paste a new version, and put that into wordpress would be a possible approach
10:39 masak I'll try that.
10:40 sorear shortcircuit is hereby mocked for submitting a Perl6 advent calender entry and setting it to expire before the people who care can read it
10:42 * sorear out
10:43 kensanata joined #perl6
10:44 masak shortcircuit++ for writing it in the first place, though. I look forward to reading it, and hope that he'll show up with it today. :)
10:45 redicaps joined #perl6
10:46 masak huh? reddit gives my latest Advent post a whopping 13 points (!) but no comments. http://www.reddit.com/r/programming/comments/ell7​5/perl_6_advent_calendar_day_14_nextsame_and_its/
10:46 masak that's more than the Perl 6 Coding Contest, which got 12 points.
10:46 moritz_ now 12
10:47 masak observer effect :P
10:47 masak the Rakudo star news is in the clear lead with 39 points and 32 comments.
10:50 shi joined #perl6
10:56 masak http://irclog.perlgeek.de/​perl6/2010-12-14#i_3087774 # diakopter, TimToady: I've sometimes wanted this as well, but I've concluded that introducing something like that into normal Perl 6 would not be worth it.
10:57 masak the -> indicates the start of a pointy block, and making it indicate other things is just asking for trouble.
10:57 masak and postdeclarations are a pain, as TimToady says.
11:00 moritz_ postdeclarations are like "I MADE YOU AN ERROR BUT I EATED IT"
11:01 masak :)
11:07 flussence who's doing day 15?
11:08 masak no-one, so far.
11:08 masak there's a post by shortcircuit that some people have seen but that got lost in pastebin limbo.
11:10 wamba left #perl6
11:10 wamba joined #perl6
11:10 flussence well, it just so happens that I seem to get a lot done when I'm not setting myself deadlines...
11:11 masak :)
11:11 masak this sounds promising...
11:13 flussence I might *actually* have something post-worthy in a few minutes!
11:14 moritz_ \o/
11:14 moritz_ flussence: do you have access to the advent wordpress thing?
11:14 flussence nope
11:14 moritz_ flussence: then tell (or /msg) me your email address, and it will be done
11:14 flussence I'm on my laptop right now which doesn't have all the github ssh-ey stuff set up :/
11:15 moritz_ flussence: I just need an email address
11:15 flussence oh, I can do the wordpress thing, yeah...
11:15 flussence (just proofreading what I've written now)
11:16 satyavvd left #perl6
11:16 flussence also: how well does MiniDBI work right now? I was going to mention that in the post but I don't want to link people to non-functioning code
11:17 * moritz_ has no idea
11:18 flussence I'll throw it in and hope for the best
11:19 moritz_ flussence: I'll have to leave in about 5 minutes, so if you need access to the wordpress thing, better hurry up :-)
11:19 moritz_ (or somebody else can give you access too)
11:19 flussence ok, ok... $username@gmail
11:21 moritz_ flussence: invitation sent, welcome to the wonderful world of advent :-)
11:21 masak \o/
11:21 masak moritz_++ flussence++
11:21 flussence :D
11:23 flussence (this might answer someone's question on the advent site wondering where a mysql interface is, too)
11:23 szbalint is rakudo.org down?
11:25 flussence .oO( I'm surprised israkudodotorgdown.com isn't taken yet... )
11:25 szbalint :)
11:25 szbalint http://xkcd.com/54/ # I want the Perl 6 version of this on a t-shirt
11:26 masak szbalint: "It's not just you!" http://downforeveryoneorjus​tme.com/http://rakudo.org/
11:26 * masak emails alester
11:27 flussence ok, you guys get to take a look at this while I redo the markup: https://gist.github.com/741870
11:28 * masak looks
11:29 masak flussence: nice post!
11:35 flussence hold on a sec, can someone change the WP email address? apparently I signed up with a nonsensical name using it ages ago and totally forgot
11:37 flussence .oO( third /facepalm this week )
11:39 saaki left #perl6
11:40 IllvilJa left #perl6
11:43 rhr left #perl6
11:45 flussence grr... pod2html eats my http: L<> tags.
11:46 saaki joined #perl6
11:50 flussence wait... I can fix the email/username thing myself! I think.
11:52 * flussence facepalm+1... there's already a "display name" option...
11:55 tadzik flussence: it's because zavolaj has its own makefile, which puts stuff in the Rakudo install dir
11:55 tadzik hello
11:57 flussence tadzik: it seems that makefile had an off-by-one error in @*INC. I fixed it by setting PERL6LIB=./lib
11:57 flussence (grr... pod2html wasn't even necessary for this)
11:59 nero2x Hello guys, how can I read user input on p6 ? <> is not working, and I have tried lines (); but it didn't prompt for input
11:59 tadzik rakudo: <>
11:59 p6eval rakudo : OUTPUT«===SORRY!===␤Unsupported use of <>; in Perl 6 please use lines() to read input, ('') to represent a null string or () to represent an empty list at line 22, near "<>"␤»
11:59 tadzik “in Perl 6 please use lines() to read input,”
12:00 tadzik everything's in the error message :)
12:00 nero2x yeah iv tried  didn't ask for input :(
12:00 nero2x it skipped to the next line
12:01 flussence rakudo: say prompt("hi!").perl
12:01 p6eval rakudo : OUTPUT«hi!"Land der Berge, Land am Strome,"␤»
12:03 redicaps1 joined #perl6
12:03 cognominal left #perl6
12:03 redicaps left #perl6
12:05 nero2x should I use it like this  [prompt my $age; say "you are $age years old"; ] ?
12:06 cognominal joined #perl6
12:06 tadzik my $a = prompt "age?"; and so on
12:08 nero2x thanks tadzik
12:08 tadzik yw
12:08 flussence *drumroll...*
12:09 flussence and it's up! http://perl6advent.wordpress.com/2010/12/15/​day-15-calling-native-libraries-from-perl-6/
12:11 tadzik \o/ flussence saved the day!
12:12 flussence yay!
12:13 tadzik flussence++
12:13 flussence tadzik++ # I got the idea to write that code from seeing p6-MPD
12:14 tadzik :)
12:16 nero2x can we use this plugin on perladvent site ? http://wordpress.org/extend​/plugins/syntaxhighlighter/
12:18 flussence there's not many syntax highlighters out there that can do perl6 yet :)
12:21 gimix joined #perl6
12:23 skangas left #perl6
12:27 mtk joined #perl6
12:27 soroush_ joined #perl6
12:28 soroush left #perl6
12:29 tzhs left #perl6
12:30 uniejo joined #perl6
12:33 gimix left #perl6
12:42 flussence weird, that code I posted won't run on this laptop unless I put a semicolon after the main class definition.
12:43 masak sounds similar to a known bug.
12:44 flussence laptop's slightly out of date though, I'll update rakudo and try again
12:45 flussence doesn't work on my desktop at home too, bah.
12:45 * flussence slips a ; into the post before anyone tries the code
12:48 flussence perl6: class abc { } say "alive"
12:48 p6eval rakudo : OUTPUT«===SORRY!===␤Confused at line 22, near "class abc "␤»
12:48 p6eval ..pugs: OUTPUT«alive␤»
12:50 masak rakudo is right in that case.
12:50 masak you'd need either a newline or a ; after the last }
12:58 masak slight anticlimax that today's advent post ends in a Null PMC access error. still, I guess that's pretty honest in a way.
13:05 flussence I don't completely understand where that error's coming from. I'm going to make that code work one way or the other though.
13:06 masak excellent.
13:07 uniejo left #perl6
13:08 takadonet morning all
13:09 takadonet http://www.reddit.com/r/programming/comments​/em6l5/calling_native_libraries_from_perl_6/
13:09 flussence \o/
13:09 takadonet doing good so far
13:09 takadonet flussence: nice post btw
13:10 flussence it turned out better than I planned for, going into it
13:13 shortcircuit sorear, masak: http://mmol-6453.livejournal.com/256691.html
13:14 * shortcircuit discovers that his LJ theme, while nice on his eyes on an LCD, doesn't work very nicely on CRTs.
13:14 masak first time someone uses a whole blog as a pastebin for an advent post :)
13:14 colomon flussence++
13:15 shortcircuit Moderately better.
13:15 takadonet 6 upvotes!
13:16 masak shortcircuit: s/fascinating \(Admittedly, that's a subjective judgment\)//
13:16 shortcircuit masak: Change made
13:17 masak you removed the parentheses and contents, but not 'fascinating'.
13:18 shortcircuit erp
13:18 masak also, I'd suggest merging the two last paragraphs.
13:18 masak there's two different bleep-spellings of "BrainFuck" on the same line.
13:18 shortcircuit Take another glance
13:18 shortcircuit hm
13:19 masak yes, looks better.
13:19 shortcircuit Normalized.
13:19 MayDaniel joined #perl6
13:19 masak \o/
13:19 masak shortcircuit++
13:19 * shortcircuit hates having to bleep that out in the URLs, but I've had problems with webfilters before.
13:24 masak if you ask me, I'd prefer to have "Trivial file I/O: <a href="...">http://rosettacode.org/wiki/File_IO</a>" as "<a href="...">Trivial file I/O</a>", and similar for all the other URLs in the two lists.
13:24 masak I simply don't find URLs that informative.
13:24 * shortcircuit nods
13:25 shortcircuit I think that habit of style came from dealing with HTML-filtering mediums.
13:25 masak I've heard the practice of feeling the need to show URLs in the actual text being described as "Poor man's hypertext".
13:26 masak oh, speaking of which, feel free to put bullets on the list items :)
13:26 shortcircuit Yeah, yeah. Working on it. Inline links for the list require that. :)
13:30 shortcircuit K, take another look.
13:31 * shortcircuit likes this form much, much better.
13:32 shortcircuit Mm. One more change. sec.
13:32 shortcircuit There. :)
13:32 masak shortcircuit: very nice :)
13:34 Guest87704 left #perl6
13:35 MayDaniel left #perl6
13:36 shortcircuit Grammar fix.
13:44 Guest87704 joined #perl6
13:53 tadzik flussence: I'm afraid the null pmc access is actually a problem on your side. Mind showing the exact output?
14:01 nero2x left #perl6
14:06 sftp joined #perl6
14:06 masak shortcircuit: I see that you haven't claimed a slot for your Advent post yet. are you willing to do that?
14:09 masak lue: I think "Phasers" is a good idea to write about, except that it has fairly little actual support in Rakudo right now.
14:11 rhr joined #perl6
14:16 flussence tadzik: sure, gimme a sec
14:16 moritz_ masak: doesn't yapsi implement more phasers?
14:17 masak not yet.
14:17 masak it becomes more attractive to focus on once we have subs.
14:17 masak also, it becomes more easy to actually implement once we have FUTURE.
14:18 tadzik FUTURE?
14:18 moritz_ you mean, more evenly distributed? :-)
14:18 masak it's Yapsi's variant of PAST.
14:18 moritz_ *groan*
14:18 moritz_ is it an acronym too?
14:18 tadzik hmm
14:18 masak no.
14:18 masak Yapsi doesn't do acronyms.
14:19 tadzik so you can take GGE and make YCT :)
14:19 masak except for, perhaps, the name "Yapsi".
14:19 masak tadzik: right. and we could have "Null YMC access" errors.
14:19 moritz_ "fairly useless, transcendent, unrelastic representatioin"
14:19 uniejo joined #perl6
14:20 masak moritz_: ...E?
14:20 flussence tadzik: https://gist.github.com/741984 , error's at the bottom
14:20 tadzik these shoud be YMP: Yapsi Magic Ponies
14:20 moritz_ masak: REpresentation
14:20 masak ah.
14:20 masak moritz_: well, that's the least bad backronym I've heard so far :P
14:21 moritz_ masak: aka the first one?
14:22 masak actually no.
14:22 masak patrickas did some ad-libbing when the name was suggested.
14:22 * moritz_ can't imagine how bad the others must have been :-)
14:23 masak I don't remember them, unfortunately :)
14:23 tadzik xmmsv_get_error($return_value, my $error-str)
14:24 tadzik is it legal?
14:24 tadzik what does my do in here?
14:24 [particle]1 left #perl6
14:24 masak certainly legal from Perl 6's perspective.
14:24 flussence declares that to the end of the enclosing scope...
14:24 tadzik hmm
14:24 tadzik ah, pw
14:25 tadzik * rw
14:25 masak std: sub xmmsv_get_error($x, $y) {}; my $return_value; xmmsv_get_error($return_value, my $error-str)
14:25 p6eval std a194beb: OUTPUT«Potential difficulties:␤  $x is declared but not used at /tmp/h8rFm1PVuu line 1:␤------> [32msub xmmsv_get_error([33m⏏[31m$x, $y) {}; my $return_value; xmmsv_get_[0m␤  $y is declared but not used at /tmp/h8rFm1PVuu line 1:␤------> [32msub xmmsv_get_error($x, [33m⏏[31m$y)
14:25 p6eval ..{};…
14:25 tadzik int eresting;
14:25 masak hrm.
14:25 masak std: sub xmmsv_get_error($x, $y) { $x, $y }; my $return_value; xmmsv_get_error($return_value, my $error-str)
14:25 p6eval std a194beb: OUTPUT«ok 00:01 125m␤»
14:25 tadzik hmm
14:26 tadzik rakudo: sub($x is rw) { $x = 5; } sub(my $a); say $a
14:26 p6eval rakudo : OUTPUT«===SORRY!===␤Unable to parse postcircumfix:sym<( )>, couldn't find final ')' at line 22␤»
14:26 flussence as far as I can tell, it doesn't reach check-result() at all
14:26 tadzik rakudo: sub s($x is rw) { $x = 5; } s(my $a); say $a
14:26 p6eval rakudo : OUTPUT«===SORRY!===␤Confused at line 22, near "sub s($x i"␤»
14:26 tadzik rakudo: sub s($x is rw) { $x = 5; }; s(my $a); say $a
14:27 p6eval rakudo : OUTPUT«5␤»
14:27 tadzik hmm
14:27 tadzik flussence: try a few say()s :)
14:27 flussence will do
14:27 tadzik hmm
14:28 tadzik rakudo: sub ` { say 'a'; }; ```
14:28 p6eval rakudo : OUTPUT«===SORRY!===␤Confused at line 22, near "sub ` { sa"␤»
14:28 tadzik :(
14:29 masak tadzik: must begin with an alphanumeric (or underscore)
14:29 [particle] joined #perl6
14:31 moritz_ alpha or underscore, actually
14:31 bbkr rakudo: say ?{0} # is this a bug, or is it on purpose that forcing boolean context on block always returns true despite block return value?
14:31 p6eval rakudo : OUTPUT«Bool::True␤»
14:31 masak moritz_: oh right. thanks.
14:31 masak bbkr! \o/
14:31 moritz_ bbkr: the block isn't run
14:31 masak rakudo: say ? {0}()
14:31 p6eval rakudo : OUTPUT«Bool::False␤»
14:31 moritz_ bbkr: so you're only evaluating the truthness of the block (which is always true), not of the return value
14:32 masak there's something almost philosophical about all that.
14:32 bbkr makes sense, I just wanted to be sure. thanks!
14:32 plainhao joined #perl6
14:32 tadzik hmm
14:32 flussence xmmsc_playback_start returns an UnManagedStruct... thing. I know that much. It's still alive at that point, but it dies trying to call self!check-result. I even removed the type constraint in check-result's signature thinking that might be it, but it wasn't.
14:32 flussence and the playback never starts... :(
14:33 masak "Truth has nothing to do with words. Truth can be likened to the bright moon in the sky. Words, in this case, can be likened to a finger. The finger can point to the moon's location. However, the finger is not the moon. To look at the moon, it is necessary to gaze beyond the finger, right?"
14:33 masak my brain suggested this quote from bbkr's predicament :)
14:33 flussence (more annoying is that I got an error from the library itself when I wrote this as a straight translation of the C code, but it's gone silent now)
14:33 tadzik flussence: what if you disregard error checking for playback_start?
14:34 bbkr :)
14:34 flussence I'll try that...
14:35 flussence removing the check-result call entirely... no crash, but nothing happens either.
14:36 tadzik hrm
14:36 moritz_ can somebody on macos x please check if there's a getpid function?
14:36 tadzik how about the equivalent C code?
14:36 moritz_ man 2 getpid
14:36 masak moritz_: there is.
14:37 masak "Getpid() returns the process ID of the calling process."
14:37 moritz_ with capital G?
14:37 flussence tadzik: I've even checked that - and I've got it to produce identical strace output up to the part where p6 fails. I'm at a loss...
14:37 masak moritz_: no, it seems that that's just start-of-sentence capitalization.
14:37 uasi joined #perl6
14:37 masak weird.
14:39 moritz_ I just checked the rakudo code for getting the PID
14:39 flussence it does a send() to the socket, recv() the result, and *then* p6 explodes.
14:40 moritz_ it does a   $P0 = dlfunc library, getpid_func, 'i'
14:40 moritz_ where getpid_func is 'getpid'
14:40 tadzik flussence: the first step is probably making the C version work
14:40 moritz_ and library is null, which stands for 'kernel', afaict
14:40 flussence that's the thing; it does
14:40 tadzik hrm
14:41 agentzh left #perl6
14:42 tadzik how about calling the NCI subs, w/o any wrapper?
14:42 masak moritz_: which means that everything indicates that it should work, no?
14:42 moritz_ masak: which indicates that the dlfunc fails
14:43 masak question is why.
14:43 flussence aha
14:44 flussence I inlined check-result into play() and now it's giving me the original errors
14:44 flussence
14:44 flussence Failed in file ../src/clients/lib/xmmsclient/result.c on  row 379
14:44 flussence Null PMC access in isa_pmc()
14:44 flussence in '&infix:<=>' at line 1
14:44 flussence in 'XMMS2::Client::play' at line 55:xmms.p6
14:44 flussence I'm 90% certain that's a null pointer that zavolaj doesn't understand
14:45 flussence still don't understand why passing $result to another method breaks differently though :/
14:45 masak step one: get 100% certain. :)
14:45 plobsing flussence: you might want to try breaking on Parrot_Null_isa in gdb
14:45 moritz_ $P0 = dlfunc library, getpid_func, 'i'
14:45 moritz_ $I0 = 0
14:45 moritz_ unless $P0 goto setup_io_no_getpid_func
14:45 moritz_ $I0 = $P0()
14:45 plobsing Parrot_Null_isa_pmc rather
14:46 moritz_ that's for the getpid stuff
14:46 masak moritz_: you could check whether that code is reached. (it probably is, though)
14:46 flussence masak: I've looked at NativeCall.pm6 and didn't see anything that looked like it handled nulls, hence my guess there :)
14:47 masak don't guess. measure.
14:48 flussence I'll take a better look later, when I'm not at $dayjob surrounded by slow hardware :)
14:48 tadzik flussence: nulls are tricky in zavolaj
14:50 tadzik flussence: pir::null__P()
14:50 tadzik that's null
14:50 tadzik (that should be a class in zavolaj imho)
14:53 redicaps1 left #perl6
14:53 moritz_ rakudo: say pir::getinterp__P.getpid()
14:53 p6eval rakudo : OUTPUT«861␤»
14:53 flussence I've also got a place where it's valid to pass a null pointer instead of a string... I imagine that would be done by passing an uninitialised Str type object, but zavolaj definitely doesn't handle that case
14:53 moritz_ masak: could you please check that on mac os?
14:53 felliott left #perl6
14:53 moritz_ say pir::getinterp__P.getpid()
14:53 flussence .oO( it doesn't look too hard to add myself... )
14:54 masak moritz_: gladly.
14:54 masak moritz_: got '15505' back.
14:54 moritz_ \o/
14:54 masak \o/
14:54 tadzik flussence: try passing this pir:: thingy
14:55 flussence hey, that worked!
14:56 tadzik :)
14:56 tadzik that Should be a class
14:56 tadzik or a Role, so you could do Str but Null
14:57 flussence imo it should do something like "$Str // pir::null__P()" there internally, so calling code doesn't have to care
14:58 jasonmay rakudo: class Foo {}; "Foo".new.perl.say
14:59 p6eval rakudo : OUTPUT«Foo.new()␤»
14:59 JimmyZ joined #perl6
14:59 shortcircuit masak: Claim a slot? As in, a particular day?
15:00 tadzik hmm
15:00 tadzik maybe zavolaj should augment Str
15:03 flussence one thing I really wish it had was some sort of autoboxing thing so that I can do real subclassing of OpaquePointers
15:03 masak shortcircuit: yes, we need exactly one post per day :)
15:03 JimmyZ left #perl6
15:04 masak shortcircuit: https://github.com/perl6/mu/blob/ma​ster/misc/perl6advent-2010/schedule
15:05 shortcircuit flussence's isn't marked for 15. I'll take 17, though.
15:05 flussence yeah, mine was a sort of surprise thing :)
15:05 tadzik :)
15:05 masak shortcircuit: want to add yourself, or shall I?
15:06 snearch joined #perl6
15:06 shortcircuit masak: Want to know my dirty little secret? I'm worse than unconfident in git, I'm counterproductive... You better do it.
15:06 masak never too late to learn git. :) but sure, I'll do it.
15:06 daxim the world will end if you make a mistake
15:07 * shortcircuit muses he doesn't have time to make mistakes while at work, this time of year.
15:07 moritz_ that's the beauty of version control: just just turn back the world if it ended :-)
15:07 * shortcircuit hates this time of year. *EVERYBODY* chooses to add to his workload at the same time nobody has time to do their normal stuff...
15:08 moritz_ my colleages are frantically buying expensive stuff, because they have to use up this year's budget
15:09 masak shortcircuit: it's not that big a workload to update the file... :P
15:09 kensanata left #perl6
15:09 flussence I wish my $dayjob had a budget to use up :( # still using a 1.6GHz celeron there...
15:10 tadzik look out for chages on http://isparrotfastyet.com/ :)
15:11 flussence how long has that been there?!
15:11 masak ooh, there actually is such a site!
15:12 tadzik flussence: like a week
15:12 dalek mu: 9957782 | masak++ | misc/perl6advent-2010/schedule:
15:12 dalek mu: [misc/perl6advent-2010/schedule] beauty commit
15:12 dalek mu: review: https://github.com/perl6/mu/commit/995778235c
15:12 dalek mu: 002495f | masak++ | misc/perl6advent-2010/schedule:
15:12 dalek mu: [misc/perl6advent-2010/schedule] filled #15 and #17
15:12 dalek mu: review: https://github.com/perl6/mu/commit/002495ff3e
15:12 tadzik someone announced it on @parrot-dev
15:12 takadonet flussence: have a dual quad core with 16 GB for my desktop at work.....
15:13 flussence that's... more than our entire office combined :(
15:13 flussence including servers!
15:15 moritz_ well, people here spend the money for oscilloscopes, pattern generators and optical fibers :-)
15:16 kcwu left #perl6
15:16 moritz_ masak: if S02-magicals/pid.t now passes (after pulling), please unfudge it
15:16 moritz_ (or any other macos user, really)
15:16 icwiener joined #perl6
15:17 mathw everyone in my office got a new computer over the past three weeks
15:18 mathw although they're only 2.9GHz Core 2 Duos for the most part
15:18 mathw with 4GB of RAM
15:18 mathw something of an improvement over the old ones though
15:18 mathw and they actually have *gasp* hard drive space and *GASP* cooling!
15:18 dalek rakudo: 2865b9d | moritz++ | / (2 files):
15:18 dalek rakudo: use ParrotInterpreter.getpid for PID
15:18 dalek rakudo:
15:18 dalek rakudo: Fixes [perl #77850] and TT #1817 if no problem arises from it
15:18 dalek rakudo: review: https://github.com/rakudo/rakudo/commit/2865b9d710
15:19 masak moritz_: will do.
15:19 flussence I've been promised a 3GHz P4-celeron for a year or so now... after the sales side got upgraded to C2Ds and 1080p LCDs
15:20 MayDaniel joined #perl6
15:22 snearch left #perl6
15:23 szabgab masak: any news about your FOSDEM talk?
15:23 shortcircuit I eventually upgraded my own workstation by bringing in a better monitor. My boss uses his home/personal quad-i7 as a work-from-home workstation. I don't see him at the office that offen any more.
15:24 masak szabgab: haven't seen jnthn since you asked last time. is there a deadline involved?
15:24 szabgab and what about other rakudo devs at FOSDEM ?
15:24 szabgab I have to check with the FOSDEM people but the sooner we can announce the talks the better
15:24 szabgab in the end it is up to me to decide on the schedule
15:27 masak szabgab: my future is a bit less predictable than usual due to my changing jobs in January.
15:27 flussence .oO( ah, telecommuting... that thing I only get to experience outside of work hours. )
15:30 dalek roast: 38439ef | masak++ | S02-magicals/pid.t:
15:30 dalek roast: [S02-magicals] unfudged after [perl #77850] fix by moritz++
15:30 dalek roast: review: https://github.com/perl6/roast/commit/38439efbd2
15:32 mathw flussence: they actually did our specs right - managers don't get machines as powerful as developers do, because we're thought to need more RAM and CPU power than they do. The only machines on the list of available options right now which are more powerful than the developer-spec machines are for the multimedia content editors in Editorial, which have enormous graphics cards and the like for HDTV work.
15:32 _kaare left #perl6
15:32 tadzik Let's do some big thing for the new release
15:33 kcwu joined #perl6
15:34 flussence oh, when is the next release anyway?
15:34 masak of rakudo the compiler, or rakudo star the distribution?
15:34 colomon of Rakudo?  23rd.
15:34 flussence either
15:35 masak moritz_: you're my big $*PID hero.
15:35 flussence (I suddenly realised I haven't heard much of R* in a while)
15:36 PerlJam blah.
15:37 moritz_ flussence: it has had regular releases so far; not much to hear
15:37 dalek mu: d2c0e7e | duff++ | misc/perl6advent-2010/topic-brainstorming:
15:37 dalek mu: Add a couple more ideas
15:37 dalek mu: review: https://github.com/perl6/mu/commit/d2c0e7e87f
15:37 PerlJam flussence: See my ideas for the advent calendar :)
15:38 moritz_ masak: it just required some google search on the parrot website and a question in #parrot :-)
15:39 Patterner left #perl6
15:42 tzhs joined #perl6
15:42 masak moritz_: nevertheless, kudos. :)
15:42 masak swimming &
15:42 masak left #perl6
15:48 uasi std: subset Some of Any where { "%0" }
15:48 p6eval std a194beb: OUTPUT«[31m===[0mSORRY![31m===[0m␤Can't declare a numeric variable at /tmp/xKddcAwKov line 1:␤------> [32msubset Some of Any where { "%0[33m⏏[31m" }[0m␤Parse failed␤FAILED 00:01 120m␤»
15:48 uasi huh
15:48 moritz_ rakudo: say "%0"
15:48 p6eval rakudo : OUTPUT«%0␤»
15:48 tzhs left #perl6
15:48 uasi rakudo: class { "%0" }
15:49 p6eval rakudo : OUTPUT«===SORRY!===␤Can't declare a numeric variable at line 22, near "\" }"␤»
15:49 * moritz_ guesses it's an $*IN_DECLARATION or so leakage
15:49 TimToady likely
15:49 uasi nod
15:49 moritz_ std: class { "%0" }
15:49 p6eval std a194beb: OUTPUT«ok 00:01 120m␤»
15:50 wtw left #perl6
15:50 Psyche^ joined #perl6
15:50 Psyche^ is now known as Patterner
15:51 uasi Patch for rakudo https://gist.github.com/742122
15:52 moritz_ uasi: I wonder if we fix more possible leakage cases if we put the $*IN_DECL := '' into blockoid itself
15:52 uasi hm...
15:53 uasi I don't know
15:53 moritz_ the current style seems to be to reset $*IN_DECL in the same rule where it's set
15:53 moritz_ so I guess it's better to stick to that
15:54 TimToady fixing
15:54 moritz_ fixing? STD is fine, no?
15:54 uasi I stole the idea in that patch from STD.pm6...
15:56 * moritz_ spectests
15:56 TimToady nevermind, please go ahead
16:00 cosimo left #perl6
16:00 cosimo joined #perl6
16:00 dalek std: d75aee1 | TimToady++ | STD.pm6:
16:00 dalek std: subset did not reset $*IN_DECL for traits or where
16:00 dalek std:
16:00 dalek std: The inside of subset traits and where clauses was still considered declarational.
16:00 dalek std: review: https://github.com/perl6/std/commit/d75aee1ccb
16:01 felliott joined #perl6
16:03 cdarroch joined #perl6
16:03 cdarroch left #perl6
16:03 cdarroch joined #perl6
16:05 * uasi updated the patch https://gist.github.com/742122
16:06 * moritz_ aborts spectest, and starts a new rebuild
16:12 risou joined #perl6
16:13 * uasi pushed a branch https://github.com/uasi/rakudo/commit/9​7a19d2988da41599be4e124be43f6e3687fac1f
16:13 uasi I'll send a pull request if it passes spectest
16:18 uasi rakudo: try { CATCH { } }
16:18 p6eval rakudo :  ( no output )
16:18 uasi rakudo: try{ CATCH { } }
16:18 p6eval rakudo : OUTPUT«error:imcc:syntax error, unexpected ')' (')')␤  in file 'EVAL_10' line 80850142␤===SORRY!===␤syntax error ... somewhere␤»
16:19 uasi rakudo: try{ }
16:19 p6eval rakudo : OUTPUT«Could not find sub &try␤  in main program body at line 22:/tmp/d9YV2yBz9e␤»
16:19 moritz_ the first is OUCH
16:19 moritz_ this one might be OK
16:19 uasi LTA error message ^^
16:19 moritz_ std: try{ }
16:19 p6eval std a194beb: OUTPUT«[31m===[0mSORRY![31m===[0m␤Undeclared routine:␤ 'try' used at line 1␤Check failed␤FAILED 00:01 118m␤»
16:19 moritz_ but the IMCC syntax error is certainly a bug
16:20 nym left #perl6
16:20 uasi yes
16:21 TimToady rakudo: CATCH { }
16:21 p6eval rakudo :  ( no output )
16:22 TimToady "syntax error ... somewhere"  gotta love it
16:23 TimToady we can probably do better than undeclared routine there
16:23 Alias_ left #perl6
16:25 risou_ joined #perl6
16:27 risou left #perl6
16:28 Bzek left #perl6
16:29 Bzek joined #perl6
16:30 justatheory joined #perl6
16:33 kjeldahl joined #perl6
16:34 moritz_ uasi: with the patch you nopasted I still get "Can't declare a numeric variable"
16:37 uasi for 'class { "%0" }' ?
16:37 _kaare joined #perl6
16:37 moritz_ ./perl6 -e 'subset Foo of Any where { "%0" }'
16:38 moritz_ ah right, the class thing is fixed
16:40 uasi moritz_: subset thing also works locally; maybe you should apply the patch I updated
16:41 moritz_ uasi: I'm now trying your patch from github... seems my previous patch missed the last hunk
16:43 * uasi spectested; it's ok
16:53 orafu left #perl6
16:53 orafu joined #perl6
16:56 uasi out to eat たこ焼き
16:56 uasi left #perl6
16:56 alester joined #perl6
16:58 dalek rakudo: a95c1d6 | uasi++ | src/Perl6/Grammar.pm:
16:58 dalek rakudo: Fix $*IN_DECL leakage
16:58 dalek rakudo:
16:58 dalek rakudo: Previously 'class { "%0" }' would complain about the %0.
16:58 dalek rakudo:
16:58 dalek rakudo: Signed-off-by: Moritz Lenz <moritz@faui2k3.org>
16:58 dalek rakudo: review: https://github.com/rakudo/rakudo/commit/a95c1d614c
17:04 orafu left #perl6
17:05 orafu joined #perl6
17:10 sjn left #perl6
17:12 cotto joined #perl6
17:16 Bzek left #perl6
17:17 risou_ left #perl6
17:17 risou joined #perl6
17:18 dalek std: 94fd904 | TimToady++ | STD.pm6:
17:18 dalek std: Add "Whitespace required after keyword" message
17:18 dalek std:
17:18 dalek std: A common error will be to omit the space after a keyword.  Complaining
17:18 dalek std: about an undefined function is now deemed to be less-than-awesome.
17:18 dalek std: review: https://github.com/perl6/std/commit/94fd904aef
17:19 takadonet TimToady: thanks for that! You have no idea how confusing that message was when you first start out writing code
17:20 TimToady er, if I have no idea, then why did I fix it?  :P
17:21 takadonet you know sometimes you really..... nevermind :)
17:21 TimToady yes, my wife feels the same way occasionally
17:22 TimToady well, more than occasionally :)
17:22 takadonet heh
17:22 TimToady but a linguistic ambiguity detector can be used for both good and ill
17:22 TimToady and I've got a good one
17:22 MayDaniel left #perl6
17:22 TimToady (that I frequently use for ill :)
17:25 thepler left #perl6
17:31 daxim left #perl6
17:34 thepler joined #perl6
17:38 PerlJam std: try{ }
17:38 p6eval std a194beb: OUTPUT«[31m===[0mSORRY![31m===[0m␤Undeclared routine:␤ 'try' used at line 1␤Check failed␤FAILED 00:01 118m␤»
17:38 PerlJam When does std update?
17:38 TimToady ENOTYET
17:38 TimToady :40 something, iirc
17:39 moritz_ if we warn on <keyword>{ because there's no whitespace, doesn't that eliminate the usefulness of being allowed to write functions with keyword names?
17:39 TimToady you have to use parens
17:39 TimToady that's already true
17:39 TimToady I think
17:40 TimToady listops require whitespace too, if there are args at least
17:40 PerlJam std: sub foo{ }
17:40 p6eval std a194beb: OUTPUT«ok 00:01 118m␤»
17:40 PerlJam std: sub if{ }
17:40 p6eval std a194beb: OUTPUT«ok 00:01 118m␤»
17:40 PerlJam std: sub if{ }; if();
17:40 p6eval std a194beb: OUTPUT«ok 00:01 118m␤»
17:45 PerlJam I think that new spacey rule messes up import and use (if they're defined in STD the same as they are in rakudo)
17:46 PerlJam std: use MONKEY_TYPING;
17:46 p6eval std a194beb: OUTPUT«Compiled lib/MONKEY_TYPING.pm6␤ok 00:01 118m␤»
17:46 alester Anyone who wants to snark about rakudo.org's stability is more than welcome to take over the hosting duties.
17:46 moritz_ I couldn't get 'use module <import list>' to parse
17:47 moritz_ (in Rakudo, that is)
17:47 PerlJam moritz_: it fails in STD too looks like.
17:47 TimToady yes, I see that
17:49 flussence alester: any idea what's wrong? I noticed this only started happening recently
17:49 TimToady fixing
17:50 alester flussence: No, i dont' know.
17:50 alester I've not had free time to dig.
17:50 flussence oh.
17:51 mtk left #perl6
17:52 dalek std: 01ab3ab | TimToady++ | STD.pm6:
17:52 dalek std: differentiate spacey from keyspace
17:52 dalek std:
17:52 dalek std: keywords require space; spacey now just tests as it did before
17:52 dalek std: review: https://github.com/perl6/std/commit/01ab3ab349
17:52 TimToady std: 42
17:52 p6eval std a194beb: OUTPUT«ok 00:01 117m␤»
17:53 PerlJam heh ... here I was waiting for something pretty and subtle and elegant and TimToady did exactly what I would do  :)
17:53 mtk joined #perl6
17:54 TimToady it's hard to be elegant when you have to assume an unrecognized bare identifier is a post-declared sub
17:54 moritz_ uhm, it seems that there's no rebuild script for std on the p6eval server
17:54 TimToady I tried several elegant things that didn't work :)
17:54 diakopter moritz_: -\o/-
17:55 diakopter moritz_: I suppose I might've clobbered/renamed it ??
17:55 TimToady I think that means "you head is in a gravity well"
17:55 TimToady *your
17:56 PerlJam rakudo: use MONKEY_TYPING;
17:56 p6eval rakudo : OUTPUT«(timeout)»
17:56 diakopter rakudo: use MONKEY_TYPING;
17:56 p6eval rakudo :  ( no output )
17:56 dalek evalbot: 052fac4 | moritz++ | build-scripts/rebuild-std.sh:
17:56 dalek evalbot: add std rebuild script
17:56 dalek evalbot: review: https://github.com/perl6/evalbot/commit/052fac4905
17:56 dakkar left #perl6
17:58 dalek evalbot: c3bffb2 | moritz++ | build-scripts/rebuild-rakudo.pl:
17:58 dalek evalbot: try to fix rakudo rebuild
17:58 dalek evalbot: review: https://github.com/perl6/evalbot/commit/c3bffb25b5
17:59 dalek evalbot: 9c0247b | moritz++ | build-scripts/rebuild-rakudo.pl:
17:59 dalek evalbot: more s/svn/git/
17:59 dalek evalbot: review: https://github.com/perl6/evalbot/commit/9c0247b169
18:00 mtk left #perl6
18:01 dalek evalbot: 0aef822 | moritz++ | build-scripts/rebuild-rakudo.pl:
18:01 dalek evalbot: [rakudo rebuild] chomp! chomp! chomp!
18:01 dalek evalbot: review: https://github.com/perl6/evalbot/commit/0aef8225b4
18:02 mavrc joined #perl6
18:06 mtk joined #perl6
18:14 molaf joined #perl6
18:17 dd007_ joined #perl6
18:18 dd007_ Hello people. I am here first time.
18:18 PerlJam greetings dd007_
18:18 PerlJam What can we do for you?
18:19 dd007_ Interested in Perl6. i would glad to know about perl 6.
18:19 PerlJam dd007_: have you seen perl6.org?
18:19 dd007_ I just visited. I heard that there will be no official release of Perl6. Is it correct ?.
18:20 PerlJam dd007_: yes and no.  There is an official standard that any perl 6 implementation must conform to in order to be perl 6
18:21 moritz_ and when they conform, they may call itself "official"
18:21 moritz_ but it implies that there can be multiple official compilers at some point
18:21 moritz_ and not THE ONE
18:22 dd007_ ic. I fear that will put future uncertain. what do you think about future of perl ?
18:22 diakopter in what respect?
18:22 PerlJam dd007_: Perl has a great future.
18:23 moritz_ dd007_: which part makes you uncertain?
18:23 moritz_ dd007_: there are multiple C and Fortran compilers too. And C++ and Python. Does that scare you?
18:23 flussence (and PHP, and Java...)
18:23 PerlJam dd007_: Perl 5 is progressing nicely, picking up what features they can from Perl 6.  And, of course, Perl 6 implmementations are moving along too, so ...  Perl is doing great!
18:26 dd007_ I happy about perl5. May be I am wrong about perl6. Uncertain about perl6 in sense that there is no release date expected and I don't know if someone has strong will and plan to develop perl6.
18:26 PerlJam dd007_: We're here.
18:26 risou_ joined #perl6
18:27 PerlJam dd007_: perhaps most importantly, our fearless language designer is here.
18:27 PerlJam dd007_: Also, we have monthly compiler releases for at least one implementation.
18:27 Guest65806 left #perl6
18:27 dd007_ thats cool.
18:28 takadonet also cpan modules are slowly being ported over
18:28 risou left #perl6
18:28 dd007_ but as Larry and core team of perl5 made specification for Perl6 , I feared if there will be any official release ever.
18:29 Guest65806 joined #perl6
18:29 dd007_ I mean they are not developing Perl6. are they?
18:29 PerlJam dd007_: yes.
18:30 PerlJam dd007_: well, the "core perl 5 people" aren't really, but Perl  6 has it's own core of developers busily hacking away
18:30 moritz_ dd007_: there's basically no one from the perl 5 core team that's very active in Perl 6 development
18:30 diakopter dd007_: do you mean "writing implementations of Perl 6" or "writing Perl 6 code for economic [in the widest sense] benefit"?
18:30 dd007_ I mean implementation of Perl6.
18:30 PerlJam dd007_: anyway, don't worry about an "official release".  Grab one of the Rakudo Star releases and start using it.
18:32 diakopter dd007_: by "they are not developing Perl6. are they?", do you mean "they are not [the ones who are] developing Perl6. are they?" or do you mean "is anyone developing Perl 6"?
18:33 TimToady std: try{}
18:34 p6eval std 01ab3ab: OUTPUT«[31m===[0mSORRY![31m===[0m␤Undeclared routine:␤ 'try' used at line 1␤Check failed␤FAILED 00:01 118m␤»
18:34 dd007_ I mean the core team who developed or maintains Perl5. I read they have prepared specification. they may not implementing Perl6. I know there are some groups implementing Perl6.
18:34 PerlJam dd007_: have you seen the movie "Kung Fu Panda"?
18:34 TimToady is std using the CPAN version?
18:34 diakopter shouldn't be
18:34 diakopter oh wait
18:34 PerlJam dd007_: or the 1980s cult movie "The Last Dragon"?
18:35 dd007_ I saw end part of Kung fu panda.
18:35 diakopter moritz_: I think maybe sorear made std: use the cpan version, relying on himself or others to release new distributions with each update
18:35 diakopter maybe not.
18:37 PerlJam dd007_: Just like being a master at something becomes simply a matter of knowing you are ("there is no secret ingredient"), Perl 6 implementations are "official" when you use them and find them useful.
18:37 PerlJam (assuming they pass the Perl 6 spec too of course ;)
18:38 justatheory left #perl6
18:38 [Coke] dd007_: I didn't see anyone mention this, but there /are/ releases of perl6 available for you to use today - check out rakudo star.
18:38 dd007_ now there is single perl.org where we find perl5. thats one and only and official.  can there be multiple official releases of Perl6 in future ?.
18:39 dd007_ yes I read that name rakudo star. I am going to explore more.
18:39 diakopter yes, there can be multiple official releases
18:40 PerlJam dd007_: what makes perl.org more "official" than perl.com ?
18:41 TimToady there are multiple official releases of Perl 5 too.  see strawberry perl, cygwin perl, etc
18:41 PerlJam dd007_: and if perl.org is official for perl 5, then consider perl6.org official for Perl 6  :)
18:41 dd007_ may be I tryped site name wrong
18:42 dd007_ I mean to say, when we install perl package in linux we do not have multiple choices I think. It downloads and install the one and only Perl5 available.
18:42 diakopter that's determined by the linux distribution
18:43 TimToady every time someone compiles perl with a different set of options, it's really a slightly different perl
18:43 TimToady is 32-bit Perl the same language as 64-bit Perl?  not really...
18:44 dd007_ but source code will be same I think. only compilation option determine settings or features.
18:44 TimToady perl the implemention is full of ifdefs, and each possible combination of ifdefs is really a different implementation
18:44 * PerlJam tries to step in the same river twice and fails.
18:45 envi left #perl6
18:45 TimToady "perl the single implementation" is an illusion
18:45 PerlJam dd007_: anyway, we're just trying to broaden your perspective just a little bit and not be so locked into one way of thinking.  TMTOWTDI after all  :)
18:46 Axius joined #perl6
18:46 dd007_ e.g. PHP has zend behind it that take cares of developing new versions. If I say PHP6 then there will be only one PHP6.
18:47 TimToady you shouldn't believe everything you hear at London.pm  :)
18:47 flussence what about Roadsend PHP and Facebook Hiphop?
18:47 dd007_ hope Perl6 comes up and get huge success and popularity like Perl5.
18:47 TimToady there is only one Perl 6 too, but that's a language spec
18:47 TimToady not an implementation
18:47 flussence (those two PHP runtimes aren't even 100% compatible...)
18:48 TimToady relying on an implementation as a language spec turned out to prevent us from porting Perl 5 to other VMs
18:48 dd007_ never heard roadsend and the other
18:49 TimToady and the Perl 5 test suite bakes in many assumptions about the implementation that probably don't belong in a language spec
18:49 flussence and then there's some other PHP runtime that allows XML literals in the syntax...
18:49 TimToady dd007_: we hope Perl 6 gets more popular than Perl 5 :)
18:50 TimToady and we're not at all unhappy about how popular Perl 5 is...
18:50 glow left #perl6
18:50 TimToady we use it heavily in bootstrapping Perl 6 implementations, for one
18:51 dd007_ what is bootstrapping perl6 impl..
18:52 PerlJam dd007_: we're writing Perl 6 *in* Perl 6, so we have a bit of a chicken/egg problem.
18:53 TimToady std: 42 43
18:53 p6eval std 01ab3ab: OUTPUT«[31m===[0mSORRY![31m===[0m␤Two terms in a row at /tmp/Ri5ZZ4_gxZ line 1:␤------> [32m42 [33m⏏[31m43[0m␤    expecting any of:␤       bracketed infix␤        infix or meta-infix␤    statement modifier loop␤Parse failed␤FAILED 00:01 119m␤»
18:53 dd007_ oh
18:53 TimToady that program is actually running in Perl 5
18:53 TimToady though written in Perl 6, it's using Perl 5 as its VM
18:54 TimToady because P5 has a very solid implementation of closures
18:54 TimToady and is handy in several other ways :)
18:55 dd007_ i would have to google it
18:55 TimToady niecza: say "hi there"
18:55 p6eval niecza 406e042: OUTPUT«hi there␤»
18:55 diakopter TimToady++ # permitting me to say that I agree with TimToady on solid closures as one the key benefits of p5 for this
18:55 TimToady that is an implementation that is running on .NET, but it was bootstrapped in Perl 5
18:56 TimToady pugs: say "foo" ~~ /\w+/
18:57 p6eval 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…
18:57 TimToady there's an implementation of P6 in Haskell that doesn't work because its Perl 5 bridge appears to be borken at the moment :)
18:58 TimToady we love Perl 5; we just hope to love Perl 6 more
19:01 dd007_ how much rakudo complies to Perl6 ?. is it complete ?
19:01 flussence passes 27049 tests out of 27052
19:02 dd007_ wow
19:02 diakopter well
19:02 TimToady fudged
19:02 flussence well, with ~1000 skips...
19:02 diakopter out of the hundreds of thousands of tests that should/will be written ..
19:02 TimToady the rakudo release notes give a long list of things that aren't implemented (yet)
19:03 TimToady but the subset that is there is quite fun to program in
19:03 dd007_ is there any release for windows platform ?
19:03 justatheory joined #perl6
19:03 TimToady sure
19:04 dd007_ is there any release for windows platform ?
19:04 TimToady sure
19:04 dd007_ which ? . where to download?
19:04 stkowski joined #perl6
19:05 diakopter https://github.com/downloads/rak​udo/star/rakudo-star.2010.07.msi
19:05 TimToady or https://github.com/rakudo/star/downloads if you don't mind compiling it yourself
19:05 diakopter but you'd need parrot first, I think
19:05 diakopter for the .msi link
19:05 dd007_ ok
19:06 TimToady jnthn++ develops on Windows, in fact
19:06 PerlJam TimToady: I think the 2 game-changing traits of Perl 5 were the ability of the language to evolve itself and CPAN.  What do you think Perl 6 has that's game-changing?
19:06 TimToady the ability to evolve itself *correctly*, for one
19:07 PerlJam heh
19:07 flussence and evolve other ones!
19:07 [Coke] diakopter: rakudo star handles the parrot dep for you.
19:07 TimToady and the ability to support multiple module distribution systems, not just one
19:07 [Coke] (oh, windows. yah, that might be safer to just use the .msi, nevermind)
19:07 dd007_ [Coke]:  ok
19:08 skangas joined #perl6
19:08 adu joined #perl6
19:08 dd007_ [Coke]: you mean on linux I would require parrot ?
19:08 MayDaniel joined #perl6
19:09 flussence on linux, the package manager does all the work for you :)
19:09 TimToady PerlJam: the main killer feature of Perl 6 is to take all the ad hoc powerful features of Perl 5 and unify them into a coherent semantic model that is much more powerful than Perl 5 could ever hope to be
19:09 PerlJam TimToady: that sounds *do* familiar  :)
19:09 PerlJam er, *so* even
19:10 [Coke] rakudo runs on parrot, so in any case, you need a parrot. in most cases, the rakudo star install will handle this for you so you don't need to worry about it.
19:10 dd007_ ok
19:10 TimToady (plus removing most of Perl 5's warts)
19:11 dd007_ is it just similar concept to JVM and CLR ?.
19:11 TimToady I think the main thing preventing people from migrating from Perl 5 to Perl 6 right now is performance; the subset we have is already a better language, for the most part
19:12 TimToady yes, but parrot is supposedly design from the start for dynamic languages
19:12 TimToady *designed
19:12 TimToady though, in retrospect, less well designed for gradually typed languages like Perl 6 than was initially thought
19:13 TimToady so parrot continues to evolve as well
19:13 diakopter [Coke]: on windows?
19:13 PerlJam TimToady: I agree mostly.  Not having CPAN and not having quite the same amount of helpful hints from the compiler and parrot leaking through on occasion all add up against using Rakudo for "something real" to me.
19:13 diakopter [Coke]: nm
19:13 TimToady rakudo's error messages are much improved of late
19:14 [Coke] diakopter: parrot requires perl, make, and a compiler to build - if those are in your PATH when you run the installer, I'd expect it to work. (hurm. and maybe git, depending on how it's bundled.)
19:14 TimToady and CPAN(ish) will happen; there's no way we could stop it
19:14 [Coke] but I am happy to use jnthn's .msi when testing out rakudo on windows.
19:14 [Coke] TimToady: can we try!?
19:14 [Coke] (that might be fun.)
19:14 PerlJam TimToady: yeah, that's one of those "tastes of the promised land" kind of things
19:15 mkramer left #perl6
19:15 PerlJam I would be enthused if CPAN could morph into something both Perl 5 and Perl 6 could use.
19:15 TimToady I hope that we end up in a land flowing with milk and honey, and make current CPAN look like the leeks and onions of Egypt.
19:16 TimToady (though, actually, I like leeks and onions :)
19:16 colomon the turnips and brussels sprouts of Egypt?
19:17 TimToady well, to borrow from the other testament, trying to upgrade CPAN might be like trying to put new wine into old wineskins
19:17 PerlJam maybe.
19:17 PerlJam If we give it a good try, we might find it otherwise.
19:18 mkramer joined #perl6
19:18 PerlJam or, perhaps what will happen is that we design the Perl 6 CPAN and then migrate the Perl 5 CPAN to start using it since old-CPAN will most likely be a subset of it.
19:19 TimToady if opinions expressed on this subject over the years had instead been channeled into real work, we'd have it by now :)
19:20 PerlJam maybe.  :)  Some things require much rumination before the brain gets into the right state to make it happen.
19:20 TimToady anyway, it won't bother me at all if CPAN finds itself in a stiff competition :)
19:21 colomon In an ideal world, multiple different "CPAN"s could easily automatically share actual modules, no?
19:22 TimToady as long as the identity of a particular bit of code is sacrosanct, I don't care where it comes from or how
19:22 TimToady what we can't have is different systems confusing module identities
19:22 TimToady hence all the verbiage in S11 about long names
19:23 dd007_ can anyone say why virtual machine based program run faster than interpreted program ?
19:23 glow joined #perl6
19:23 TimToady this is the lesson of the URI; keep your naming universal, and everything else can change over time
19:25 dd007_ why virtual machine based program run faster than interpreted program ?
19:25 PerlJam dd007_: because traditional interpreted programs repeatedly parse the same code over and over again
19:26 dd007_ in all cases ?. I am asking for single run example.
19:26 PerlJam dd007_: (that's one of many possible answers)
19:26 risou joined #perl6
19:28 risou_ left #perl6
19:28 PerlJam dd007_: with traditional interpreters, the body of a for loop (for instance) would be parsed and immediately executed each time through the loop.  With a VM the for loop is compiled down to some bytecode or bytecode like structure which requires very little parsing and is just executed each time through the loop
19:29 PerlJam dd007_: also note that I'm making some simplifying assumptions here.  So what I say isn't universal.
19:29 colomon I'm pretty sure that, if you ported Commodore 64 BASIC to run on a modern machine, many programs interpreted thus would be faster than Rakudo on the Parrot VM...
19:30 flussence colomon: yes, but what you trade in runtime speed you give up in writing the code :)
19:30 dd007_ i understand that looping example. I doubt whether current perl and php work that way.
19:30 PerlJam dd007_: they indeed do not.
19:31 colomon flussence: you'll notice I'm not devoting my time to porting Commodore 64 BASIC to modern machines.  :)
19:31 flussence heh :)
19:31 dd007_ PerlJam: means, they compile loop and execute it?
19:32 PerlJam dd007_: yes
19:32 dd007_ is it faster than VM based run generally ?
19:32 PerlJam dd007_: sorry, that's a meaningless question to me.
19:33 PerlJam perl and php both have a "VM"
19:33 dd007_ I am comparing non-VM based perl run vs VM based .
19:35 PerlJam still meaningless.  It's not so much an "execution speed" thing as much as it's a "save for developers to hack" thing.
19:35 PerlJam s/save/sane/
19:35 molaf left #perl6
19:36 PerlJam (although perl 5 has some wicked speed hacks :)
19:36 dd007_ will perl program (non-VM based) run faster or java program ?.
19:37 dd007_ what do you think
19:38 flussence the best way to answer that is to find a perl runtime that isn't VM-based and try it yourself :)
19:38 PerlJam I think programmer time is way more expensive than CPU time and you can develop code faster in Perl  :)
19:39 dd007_ yes
19:40 PerlJam dd007_: I'd say for most of Java's lifetime perl implementatiosn have been faster than Java implementations.   Just get a copy of "The Practice of Programming" and look at the timing comparisons they did
19:41 dd007_ PerlJam: I will.  though I do not work in java. i am in php and perl. sometimes code in c/c++
19:41 PerlJam dd007_: page 81 if you find a copy of the book somewhere.
19:41 dd007_ ok. thanks.
19:41 PerlJam dd007_: though I doubt those same relative timings would hold today.
19:44 flussence http://shootout.alioth.debian.org/u32/which-prog​ramming-languages-are-fastest.php?python3=on&amp​;yarv=on&amp;perl=on&amp;php=on&amp;calc=chart
19:44 dd007_ Hey, is "use strinct" implicit in Perl6 ?. do I have to declare variables with "my" always ?.
19:44 PerlJam dd007_: yes, except from the command line.
19:45 dd007_ :(
19:45 dd007_ :( :( :(
19:45 PerlJam well ... assuming it's still specced that way.  That's just how I remember it.
19:45 uniejo left #perl6
19:45 dd007_ i hate . really
19:46 PerlJam dd007_: perhaps you should use some language that has implicit declaration?
19:46 Max_- is now known as Guest1723
19:46 dd007_ I often write to quick and small test scripts . that are not part of the main large project of company.
19:47 dd007_ imposing "my" is killing me
19:48 PerlJam dd007_: crazy.
19:48 dd007_ oh really. it was good to let "use strict" do that job. we don't want it everywhere.
19:48 huf yes we do
19:48 huf see what i did there?
19:50 dd007_ in PHP there is no provision to pre declare variable . still it rocks. "use strict" is good to avoing variable mistyping. but I don't want it to auto load for all my script.
19:51 PerlJam dd007_: you can always turn it off.
19:51 huf dd007_: use strict is good for quite a lot of other things
19:51 dd007_ PerlJam: no.
19:51 PerlJam (although, I don't think anyone has implemented that yet)
19:51 dd007_ huf: what other things ?
19:51 PerlJam dd007_: right, "no strict"  :)
19:52 huf dd007_: perldoc strict
19:53 dd007_ I never required that "use strict" in my small test/practice scripts that I often create to try something. e.g. I want to try some class function or test regexp etc. I create a small script for side work.
19:54 huf and you think maing a small wrapper/shell alias to turn off strict for these is impossible? typing 2 characters more will break your arm?
19:54 huf i like your insurmountable problems.
19:57 dd007_ u know huf ,  I don't want to bother or waste time / energy in pre declaring some variables in small scripts that are created that are never going to be part of any live project.
19:58 huf dd007_: declaring them takes two extra characters, which isnt any amount of time/energy wasted, and as you've been told, it's possible to turn strict off
19:58 PerlJam dd007_: Check out http://rosettacode.org/wiki/Category:Perl_6  for some examples of Perl 6 code.
19:59 PerlJam dd007_: the "extra my" are not at all onerous.
19:59 TimToady phone?
20:00 dd007_ its only two characters that give protection from variable mis spelling. thats why I use strict in production scripts.
20:00 dd007_ but never in my personal small practice scripts.
20:00 huf dd007_: even my does more than just protect against misspelling
20:00 flussence well, I guess if someone chooses to ignore a language that saves them a hundred keystrokes because they have to type 3 extra, that's their loss...
20:01 dd007_ i know. it creates new variable. (makes sense in loops)
20:01 PerlJam dd007_: you can continue to use Perl 5 for your small practice scripts if you like.
20:01 glow left #perl6
20:01 PerlJam or python or ruby or php or whatever
20:01 huf or c ;)
20:01 alester dd007_: What are you trying to achieve by not using strict/warnings in your small scripts?
20:02 * shortcircuit has wasted plenty of his own time in 'practice scripts' due to var name typos.
20:02 dd007_ try some logic, or regexp or anything
20:03 huf why is turning off strict not an option again?
20:03 dd007_ huf: yes , i can turn it off , in that case also i would have write it explicitly.  but it doesn't hurt much. fine
20:04 clkao_ left #perl6
20:04 Guest1723 left #perl6
20:04 clkao joined #perl6
20:04 dd007_ but I prefer by default there should be "no strict". it would be great.
20:04 huf dd007_: yes, so if you can turn it off, you can also make an alias on your own for these test scripts
20:05 Guest1723 joined #perl6
20:05 huf or a small wrapper script somewhere in your homedir, which you add to your PATH
20:05 huf or a zillion other solutions
20:05 dd007_ hmm.
20:05 flussence echo 'no strict; require @*ARGV[0];' > p6sloppy.p6; chmod a+x p6sloppy.p6
20:05 PerlJam heh "sloppy"
20:06 huf dd007_: you can always continue your bad habits if you really want to, but i dont think perl should cater to them
20:06 dd007_ not declaring variable is not a bad habbit always.
20:06 huf it is. always.
20:06 dd007_ the way you make mistakes is bad habbit.
20:07 huf not declaring variables is a mistake.
20:07 huf how can you tell where they were brought into being and when they'll fall out of scope if you dont declare them?
20:07 flussence Computers are supposed to make our lives easier. That includes catching our mistakes, not assuming we have robotic precision.
20:07 alester I'm guessing that dd007_ is still not used to the idea that he is a human.
20:08 dd007_ we used to manage it since years in PHP . even in Perl5.
20:08 PerlJam dd007_: basically perl culture has decided through years of effort that declaring vars is good for anything more than a one-liner, so Perl 6 makes strict the default.
20:08 huf dd007_: and it's a terrible pain in php
20:09 PerlJam dd007_: so ... you haven't read much about Perl 6 yet, have you?
20:09 flussence PHP's lack of E_NOTICE by default has created some of the worst code  I've ever seen, and I'm the one who gets to maintain that crap.
20:09 dd007_ not yet. but I have read and coded much in Perl5 and PHP5
20:09 alester I, too, have to maintain that crap.
20:09 dd007_ I agree benefits of use strict but we use it always in production scripts.
20:10 * takadonet happy he never had to maintain php5 code!
20:10 flussence that's why I don't complain about rakudo.org being down ;)
20:10 alester dd007_: What are you trying to achieve by NOT using it everywhere?
20:10 alester http://xoa.petdance.com/Coding_horrors
20:10 shortcircuit dd007_: I've been watching P6 code show up on Rosetta Code, and I'm generally surprised when the native Perl 6 solution to a problem looks much like the Perl 5 version. It'd probably be best to not confuse their programming idioms.
20:10 dd007_ CONVENIENCE.
20:10 alester That's from my codebase at work, much of it now excised over the past three years.
20:11 alester dd007_: I'd suggest that it's far more convenient to catch your mistakes, human.
20:11 dd007_ there is something like convenience apart from rigid thoughts and beliefs
20:11 alester dd007_: Carry on.
20:11 hercynium joined #perl6
20:12 * flussence stares at that wiki page in complete terror
20:13 PerlJam dd007_: here's a quick tour of the differences between Perl 6 and Perl 5:  Variables keep their sigil:  @array[5]  %hash{$key}  Regex syntax has been reformulated.  Object oriented programming now has better built-in support.  no parens are required on conditionals of if, while, until, unless, etc. statements.  There are many more powerful operators and meta-operators.  Everything is an object.  -> has become .
20:13 PerlJam dd007_: and . has become ~
20:13 dd007_ PerlJam: I have read some of them . I appreciate
20:14 jaldhar left #perl6
20:14 jaldhar joined #perl6
20:14 alester flussence: Tell me which one pains you most!
20:15 flussence the horrible flashbacks, mostly
20:15 shortcircuit PerlJam: That "quick tour" would be a great addition to Perl 6's language page on RC.
20:15 dd007_ but i would have to digg more about this auto imposing "use strict".
20:15 PerlJam shortcircuit: feel free, it's not like it's copyrighted or anything :)
20:15 shortcircuit Heh
20:17 PerlJam dd007_: it's just good huffman coding.  The common things (or the things that you want to encourage people to use) should have some short syntax so that it's easy to use.  Enabling it by default gives the shortest syntax  :)
20:17 flussence alester: my favourite one ever was some piece of code that manually parsed mysql datestamps using substr(), which was only used once in the entire codebase, on a column that stored unix timestamps.
20:18 plainhao left #perl6
20:18 alester I just found some fantastic cut & paste
20:19 alester about 40 lines that aggregate (poorly) statistics about the list identified by $listid, and then updates the LISTS table in the database.
20:19 dd007_ PerlJam: yup. we are using it where appropriate and can omit it where not really necessary.
20:19 alester and then immeidately following, the exact same code, except that all $listid were changed to $xlistid.
20:19 * [Coke] prepares to cut and paste some SQL for great speed.
20:20 PerlJam alester: that one about "1 item(s)" is very similar  to something I was telling my current coworkers about my previous job.   There was a giant if/else with about 200 lines in each branch.  There was only about 5 lines difference between them and the main difference was that one branch handled 1 thing and the other branch handled N things.
20:20 flussence I remember something used a variable called $harsss... to this day I have no idea what it was used *for*
20:20 alester This guy just did not use functions.  Did not create functions, certainly, and only caled PHP functions where necessary, such as to hit the database.
20:21 flussence I have to maintain a present-day site that looks like that.
20:21 alester Do you know what I do when I come home?
20:21 flussence breathe a sigh of relief?
20:21 alester I walk in the front door, walk straight to the kitchen, open the first drawer, put in my keys and wallet and cell phone, and close the drawer.
20:22 alester Always, without fail, no matter how bad I might have to take a leak.
20:22 alester It is no less "convenient" for me to do this than to drop my stuff any old place.
20:22 alester It is a habit that I have maintained for probably close to 30 years now.
20:23 alester And I never ever ever have to wonder where I put my keys, or my phone, or my wallet.  Ever.
20:23 alester Having to do so would be extremely inconvenient.
20:23 alester In fact, it would be EXTRA brain cycles on my part to put them where they do not belong.
20:24 alester I also always put on my seat belt in the car.  I never wonder if it's "necessary".  I just do.
20:24 alester Thinking about if it is "necessary" is also inconvenient.
20:24 alester Trying to decide to save three seconds by not buclking my seat belt is false laziness.
20:25 alester And so is worrying about when you can omit "my".
20:25 PerlJam alester: you don't arrange your clothes in your closet so that you just pull the next set out and put them on without having to think about what to wear do you?
20:25 PerlJam :-)
20:25 flussence *stunned silence*
20:25 alester PerlJam: No, I never think about what I wear. :-)
20:25 PerlJam alester++ hahaha
20:25 PerlJam touche
20:25 alester Hey look, a plaid shirt and blue jeans. :-)
20:26 alester dd007_: Building strong habits will help you more in programming than most anything else you can do.
20:26 PerlJam (as long as they are  good habits :)
20:28 alester flussence: why stunned silence?
20:28 flussence it was that good
20:28 alester :-) Thank you.
20:28 alester I think that's gonna be a Perlbuzz post.
20:29 PerlJam alester++ again.  that would be awesome.
20:29 alester Thanks.
20:29 alester brb
20:29 colomon left #perl6
20:29 PerlJam If you could have waxed prosaic a little bit longer I would have to start comparing you to tchrist though
20:29 pothos left #perl6
20:29 y3llow left #perl6
20:30 dd007_ i do have good habbits  for programming and some other activities. thx. I follow it in all projects.  i often enjoy flexibility and convineince.
20:30 PerlJam dd007_: me too.  That's why I use perl.  It doens't force me to think about problems a certain way.  It lets me solve them in a "natural" way.
20:31 y3llow joined #perl6
20:31 pothos joined #perl6
20:32 dd007_ I just hated auto turned on strict. anyway, Perl6 is far from being as much popular. i will get used to it or find some other solution.
20:32 dd007_ i would have to write "no strict" on top where i dont want it.
20:33 TimToady no, you wouldn't
20:34 dd007_ at 2 a.m. I god little sad for thing that I will be using after years.
20:34 dd007_ got*
20:35 sji joined #perl6
20:35 TimToady starting a program with v6; is specced to be sufficient
20:35 TimToady it's just that nobody implements non-strict yet
20:36 TimToady also, -e is automatically supposed to be non-strict
20:36 shi left #perl6
20:36 dd007_ i just read an article for -e  . its for one liners only . right?
20:37 TimToady just like Perl 5's -e
20:37 dd007_ is it convinient for 5 to 10 lines of code with -e ?.
20:37 TimToady so one -e per line
20:37 TimToady that's what the v6; is for
20:38 TimToady -e 'v6; # this is now non-strct'
20:38 dd007_ oh
20:38 TimToady but -e can take multiple lines
20:38 TimToady and assumes the v6 anyway
20:38 justatheory left #perl6
20:38 dd007_ i will try it.
20:38 TimToady it's just NYI
20:38 TimToady so it won't work
20:39 TimToady but it is specced
20:39 TimToady see S01:146
20:39 dd007_ TimToady: do you mean -e 'v6; # this is now non-strct' ?.
20:39 TimToady rakudo has -e but it's still strict for now
20:39 TimToady it doesn't know how to be non-strict yet
20:39 Axius left #perl6
20:40 dd007_ TimToady: i hope it get chagned in future.
20:40 TimToady either rakudo or the spec has to change; that's how it works
20:40 dd007_ there should be some flag or options to be non strict by default
20:41 TimToady -e
20:41 TimToady or v6;
20:41 dd007_ no. -e is to write code at prompt. i want to give my file to interpreter.
20:41 dd007_ e.g. perl6 --no-strict test.pl
20:42 PerlJam std: v6; $x = 3;
20:42 TimToady if you use the v6 as a bareword first thing, it'll assume non-strict (eventually)
20:42 p6eval std 01ab3ab: OUTPUT«[31m===[0mSORRY![31m===[0m␤Variable $x is not predeclared at /tmp/EF49zDK9dP line 1:␤------> [32mv6; $x[33m⏏[31m = 3;[0m␤Check failed␤FAILED 00:01 120m␤»
20:42 PerlJam std doesn't even do it
20:42 PerlJam :)
20:42 TimToady nope :)
20:42 TimToady it's low on our list of priorities
20:42 dd007_ TimToady: ok
20:42 PerlJam dd007_: you can see how (un)important no strict is to the devs :)
20:42 TimToady but it is on our list
20:43 TimToady if you want it sooner, hack it in :)
20:43 MayDaniel left #perl6
20:43 spq1 left #perl6
20:44 Tene_ is now known as Tene
20:45 PerlJam dd007_: have you seen the advent calendar?  perl6advent.wordpress.com
20:45 dd007_ PerlJam: nope
20:46 dd007_ sounds like Inline::C
20:47 PerlJam dd007_: look at the other entries too, like those from last year.
20:49 dd007_ howmany believes map is slower than foreach ?.
20:50 TimToady they're exactly the same speed in Perl 6, by definition
20:50 PerlJam except "foreach" is spelt "for"
20:50 TimToady that too
20:51 dd007_ but may not be same for perl5.
20:51 * PerlJam still mildly boggles at all those perl 5 programmers who use "foreach" *on purpose*
20:51 TimToady unlikely to be the same, since p5 was designed back in the dark ages
20:52 flussence I use foreach... to mean "not a for() loop"
20:52 dju left #perl6
20:52 PerlJam flussence: you mean a C-style for loop?  I just don't ever write those.  :)
20:52 flussence I think I had to use them once or twice...
20:53 dd007_ for is required less. mostly things get done with foreach.
20:53 PerlJam flussence: besides "for" and "foreach" are synonymous in Perl 5.  It makes no difference to the compiler, why should it make a difference to you?  :)
20:53 kcwu left #perl6
20:54 TimToady indeed, you can use "foreach" with a C-style loop :)
20:54 * PerlJam contemplates writing  foreach ($i = 0; $i < $foo; $i++) { ... } just to annoy people
20:54 TimToady it would be proper huffman coding :)
20:54 dd007_ i hate  foreach ($i = 0; $i < $foo; $i++)
20:54 TimToady I hate foreach
20:55 flussence I know, I know. :) it just makes it slightly less to think about when I can look at the code and it says "this is done to each of the things in (here)"
20:55 PerlJam I hate foreach too.
20:55 PerlJam flussence: use "for" for that and don't ever write C-style for loops  :)
20:55 dd007_ but i have no problem with foreach( (@array).
20:55 flussence I'd never write C-loops with foreach though, that's just evil
20:56 Tene The for(each)? two spellings is rather irritating to me.
20:56 TimToady I'd redesign the language to make loop the C-style one :)
20:56 PerlJam Tene: why exactly?
20:57 flussence two names for exactly the same operation is very... PHPey to me.
20:57 flussence (though that usually doesn't stop at 2...)
20:57 PerlJam flussence: just like map and for in perl 6?  :)
20:58 TimToady at least they have differen tsyntax
20:58 * TimToady also has differen tsyntax...
20:59 PerlJam tsyntax is french isn't it? :)
20:59 TimToady russian, I think, as in tsar
21:00 PerlJam oh, I though it might be like t'syntax only the quote got elided.
21:00 dd007_ good night
21:00 [Coke] I use foreach in perl5 because when it reads better.
21:00 TimToady PerlJam: no, that'd be a character on Pern, not Perl
21:00 dd007_ left #perl6
21:00 TimToady foreach never reads better :)
21:01 PerlJam [Coke]: really?   I have never understood that.
21:01 [Coke] ... it helps if you leave out the /because/ in my send. ;)
21:01 PerlJam Alias said the same thing to me when he s/for/foreach/ the Padre code and I asked him "why?"
21:01 TimToady who's the idiot who thought it up?  we should persecute him. :)
21:01 colomon joined #perl6
21:01 flussence it makes it easier for people escaping from PHP :)
21:01 [Coke] coal for you.
21:01 [Coke] er, him!
21:02 diakopter he might get a persecution Complex
21:02 TimToady get Real
21:02 PerlJam TimToady: the danger with borrowing is that you might borrow too much (or not enough)
21:02 flussence (we'll have to keep an i on him...)
21:02 mdxi loops that iterate over an incrementor instead of a datastructure are the goto of the 21st century
21:02 diakopter lol
21:03 * PerlJam notes that Perl 6 still has goto specced.
21:04 PerlJam Djikstra notwithstanding, goto will be around for a while.
21:04 flussence just yesterday I got chewed out for using goto in some p5 code...
21:05 mdxi i never understood what he was so upset about, having grown up in the era of structured programming. then i started reading historical computing texts, and i was enlightened.
21:05 mdxi (fortran-style 3 argument IF, with arbitrary labels as jumps_
21:05 mdxi you can't do that kind of thing today unless you *try real hard* :)
21:06 flussence 3 argument IF...? I'm not sure I want to know what that is.
21:06 PerlJam heh
21:06 PerlJam clearly you've never programmed fortran :)
21:06 TimToady goto is one of those escape hatches that you hope never to have to use, but you're glad it's there, like eval and BEGIN
21:07 PerlJam TimToady: why does it have such a short name?  Shouldn't it be called "parachute" or something?  :)
21:07 flussence "teleport"
21:07 adu left #perl6
21:08 orafu left #perl6
21:08 orafu joined #perl6
21:08 dd007_ joined #perl6
21:10 TimToady we could spell it GOTO in honor of FORTRAN IV
21:10 TimToady and require "use MONKEY_BUSINESS;" at the top
21:11 mdxi anyway, i wasn't saying that i dogmatically hate on goto. just that i gained understanding of what Djikstra was cautioning against. likewise, i wasn't saying for (;;) shouldn't exist anymore, but that these days it's almost never what you really want.
21:11 dd007_ if i write v6; in beginning will it turned strictness off ?
21:11 PerlJam Why not? Wasn't .EQ. and .NE. or whatever still around in Perl 4?  :)
21:12 TimToady dd007_: define "will"
21:12 dd007_ does it have any other effect ?.
21:19 TimToady it tells a Perl 6 interpreter that it's not supposed to expect Perl 5
21:19 TimToady in addition to turning off strict
21:19 TimToady but there are other ways to expect Perl 6
21:19 dd007_ left #perl6
21:20 TimToady such as naming the executable perl6, or using a .p6 extension
21:20 TimToady or starting a file with "module" or "class"
21:20 TimToady see S01
21:21 sorear Perl 5.14 supports package NAME BLOCK syntax, so that's no longer useful
21:22 TimToady there's little reason to start a file with "package" in Perl 6, with or without a block
21:24 TimToady now if they borrow "class" or "module", we'll just forget the whole thing :)
21:24 TimToady we will recognize Perl 5 by giving a syntax error...
21:25 justatheory joined #perl6
21:26 zby_home_ left #perl6
21:27 stkowski_ joined #perl6
21:27 ggoebel left #perl6
21:27 flussence maybe it should exec('perl') instead of giving up on a syntax error... :)
21:28 moritz_ too much magic considered harmful
21:28 moritz_ because if you meant to write perl 6 code, and it then switches to perl 5 mode... I should take smilies more serious :-)
21:29 moritz_ rakudo: say 1
21:29 p6eval rakudo a95c1d: OUTPUT«1␤»
21:29 flussence I recall reading that gcc2.* would exec nethack on a parse error :)
21:29 moritz_ that's the newest, good
21:29 moritz_ std: 1
21:29 p6eval std 01ab3ab: OUTPUT«ok 00:01 117m␤»
21:29 * TimToady wonders what percentage of Perl 5 programs would actually parse under Perl 6 these days; almost nothing that uses subscripting would parse right
21:29 moritz_ that too
21:30 moritz_ TimToady: much perl 5 code uses for() and while() and if() without parenthesis
21:30 stkowski left #perl6
21:30 stkowski_ is now known as stkowski
21:30 TimToady s/parenthesis/whitespace/
21:31 flussence maybe "sloppy mode" should be a bit more allowing of syntax differences between p5/6
21:31 TimToady but I always hated that, making non-functions look like functions
21:32 ggoebel joined #perl6
21:32 TimToady bugs the heck out of me in C too
21:32 moritz_ erm, yes, whitespace
21:32 * moritz_ -> sleep
21:32 TimToady std: try{}
21:32 p6eval std 01ab3ab: OUTPUT«[31m===[0mSORRY![31m===[0m␤Undeclared routine:␤ 'try' used at line 1␤Check failed␤FAILED 00:01 118m␤»
21:32 TimToady night
21:45 shortcircuit TimToady: Well, one interesting test might be to scrape RC for P5 code, and pass it into a P6 interpreter.
21:45 TimToady you have a chinese definition of "interesting"
21:46 shortcircuit I'm cursed with an interesting life.
21:50 mavrc left #perl6
21:52 fardad joined #perl6
21:56 wamba left #perl6
21:57 fardad left #perl6
21:58 PerlJam TimToady: re: perl 5 adopting class.  chromatic has tried it at least once.  Perhaps we should tell him it's a feature that Perl 5 *doesn't* have a "class" keyword so that Perl 6 can recognize which is which.
22:00 dsp_ left #perl6
22:18 nymacro joined #perl6
22:27 sorear PerlJam: /<@array>/, incidentally, is specced to do what you want. :p
22:27 PerlJam sorear: yes, perl *6* already does what I want :)
22:30 wamba joined #perl6
22:42 Tene left #perl6
22:44 Alias_ joined #perl6
22:54 _kaare left #perl6
22:57 icwiener left #perl6
23:02 sji left #perl6
23:04 lamstyle left #perl6
23:06 IllvilJa joined #perl6
23:07 IllvilJa advent calendar ++
23:07 Tene joined #perl6
23:07 Tene left #perl6
23:07 Tene joined #perl6
23:09 risou left #perl6
23:13 lamstyle joined #perl6
23:21 shi joined #perl6
23:22 lue ohai o/
23:24 sjohnson yo
23:31 colomon \o
23:32 lue .u ʪ
23:32 phenny U+02AA LATIN SMALL LETTER LS DIGRAPH (ʪ)
23:32 Guest65806 left #perl6
23:32 * lue writing advent post
23:34 Guest65806 joined #perl6
23:35 sorear Does NativeCall have a spec yet?  The p6advent entry makes me think I could implement it pretty easily using P/Invoke
23:39 whiteknight joined #perl6
23:40 ultraviolent is now known as tobij
23:41 ch3ck left #perl6
23:44 sjohnson .u
23:44 phenny sjohnson: You gave me zero length input.
23:44 flussence no .u!
23:44 sjohnson :)
23:44 sjohnson trying to get the backspace char there
23:44 flussence .u backspace
23:44 phenny U+2408 SYMBOL FOR BACKSPACE (␈)
23:44 flussence er.
23:44 sjohnson .u house
23:44 phenny U+2302 HOUSE (⌂)
23:44 sjohnson thats the one
23:44 sjohnson ctrl backspace i meant
23:44 sjohnson .u ctrl-backspace
23:44 phenny sjohnson: Sorry, no results for 'ctrl-backspace'.
23:44 flussence oh
23:44 sjohnson .u ctrl backspace
23:44 phenny sjohnson: Sorry, no results for 'ctrl backspace'.
23:44 sjohnson house is cute
23:45 sjohnson thats what i always called it when i was young during the MS-DOS days
23:45 flussence there's a urxvt extension that prints unicode "control" characters like that
23:45 flussence (it gets in my way constantly when I forget to turn it off...)
23:46 sjohnson ctrl backspace = 7F = HOUSE in oem437
23:47 sorear .u ⌫
23:47 phenny U+232B ERASE TO THE LEFT (⌫)
23:47 sorear .u ⌦
23:47 phenny U+2326 ERASE TO THE RIGHT (⌦)
23:48 sjohnson hmm, my client won't let me do the ^V trick
23:51 lopnor is now known as lopaway
23:52 rjbs .u black snowman
23:52 phenny rjbs: Sorry, no results for 'black snowman'.
23:53 rjbs I recently discovered that glyph.  Very weird.  A neighbor to "snowman without snow"
23:53 sorear Is it a supplementary character?
23:55 sjohnson its a cute unicode one
23:56 sjohnson .u snowman
23:56 phenny U+2603 SNOWMAN (☃)
23:56 lue .u meteor
23:56 phenny lue: Sorry, no results for 'meteor'.
23:57 sjohnson .u snowman black
23:57 phenny sjohnson: Sorry, no results for 'snowman black'.
23:57 sjohnson its definitely in there, http://www.fileformat.info/inf​o/unicode/char/26c7/index.htm
23:58 felliott left #perl6
23:59 ch3ck joined #perl6
23:59 sorear .u 26c7
23:59 phenny U+26C7 (No name found)
23:59 sorear must be new.
23:59 felliott joined #perl6
23:59 felliott left #perl6

| Channels | #perl6 index | Today | | Search | Google Search | Plain-Text | summary

Perl 6 | Reference Documentation | Rakudo