»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg p6eval perl6: ... | irclog: irc.perl6.org/ | UTF-8 is our friend!
Set by sorear on 4 February 2011.
donri And then there's markdown which has prepostcircumfix ;) 00:02
00:03 risou_ left 00:10 sftp left 00:15 aindilis joined 00:33 ymasory joined, whiteknight left 00:38 nymacro joined 00:42 ymasory left, ymasory joined 00:51 alester joined 01:05 spinclad joined 01:06 spinclad left 01:07 spinclad joined, spinclad left, donri left, spinclad joined 01:10 mtk left, woosley joined 01:19 cosimo joined 01:25 jevin joined 01:30 jevin left 01:31 leprevost joined 01:43 Su-Shee left 01:44 GinoMan joined 01:53 noganex left, noganex joined 02:05 jevin joined 02:08 GinoMan left, Su-Shee joined 02:22 flatwhatson left 02:24 rhr left 02:35 flatwhatson joined 02:39 rhr joined 02:51 hudnix left 03:04 lue left 03:23 Su-Shee_ joined 03:27 Su-Shee left 03:37 leprevost left 03:46 jevin left 03:56 orafu left, orafu joined 03:58 satyavvd joined 04:02 agentzh joined 04:26 Trashlord joined 04:30 alester left 04:38 miso2217 left 04:41 JimmyZ joined
JimmyZ jnthn: ping 04:42
04:56 ymasory_ joined 05:00 ymasory_ left
tadzik good very morning, #perl6 05:02
05:07 wooden left 05:09 wooden joined, wooden left, wooden joined 05:14 dual left 05:21 Trashlord left 05:24 wooden left 05:29 Trashlord joined 05:30 wooden joined, wooden left, wooden joined
woosley perl6: class x{}; class y{also is x;}; 05:34
p6eval pugs: OUTPUT«*** No such subroutine: "&also"␤ at /tmp/ok8fegY3RV line 1, column 20-29␤»
..niecza v4-47-gfffa4cd: ( no output )
..rakudo 4bf132: OUTPUT«Could not find sub &is␤ in main program body at line 22:/tmp/oogf40LmtI␤»
woosley perl6: role x{}; class y{also dose x;}; 05:35
p6eval niecza v4-47-gfffa4cd: OUTPUT«===SORRY!===␤␤Undeclared routines:␤ 'also' used at line Any()1␤ 'dose' used at line Any()1␤␤Unhandled exception: Check failed␤␤ at /home/p6eval/niecza/boot/lib/CORE.setting line 388 (CORE die @ 2)␤ at /home/p6eval/niecza/src/STD.pm6 line 05:36
..1141 (STD P6.comp_unit @…
..rakudo 4bf132: OUTPUT«Could not find sub &dose␤ in main program body at line 22:/tmp/BtxoYNZGdH␤»
..pugs: OUTPUT«*** No such subroutine: "&also"␤ at /tmp/nPqTpuLsKg line 1, column 19-30␤»
woosley perl6: role x{}; class y{also does x;}
05:36 birdwindupbird joined
p6eval rakudo 4bf132: OUTPUT«Could not find sub &also␤ in main program body at line 22:/tmp/IY8Y7HU_4v␤» 05:36
..niecza v4-47-gfffa4cd: OUTPUT«===SORRY!===␤␤Action method trait_mod:does not yet implemented at /tmp/pvakZXHDeW line 1:␤------> role x{}; class y{also does x⏏;}␤␤Unhandled exception: Cannot use hash access on an object of type Str␤ at
../home/p6eval/niecza/boot/lib/CORE.setti…
..pugs: OUTPUT«*** No such subroutine: "&also"␤ at /tmp/pj1sUiuDNh line 1, column 19-30␤»
TimToady niecza is the closest to having it 05:37
05:37 dual joined
woosley std: role x{}; class y{also dose x;} 05:37
p6eval std 4608239: OUTPUT«===SORRY!===␤Undeclared routines:␤ 'also' used at line 1␤ 'dose' used at line 1␤Check failed␤FAILED 00:01 119m␤»
TimToady std: role x{}; class y{also does x;} 05:38
p6eval std 4608239: OUTPUT«ok 00:01 118m␤»
woosley oops
rakudo and pugs have no "also" implement 05:39
TimToady rakudo: class x {}; class y { is x; } # old syntax
p6eval rakudo 4bf132: OUTPUT«Could not find sub &is␤ in main program body at line 22:/tmp/1j2etVXOUf␤»
TimToady I guess it didn't do that that either
it's LTA that also backtracks out to sub parsing 05:40
it should commit to finding a declaration 05:41
s/declaration/trait/
05:44 aloha left 05:45 kaare_ joined
woosley TimToady: is it worth a bug submit? 05:45
05:46 jevin joined
TimToady well, I'll fix STD, but I don't know if there's a rakudobug yet 05:52
dalek d: 2815c4d | larry++ | STD.pm6:
require 'also' to be followed by a trait
05:53
TimToady woosley++
woosley rakudo: role X{}; class Y{ does X}; 05:54
p6eval rakudo 4bf132: ( no output )
woosley well, 'does' works for role 05:55
TimToady the problem with the old syntax is that 'is' interfered with Test's is function 05:56
that's why we relegated traits to 'also'
06:01 wtw joined 06:20 aloha joined 06:30 yves_ joined 06:42 woosley left 06:44 noganex_ joined
moritz good morning 06:45
06:47 noganex left, noganex_ is now known as noganex 06:53 wtw left, woosley joined 06:55 wtw joined 06:56 Rotwang joined 07:01 justatheory left, Mowah joined 07:03 Su-Shee_ is now known as Su-Shee 07:06 shi joined 07:14 fhelmberger joined, fhelmberger left 07:15 fhelmberger joined 07:18 krunen joined 07:32 orafu left 07:33 orafu joined 07:50 sarts_work joined, JimmyZ left 07:51 sarts_work left 07:52 cosimo left
woosley hello, what is equivalent in perl6 for ' my @a = ("x", ("A") x 5)' in perl5? 07:53
moritz rakudo: say ('x', 'A' xx 5).perl 07:54
p6eval rakudo 4bf132: OUTPUT«("x", ("A", "A", "A", "A", "A"))␤»
moritz rakudo: my @a = 'x', 'A' xx 5; say @a.perl
p6eval rakudo 4bf132: OUTPUT«["x", "A", "A", "A", "A", "A"]␤» 07:55
07:55 JimmyZ joined
moritz the inner () flattens out on assignment 07:55
woosley moritz: thanks 07:56
moritz x really serves two purposes in perl 5: string repetition and list repetition - in perl 6 those are separate operators
woosley moritz: did you notice the 'also does' problem in the class definition? looks like it is not implemented in rakudo 07:57
moritz that's correct 07:59
08:06 masak joined 08:07 yves_ left
masak lol hi zebras 08:07
moritz lol it's masak!!!!! 08:08
masak this course is odd. :) 08:09
we're all sitting in the audience thinking "I could totally write a framework for this" 08:10
moritz :-)
masak all the while the speaker is bashing frameworks, saying they're often not worth the complexity :)
moritz except that there are frameworks for this already, right?
masak this is a technique that refreshingly doesn't *need* a framework.
it just makes very good use of OO principles, and pulls things off with relatively little code. 08:11
moritz sounds like something I should learn eventually.
08:12 Su-Shee left, Su-Shee joined
masak maybe I should hold a post-course evening course, with a slant to Perl 6. 08:12
all of which is described is possible in Perl 6 as well, except perhaps a bit of compile-time type checking of parametric roles. 08:14
mathw sounds interesting 08:15
do you have a leaflet or small booklet I could read?
masak hold on, I'll get something.
woosley perl6: foo(); my @p = 1,2,3; sub foo(){say @p.elems}; 08:16
mathw \o/
p6eval pugs, rakudo 4bf132, niecza v4-47-gfffa4cd: OUTPUT«0␤»
woosley LoL, why it is 0
mathw I assume because foo() runs before @p is assigned 08:17
masak woosley: because the call is before the assignment.
mathw: cqrsinfo.com/documents/cqrs-introduction/
mathw: let me know if that explanation is too dry and boring. I assure you that the actual material on the course isn't. 08:18
woosley: there are two aspects here. @p is in scope in foo because the compiler sees @p first and then foo. but @p doesn't have any values yet when foo() is run, because foo() is before the assignment. 08:19
woosley: you'll find the same thing happening in most other languages: Ruby, Python, Java, C... 08:20
mathw masak: It's not very well-written 08:21
woosley masak: I thought it would be the elements number, apparently I am wrong, also in perl5...
mathw masak: but I sense the underlying idea might be interesting
woosley: it is the elements number - at the time you call foo, there isn't anything in @p
moritz rakudo: my @p = 1, 2, 3; say @p.elems
p6eval rakudo 4bf132: OUTPUT«3␤»
08:21 dakkar joined
mathw rakudo: say foo(); my @p = 1, 2, 3; sub foo() { @p.elems; }; say foo(); 08:22
p6eval rakudo 4bf132: OUTPUT«0␤3␤»
masak mathw: it's because there is not yet excellent web material for this that I'm on this course :) 08:23
woosley yep, I got it, bad expression^^
masak mathw: but as I said, I'll be happy to pass on this knowledge. that'll help me grok it better, too.
mathw masak: great :) 08:24
08:27 Axius joined
moritz what I don't understand in that page: 08:32
void CreateCustomer(Customer) 08:33
it seems I can retrieve customers by ID
but how can I retrieve the new customer when I don't know its ID yet?
masak good question.
moritz a LastNewCustomer() getter would help, but that's SO ugly 08:34
global state et. al.
masak here, I created a doodle, so that people interested in learning about CQRS can say when they would like it to happen: www.doodle.com/g6vsp3h3rs5cnk2v
moritz: I read CreateCustomer(Customer) as being a copy constructor. 08:36
moritz masak: so the copy has the same ID as the old one? 08:37
if not, the question still applies
08:37 jaffa4 joined
moritz and the question in the general case still remains for an ordinary constructor 08:37
masak you get a new Customer, but it has a new ID, I presume. 08:38
jaffa4 hi
masak hi, jaffa4
jaffa4 I have got regular expression converter
Could someone test it/
and give me feedback
masak jaffa4: url?
moritz what does it translate to what? 08:39
jaffa4 you already saw it
masak jaffa4: yes, I know. but I don't remember the url :)
jaffa4 I just got some feedback it does not work properly at times
masak it translates p5 regexes to p6 regexes.
jaffa4 www.equinoxbase.com/p5p6regconv/converter.html
masak it's an intriguing idea. I would do something like that with GGE, though. 08:40
because then it's AST-based.
jaffa4 what gge?
masak jaffa4: I'm guessing your solution is string-based.
jaffa4 yes
if that makes any difference 08:41
masak jaffa4: GGE is a regex/grammar engine.
jaffa4: it currently only understands Perl 6 regexes, but it can easily be extended to understand Perl 5 regexes, too.
moritz seems to handle the basics pretty well
masak so it could parse a Perl 5 regex, and then from the AST emit a Perl 6 regex. 08:42
moritz of course it doesn't translate quantified captures correctly, because 5 and 6 do it so differently
masak that's one thing that would be simpler with GGE.
jaffa4 it should
WHat does not?
WHat is it/ 08:43
?
moritz (.)+ in perl 5 only captures the last match
in perl 6 it captures all
masak oh.
that's not what I was thinking about.
moritz there's no straight-forward way to convert those
masak I was thinking about getting capture numbering right.
jaffa4 rakudo: say 3*3
p6eval rakudo 4bf132: OUTPUT«9␤»
moritz it makes a difference in cases like (\w)+\1
masak but I guess that's more of a runtime thing.
moritz in p5 that's the same as \w*(\w)\1 08:44
whereas the correct perl 6 translation would be more like (\w+)$0
masak: aye, capture numbering is tricky, because it's perl-scope in perl 6 and global in perl 5 08:45
masak moritz: I don't think that's the correct Perl 6 translation. 08:48
that captures all but the last match.
moritz rakudo: say 'aaaa' ~~ /(\w)+$0/; say $0 08:49
p6eval rakudo 4bf132: OUTPUT«aaaa␤a a a␤»
moritz huh. Is that correct? 08:50
masak don't think so.
moritz facepalms 08:51
$0 is an array
what happens when you interpolate an array into a regex?
you get an alternation, no?
moritz presents the case to the Regex High Court of TimToady, pmichaud and sorear 08:52
is that another "doctor, it hurts when I do this"? :-)
masak no.
this is bad.
you're clearly not intending $0 as an array, but as a submatch string. 08:53
moritz rakudo: say 'abcd' ~~ /(.)+$0/; say $) 08:54
rakudo: say 'abcd' ~~ /(.)+$0/; say $0
p6eval rakudo 4bf132: OUTPUT«===SORRY!===␤Contextual $*GOAL not found␤»
rakudo 4bf132: OUTPUT«␤␤»
moritz rakudo: say 'abca' ~~ /(.)+$0/; say $0
p6eval rakudo 4bf132: OUTPUT«␤␤»
moritz rakudo: say 'abcc' ~~ /(.)+$0/; say $0
p6eval rakudo 4bf132: OUTPUT«abcc␤a b c␤»
moritz ok that's not what it does 08:55
it just takes the last item
masak I'm too tied up to report a rakudobug.
moritz niecza: say 'abcc' ~~ /(.)+$0/; say $0
masak please someone else do it.
jaffa4 rakudo: 3*3
p6eval niecza v4-47-gfffa4cd: OUTPUT«c␤c␤»
rakudo 4bf132: ( no output )
jaffa4 rakudo: say 3*3
p6eval rakudo 4bf132: OUTPUT«9␤»
moritz niecza: say 'abca' ~~ /(.)+$0/; say $0
08:55 jaffa4 left
p6eval niecza v4-47-gfffa4cd: OUTPUT«␤Any()␤» 08:55
moritz niecza: say 'aaaa' ~~ /(.)+$0/; say $0 08:56
08:56 jaffa4 joined
p6eval niecza v4-47-gfffa4cd: OUTPUT«a␤a␤» 08:56
moritz masak: will do
masak ++moritz 08:58
moritz: ooh, you've lost your underscore! :) 08:59
moritz masak: yes, I didn't sounds that breathless pronounciation at the end of my name :-)
actually I convinced a freenode staffer to drop the previous 'moritz' account, which was unused for quite some time
aloha: karma moritz_ 09:00
aloha moritz: moritz_ has karma of 227.
moritz aloha: karma moritz
aloha moritz: moritz has karma of 531.
flussence_ hey, who stuck this thing on me? D:
tadzik hello zebrae 09:02
jaffa4 aloha: karma diakopter
aloha jaffa4: diakopter has karma of 261.
tadzik aloha: karma tadzik
aloha tadzik: tadzik has karma of 188.
jaffa4 aloha: karma dalek
aloha jaffa4: dalek has karma of 2.
tadzik whoa, that's a plenty of karma 09:03
jaffa4 aloha: karma dalek TimToady
aloha jaffa4: dalek TimToady has karma of 0.
jaffa4 aloha: karma TimToady
tadzik when can I buy a toaster for it?
aloha jaffa4: TimToady has karma of 100.
flussence aloha: karma C
aloha flussence: C has karma of 396.
masak tadzik: hi, little panda.
JimmyZ karma aloha
aloha aloha has karma of -46.
tadzik aloha++
aloha tadzik: Thanks!
tadzik botsnack!
masak already two participants for www.doodle.com/g6vsp3h3rs5cnk2v -- exciting! 09:06
people, feel free to sign up for this free, very exciting little CQRS course. 09:07
wherein I share knowledge that my employer paid quite a bit of money for me to learn.
09:07 wallberg joined
moritz hopes he'll get an answer to his constructor question during the mini course :-) 09:08
09:09 miso2217 joined
Rotwang 4 hours? 09:10
moritz 2, if I understood correctly 09:11
masak correct, 2.
not because there isn't more to talk about, but because that's the scope I'm imagining.
I plan to lean heavily on runnable/running Perl 6 code. 09:12
Rotwang I see
moritz masak: my participation always depends on not too much interruptions by Ronja, so take my signup with a grain of salt 09:13
s/much/many/
masak certainly. 09:14
if nothing else, you can lurk and read the logs afterwards.
moritz right
and I surely will
just remind me to set up the logs in time :-)
09:14 Axius left
Rotwang who's ronja? 09:15
masak I'm assuming I won't have to register #cqrs-perl6 for this small a thing.
moritz Rotwang: my daughter
Rotwang ah, ok 09:16
moritz masak: not at all. If you want I can send _ilbot in, or I can just hang out and copy&paste my irssi logs later
masak any option is fine by me. 09:17
I'd consider having the logs saved afterwards as a nice bonus, but not essential. 09:19
moritz I'll send the bot in.
masak that sounds like a line from a Hollywood movie :) 09:20
moritz :-)
Rotwang oha noez, skynet
09:24 _ilbot left, _ilbot joined
moritz select channel, max(day) from irclog where nick <> '' group by channel; 09:26
turns out I was still logging #perl6-gsoc, which was last active in 2009 :-)
masak heh :) 09:27
happy to help :)
09:32 awoodland joined
masak rakudo: role Disparaging[::T] { method disparage(T $o) { say "hah! I disparage this {$o.WHAT.perl}!" } }; class Framework {}; class FrameworkDisparager does Disparaging[Framework] {}; FrameWorkDisparager.new.disparage(Framework.new) 09:37
p6eval rakudo 4bf132: OUTPUT«Could not find sub &FrameWorkDisparager␤ in main program body at line 22:/tmp/P53WO4P4go␤»
09:37 awoodland left
masak rakudo: role Disparaging[::T] { method disparage(T $o) { say "hah! I disparage this {$o.WHAT.perl}!" } }; class Framework {}; class FrameworkDisparager does Disparaging[Framework] {}; FrameworkDisparager.new.disparage(Framework.new) 09:37
p6eval rakudo 4bf132: OUTPUT«hah! I disparage this Framework!␤»
masak :)
moritz rakudo: role Disparaging[::T] { method disparage(T $o) { say "hah! I disparage this {$o.WHAT.perl}!" } }; Disparaging[ class Framework { }].new 09:39
p6eval rakudo 4bf132: ( no output )
moritz rakudo: role Disparaging[::T] { method disparage(T $o) { say "hah! I disparage this {$o.WHAT.perl}!" } }; Disparaging[ class Framework { }].new.disparage
p6eval rakudo 4bf132: OUTPUT«Not enough positional parameters passed; got 1 but expected 2␤ in 'disparage' at line 22:/tmp/0M6Kmk7DIj␤ in main program body at line 22:/tmp/0M6Kmk7DIj␤»
masak it still needs to disparage a Framework object.
moritz rakudo: role Disparaging[::T] { method disparage(T $o) { say "hah! I disparage this {$o.WHAT.perl}!" } }; class Framework { }; Disparaging[Framework].new.disparage 09:40
p6eval rakudo 4bf132: OUTPUT«Not enough positional parameters passed; got 1 but expected 2␤ in 'disparage' at line 22:/tmp/nvS1tQmTAw␤ in main program body at line 22:/tmp/nvS1tQmTAw␤»
moritz rakudo: role Disparaging[::T] { method disparage(T $o = T.new) { say "hah! I disparage this {$o.WHAT.perl}!" } }; class Framework { }; Disparaging[Framework].new.disparage
p6eval rakudo 4bf132: OUTPUT«hah! I disparage this Framework!␤»
moritz rakudo: role Disparaging[::T] { method disparage(T $o = T.new) { say "hah! I disparage this {$o.WHAT.perl}!" } }; Disparaging[ class Framework { }].new.disparage
p6eval rakudo 4bf132: OUTPUT«too few positional arguments: 1 passed, 2 (or more) expected␤ in 'disparage' at line 1␤ in 'disparage' at line 22:/tmp/FuU12LpbbZ␤ in main program body at line 22:/tmp/FuU12LpbbZ␤»
masak that's odd. 09:41
moritz that's the old "class declaration returns weird stuff" bug
rakudo: my $x = class A { }; say $x.WHAT
p6eval rakudo 4bf132: OUTPUT«Code()␤»
masak so it works if you don't do the declaration of Framework inside the [] ? 09:42
moritz correct
masak good.
moritz rakudo: role Disparaging[::T] { method disparage(T $o = T.new) { say "hah! I disparage this {$o.WHAT.perl}!" } }; Disparaging[ do { class Framework { }; Framework } ].new.disparage
p6eval rakudo 4bf132: OUTPUT«hah! I disparage this Framework!␤»
moritz workaround
rakudo: role Disparaging[::T] { method disparage(T $o = T.new) { say "hah! I disparage this {$o.WHAT.perl}!" } }; Disparaging[ anon class Framework { }].new.disparage 09:43
p6eval rakudo 4bf132: OUTPUT«hah! I disparage this Framework!␤»
09:43 PZt left
moritz another workaround 09:43
masak I'm afraid rt.perl.org/rt3/Ticket/Display.html?id=84492 is going to be a bit of a barrier when giving the mini-course.
some of the patterns involved like to pull in multi methods from roles. 09:44
moritz :/ 09:45
masak oh well. I can probably get quite close to how the code would look if Rakudo weren't broken in that particular area. 09:46
a guy here has, as a desktop image on his laptop, a fair semi-clad lady in a provocative pose. I'm struck by the different norms that exist in different countries. in Sweden, you could get a reprimand for that. 09:51
from my experience, I suspect Sweden is the outlier here, at least in Europe. 09:52
moritz could you? I thought Sweden was fairly liberal...
masak we are. but gender roles are touchy. 09:53
moritz "we are. Except when we are not." :-)
masak at least at the layers of society where I move.
YMMV.
arnsholt There are two parts of it, I think (from my Norwegian perspective)
masak liberalism does not mean that people freely accept discrimination. 09:54
moritz I wouldn't display such a picture in a professional setting
arnsholt One is the whole gender-equality thing, which is important in Scandinavia
mathw It would be frowned upon here
Definitely considered inappropriate for a professional environment
arnsholt Another is, I suspect, a remnant of the puritan Protestant ethic
09:54 tzhs joined
arnsholt Similar to our alcohol laws 09:54
moritz masak: without seeing the image it's hard to draw a line between discrimination and displaying beauty 09:55
probably depends on how provocative the pose is
masak moritz: yes. and it's also a subjective thing. 09:57
mostly, I too am surprised too see such an image in a professional setting.
the speaker has gone past it a few times and made jokes about it.
moritz that isn't very professional either 09:58
(except when the jokes are thinly veiled reprimands for being so unprofessional)
mathw I do tend to stop and think about my desktop background when I take my laptop anywhere
masak it's things like "I don't understand how this guy gets any actual work done with that desktop background." 09:59
arnsholt I have to admit I usually don't, but that's probably because I only see it every other week or so ^_^
mathw heh yes 10:00
I only see the one at work when I lock the screen
my one at home only really gets seen when I have to reboot to install updates
masak ...and of course, there's 30 guys in the room, and no gals.
the only women around are hotel employees.
moritz masak: now we could start talking about cause and effect
regarding desktop backgrounds: I get used to them, and tend to ignore them from then on 10:01
so there's not much point in having one really
I kept the one I have now out of laziness
mathw this is why I don't understand people complaining about no desktop icons in GNOME 3 10:02
I never *see* my desktop
so why would I want to put things on it that I then need to shuffle windows around to find?
moritz masak: I do, but only because I have 9 virtual desktops :-) 10:03
mathw the desktop is just a load of space to put windows on
masak my desktop backgroun is a solid blue. I have no icons on it. :)
s/backgroun/background/
arnsholt I use a tiling window manager. My destop is black 10:04
I think =D
*desktop
moritz my wife would kill me if I did :-)
she sometimes reuses my session for browsing
arnsholt Hehe, I can see how that would lead to marital issues 10:05
mathw I'm single :)
ish
and my possibly-boyfriend (or whatever is appropriate to call him) has his own laptop, as is only proper
arnsholt My gf is still working on befriending OS X when borrowing my laptop (but I've already decided her next laptop should be a Mac =) 10:06
moritz now about using vimperator... :-)
mathw Yeah mine's fairly safe from my family when they visit because they see a GNOME desktop and think 'wtf?' 10:08
I suppose I should use Xmonad if I really want to confuse them, but that confuses me as well 10:09
arnsholt I use Xmonad. I find it quite nice 10:12
10:12 MayDaniel joined
arnsholt The only speedbump is my lack of fluency with Haskell which makes changing the configuration a bit of an adventure at times =) 10:12
mathw I know Haskell, that was the easy bit
I just couldn't get used to a tiling window manager
I realised that a decent overlapping window manager was good enough for me 10:13
Although right now I'm scowling at Windows XP for being so fearfully primitive
arnsholt Ah, right. I usually run all my application fullscreen anyways, so it was a pretty painless transition
mathw ah I almost never do that
arnsholt Occasionally while programming I'd fiddle to sort of half-and-half my screen with code and docs, or code and app or something
That last bit turned out to be trivial with a tiling WM, which pretty much sold me on the whole thing 10:14
mathw yeah it should be
I think I could learn to use one if I really put the time in 10:15
But I didn't start with it until I'd been using Compiz with extensive use of the Scale plugin for years, and I just got so used to that workflow
10:16 agentzh left, woosley left
bbkr_ Is every module in ecosystem included in Star release? I'm planning to polish JSON::RPC (include latest Socket::INET changes, and use modifed LWP::Simple as transport layer) so it can be added to ecosystem. 10:16
moritz bbkr_: no 10:17
bbkr_: star has a separate list of modules
bbkr_ moritz: thanks. BTW: i will fork your LWP and add sending content in request, so various *RPC modules can be implemented. 10:18
moritz bbkr_: not my LWP, it's cosimo's :-) 10:19
10:19 MayDaniel left
moritz bbkr_: I'm sure he'll accept pull requests (or even hands out commit bits) 10:19
10:22 MayDaniel joined 10:23 icwiener joined 10:32 icwiener_ joined, Rotwang left
colomon backgrounds: default OS X 10.5 starry background on my MBP. Picture of me, my dad, and my father-in-law with a stringer of freshly caught walleye on my Windows machine. :) 10:34
10:35 icwiener left
mathw colomon: nice. I've got the OpenSUSE 11.4 wallpaper on my home laptop, a picture of the church at Clumber Park on my home Windows box, and at work I've just changed it to a new picture of my cat :) 10:37
colomon my phone's wallpaper is a picture of my son (age 2 at the time) pretending to play one of our accordions. ;) 10:38
mathw yay accordions! 10:39
accordion is quite high on my list of instruments I'd like to learn 10:40
viciously fighting for its place with harp 10:41
colomon me too -- high enough I actually work at it a bit here and there.
mathw On the other hand, I'm already doing singing, recorder, viola de gamba, ukulele and bodhran, so one does think that perhaps one should not take on anything else
colomon www.harmonyware.com/pictures/henry_...hohner.jpg 10:42
10:42 am0c joined
mathw :D 10:43
other instruments I'd really like to learn: uilleann pipes, hurdy gurdy, baroque flute, lute, theorbo, marimba
arnsholt There. My appendix on the derivation of the maximum likelihood estimators for HMMs should now be even more readable =D 10:44
colomon ah, I'm working on simple-system flute as well. Though Henry managed to put three good-sized cracks in my wooden flute last week, which is going to slow me down a bit. 10:45
miso2217 hello all, are the <?after and <?before lookaround constructs supported by rakudo?
mathw colomon: that's a shame :( 10:47
flussence <?after isn't IIRC
Juerd Let's hope nobody makes a <?php 10:49
miso2217 flussence: how should it be then writtent? 10:50
flussence not sure, I came across it when I was porting some perl5 code. 10:52
jaffa4 what is Command-Query Responsibility Segregation? 10:54
11:03 am0c left, awoodland joined 11:04 pernatiy left 11:05 dual left 11:14 MayDaniel left 11:15 am0c joined
TiMBuS whats the correct way to listify an array when passing it to a for loop 11:19
.list i guess?
11:19 awoodland left
masak TiMBuS: or @() 11:20
TiMBuS thats a better idea. 'feels' more right
masak TiMBuS: the general rule is that unless it has a @ sigil or .list or .[] or some other thing to explicitly mark it as a listy thing, it's an item.
oh, and "hurdy gurdy" is the ultimate name for an instrument. 11:21
TiMBuS its probably swedish 11:22
11:23 woosley joined
masak :P 11:23
11:24 JimmyZ left 11:36 pmurias joined 11:38 jaffa4 left 11:39 jaffa4 joined
jaffa4 rakudo: say "hello" 11:39
p6eval rakudo 4bf132: OUTPUT«hello␤»
jaffa4 rakudo: say "hello\n\n\"
p6eval rakudo 4bf132: OUTPUT«===SORRY!===␤Confused at line 22, near "say \"hello"␤»
jaffa4 rakudo: say "hello\n\n"
p6eval rakudo 4bf132: OUTPUT«hello␤␤␤» 11:40
11:41 Trashlord left 11:52 Patterner left 11:55 satyavvd left 11:56 Psyche^ joined, Psyche^ is now known as Patterner 11:58 Trashlord joined
takadonet morning all 12:01
sbp hey
moritz hi sbp
sbp greets 12:02
masak hi takadonet, sbp 12:03
12:15 pernatiy joined, [Coke] joined 12:27 JimmyZ joined 12:29 daxim joined, nicola joined, nicola is now known as nicola_g
nicola_g hi 12:29
12:29 nicola_g is now known as nicola
nicola ni 12:29
moritz hello
nicola anybody here?
moritz nope, just robots 12:30
nicola i need some guidance
oops
moritz don't take me serious :-)
nicola oh ok
so who is Britney Spears?
12:32 nicola is now known as nicola_g
nicola_g uhm, good morning 12:32
a lot of people here, huh
takadonet nicola_g: always lots of ppl here, most are just quietly hacking away... 12:33
nicola_g oh i c
you may guide me a little bit about perl6?
uhm, i'm using perl5/apache 12:34
takadonet points to masak and mortiz
nicola_g but i heard that it's possible to do something like "user v6;" to code in perl6?
masak nicola_g: well, yes and no. 12:35
nicola_g how is yes, n how is no?
moritz nicola_g: perl 5+6 integration is unstable at its best
and mostly not done yet at all
masak nicola_g: if you're using Perl 5 and Apache, you probably should keep using Perl 5 and Apache. :)
nicola_g: but we're very glad you came here, and we might help you in various other ways :)
nicola_g oh, ok, so should i wait for an official release of perl6? 12:36
moritz and experiment with Perl 6 in separate scripts
nicola_g: no, forget "official releases". What counts if the software does what you want
masak nicola_g: there have been official releases of Perl 6.
moritz nginx had its 1.0 release today, but nearly half of the top russian sites were already using it
12:36 am0c left
nicola_g uhm, where do download that release? is it stable? 12:37
masak nicola_g: problem is, everybody has a different subjective definition of "official". so it doesn't really matter.
stable for some things, not for others.
you can download it from perl6.org
nicola_g i mean "officially" released by activestate or someone famous
moritz it's stable in the sense that if you don't update, your code will continue to work in future :-)
masak Rakudo star is officially released by the team developing Perl 6 on Parrot.
moritz nicola_g: github.com/rakudo/star/downloads/ 12:38
masak Niecza is officially released by Stefan O'Rear, a moderately famous entity.
nicola_g thks for the link
masak Yapsi is released by the international underground conspiracy.
of zebras.
nicola_g but i'm building my project on perl5 n afraid of having to recode this bunch of work in future 12:39
moritz nobody will force you to redo any code in Perl 6
masak nicola_g: there once was a project called Ponie.
nicola_g: have you heard about it?
nicola_g yeah but perl6 seems clearer in OOP
moritz there's no implicit upgrade path from 5 to 6
masak nicola_g: you should definitely check out Moose. 12:40
moritz nicola_g: right. But that doesn't mean it makes sense to rewrite a big codebase
nicola_g yeah
[Coke] I would continue to use perl5 for anything bigger than a breadbasket.
nicola_g but is the version from perl6.org integrateable to apache?
[Coke] (for the next short while)
masak nicola_g: it's been known to integrate with Apache, yes.
nicola_g: I would be lying if I said it was trivial.
nicola_g oh great
[Coke] Not at this time. there used to be a "mod_parrot" which made "mod_perl6" work, but it's bitrotted.
12:41 bluescreen10 joined
moritz [Coke]: there are CGI scripts :-) 12:41
[Coke] masak: is my intel old?
(I miss mod_parrot. :(
masak with November, we just hardwired things into Apache.
[Coke] hee! I misread that as "handwaved" 12:42
nicola_g any link guiding the integration of perl6 (from perl6.org) to apache?
masak [Coke]: I think we had mod_parrot or mod_perl6 working at some point, but never on the production server.
nicola_g: no, unfortunately not. the process was never really documented.
moritz finds it great that people perceive perl6.org as authorotative in some way 12:43
masak nicola_g: but it's essentially a matter of writing your Apache config files right so that it finds an executable script somewhere that starts Rakudo with the right Perl 6 script.
nicola_g oops, so i better wait for activestate's stable release huh
masak nicola_g: yes, but you'll miss a lot of great things if you wait :)
nicola_g i c, i c, like an apache module to execute a certain file extension 12:44
masak nicola_g: I would recommend downloading Rakudo Perl 6 and playing with it in your spare time.
nicola_g: it will prepare you for the great things to come.
nicola_g yeah, im trying to get familiar with the new syntax 12:45
tadzik more importantly, it's fun
moritz rakudo: say [+] 1..4
p6eval rakudo 4bf132: OUTPUT«10␤»
moritz rakudo: say [*] 1..4
masak nicola_g: look at this:
p6eval rakudo 4bf132: OUTPUT«24␤»
masak rakudo: say [+] 1, 2, 3, 4
p6eval rakudo 4bf132: OUTPUT«10␤»
masak moritz: oh, that's scary. 12:46
moritz: I typed that example without seeing yours. :P
moritz :-)
masak (webchat.freenode.net has "interesting" scrolling behaviour)
moritz masak: must be the ^m connection :-) 12:47
12:47 araujo left
nicola_g perl5 vs perl6 is like c vs c++ 12:47
masak moritz: it's happening. we're slowly merging into one single Perl 6 brain. :P
nicola_g: some people say that. I think it's more like C vs something cool :P 12:48
moritz nicola_g: not at all
nicola_g: C++ took all of C, and slapped on more stuff
masak and yet C++ is not exactly compatible...
moritz nicola_g: Perl 6 took only ideas from Perl 5, otherwise it's a complete redesign
ok, *nearly* all of C 12:49
nicola_g i like the feature "everything is a reference"
masak yes, it tends to simplify things.
not as many ->
nicola_g but using the "." is a little bit inverted in comparison to c++ or php 12:50
moritz it's more like in java or ruby or python 12:51
nicola_g ppl usually know that "->" is for reference and "." is for an object
12:51 araujo joined
nicola_g who started the idea of building this perl6? 12:52
i mean this branch of perl
not larry wall?
12:53 am0c joined
moritz it was larry wall 12:54
mathw It was indeed
nicola_g oh ic ic
nice talking to u guys, i continue my work :) 12:55
moritz have the appropriate amount of fun!
12:58 mikemol joined 13:00 araujo left
tadzik I always have fun with inappropriate amount of fun 13:02
mathw I have an inappropriate amount of fun sometimes
And no fun other times
I'm not sure about having the appropriate amount of fun
moritz now that's a problem.
13:03 araujo joined 13:09 nicola_g left, hudnix joined, JimmyZ_ joined
miso2217 does lookaround in regexes work in rakudo? 13:10
13:10 JimmyZ left
moritz ahead, yes 13:10
13:10 JimmyZ_ is now known as JimmyZ
moritz behind is NYI 13:10
it worked in alpha 13:11
masak it was a total hack in alpha/PGE, but it worked.
miso2217 moritz: ahead but not behind yet, thats it? 13:12
masak miso2217: yes, that's it. 13:13
13:15 crakrjak left
miso2217 masak: ok thx. I was trying to find an apropriate example for the Backtracking chapter using lookbehind, no luck :-( 13:16
13:16 JimmyZ left
miso2217 masak: chapter (of the book) 13:17
13:19 JimmyZ joined, mtk joined
flussence wait, how long has <?after> worked in rakudo for? 13:22
looks like I can take that one todo out of T-T-W now...
moritz flussence: after only worked in alpha
that's look-behind
flussence yeah but I just tried something using it and it worked... 13:23
moritz rakudo: say 'foo' ~~ /<?after f> . /
p6eval rakudo 4bf132: OUTPUT«Method 'after' not found for invocant of class 'Cursor'␤ in <anon> at line 22:/tmp/wKZTfKLIuZ␤ in 'Cool::match' at line 2661:CORE.setting␤ in 'Regex::ACCEPTS' at line 6279:CORE.setting␤ in main program body at line 22:/tmp/wKZTfKLIuZ␤»
PerlJam good morning #perl6
flussence this specifically: github.com/flussence/Text-Tabs-Wra...Jacobson.t 13:24
moritz good morning PerlJam
flussence: maybe it never calls $break for some reason?
flussence hm, I'll have to double-check that. 13:25
moritz add a { die "really called" } block to the regex
flussence it died! 13:26
moritz wtf 13:27
flussence oh.
it died without too.
the todo line was making it look ok.
moritz alpha: say 'foo' ~~ /<?after f> ./
p6eval alpha : OUTPUT«o␤»
flussence facepalm
moritz :-)
masak this course really vibes with me. 13:30
I used to think BDD was really a stupid re-branding of TDD, but now I suddenly see the use of it.
moritz adjusts masaks base mode 13:31
masak makes a bunch of weemy radio noises
PerlJam masak: So what have you learning about BDD that's useful?
masak let me try to put it into words. 13:32
[Coke] bdd?
masak I'll definitely talk more about it on Friday-or-whenever.
PerlJam [Coke]: behavior driven development
13:32 donri joined
masak [Coke]: the original idea being to structure things into given-when-then segments. 13:32
[Coke]: and then making your customer/domain expert write the bdd tests. or at least evolving them together with the customer. 13:33
[Coke]: what I had seen so far was mostly Ruby going overboard with brittle language parsing for their BDD tests.
which, frankly, wasn't very impressive. 13:34
PerlJam: I think the use comes out of doing this on top of a model that deals in Command and Event objects.
PerlJam masak: There's also the problem of developers losing sight of what they're really testing. The further away from the code they get the crazier they seem to become :) 13:35
masak PerlJam: suddenly the return types become: List<Event> Given -- Command When -- void all_the_different_then_methods
PerlJam: that's another nice thing about this course. the speaker is more than slightly anti-framework.
PerlJam masak: wish I coudl be there then. The only treatments of the subject I've seen invovle cucumber fanatics and such. 13:36
masak we've spent the afternoons so far actually coding in different ways.
yesterday I wrote Perl 6 code on the course! :)
moritz PerlJam: then attend masak's mini online course (see backlog for a doodle link) 13:37
masak PerlJam: after seeing this, cucumber looks like a tragic shadow of what BDD could be.
PerlJam: www.doodle.com/g6vsp3h3rs5cnk2v
moritz++ # for reminding me
yes, come to the mini course. you don't have to sign up, but you get to help pick the date and time.
I'm so happy about what I'm learning here, and it's so widely applicable, that I want to pass it on. 13:38
moritz my reaction to that is "is there a good book about it?"
13:39 sftp joined
moritz and if yes, "when can I win my next EUR 100 amazon voucher?" :-) (j/k) 13:39
masak :P 13:41
moritz: there are books that prepare for this course.
we've gotten a few book recommendations. I plan to turn them into an Amazon wishlist today or tomorrow.
then I can post the url here.
moritz remembers where he read about similar concepts 13:42
bertran meyer, "object-oriented software construction"
who basically says that mutators shouldn't return anything 13:43
that was the book that really made me understand OO
masak that book is one of the four on the list.
the concept is called CQS. 13:44
Command-Query Separation.
I used the terms a little in reviewing the p6cc entries.
moritz I read some of the draft chapters for the 3rd edition, iirc
masak this book is the important DDD book: www.amazon.com/Domain-Driven-Design...0321125215
moritz and read the entire previous edition, or something
masak apparently, it's the 2nd edition that's good. 13:45
3rd is too bloated.
miso2217 does quantified matching work in rakudo? 13:47
tadzik ywis
miso2217 rakudo: if "foo:food fool\nbar:bard barb" ~~ m/ [ (\w+) \: (\w+ \h*)* \n ] ** 2..* / { say 'match |', $/.perl, '|'; } else { say 'no match'; }
p6eval rakudo 4bf132: OUTPUT«no match␤»
PerlJam miso2217: you don't have a newline at the end of the second line 13:48
miso2217 PerlJam: thx. took it directly from the synopses without looking at it twice 13:49
masak miso2217: I think that range might not parse as you think it does. 13:50
it parses as [...] ** 2 . .*
or not. I might be misremembering. 13:51
moritz rakudo: say so"foo:food fool\nbar:bard barb\n" ~~ m/ [ (\w+) \: (\w+ \h*)* \n ] ** 2..* /
p6eval rakudo 4bf132: OUTPUT«Bool::True␤»
moritz rakudo: say so"foo:food fool\nbar:bard barb\n" ~~ m/ [ (\w+) \: (\w+ \h*)* \n ] ** 2..* /; say $/ 13:52
p6eval rakudo 4bf132: OUTPUT«Bool::True␤foo:food fool␤bar:bard barb␤␤»
tadzik oh, Moose 2.0
13:58 kaare_ left 14:02 JimmyZ left 14:04 shi left 14:07 Axius joined 14:13 PZt joined 14:15 MayDaniel joined 14:17 JimmyZ joined 14:18 wtw left 14:23 silug joined
JimmyZ jnthn: ping 14:26
jaffa4 what should I use for past? 14:34
dalek: paste 14:35
std: token word { \w+ } 14:36
p6eval std 4608239: OUTPUT«ok 00:01 120m␤»
jaffa4 std: token word { \w+ } rule phrase { <word> [ \, <word> ]* \. }
p6eval std 4608239: OUTPUT«===SORRY!===␤Strange text after block (missing comma, semicolon, comment marker?) at /tmp/JNMRvPU5kn line 1:␤------> token word { \w+ }⏏ rule phrase { <word> [ \, <word> ]* \. ␤ expecting any of:␤ bracketed infix␤ infix or
..meta-infix␤ stateme…
miso2217 std: token word { \w+ } rule phrase { <&word> [ \, <&word> ]* \. } 14:39
p6eval std 4608239: OUTPUT«===SORRY!===␤Strange text after block (missing comma, semicolon, comment marker?) at /tmp/jmjfsqg9gu line 1:␤------> token word { \w+ }⏏ rule phrase { <&word> [ \, <&word> ]* \␤ expecting any of:␤ bracketed infix␤ infix or
..meta-infix␤ stateme…
miso2217 std: token word { \w+ }; rule phrase { <&word> [ \, <&word> ]* \. }
p6eval std 4608239: OUTPUT«ok 00:01 125m␤»
tadzik jaffa4: whatever works for you really 14:42
people like nopaste.snit.ch
14:43 Axius left 14:46 awoodland joined
moritz or gist.github.com 14:47
14:47 Axius joined 14:48 daxim left 14:49 daxim joined, kaare_ joined 14:50 awoodland left 14:51 justatheory joined 14:52 MayDaniel left 14:53 nymacro left 14:55 hanekomu joined 14:56 JimmyZ left 14:58 nymacro joined
jaffa4 what is proto token statement { <...> }? 14:58
...? 14:59
moritz obsolete syntax
miso2217 is the :g adverb for global matching implemented?
15:00 Axius left
miso2217 rakudo: say so 'aa' ~~ m:g/\w/, say $/; 15:00
p6eval rakudo 4bf132: OUTPUT«===SORRY!===␤Adverb 'g' not allowed on m at line 22, near ", say $/;"␤»
moritz miso2217: it works on s:g///
miso2217 rakudo: say so 'aa' ~~ m:g/\w/; say $/;
p6eval rakudo 4bf132: OUTPUT«===SORRY!===␤Adverb 'g' not allowed on m at line 22, near "; say $/;"␤»
moritz miso2217: but I had problems coming up with a good return value for m:g//, so I haven't implemented it yet
niecza: say 'aa' ~~ m:g/a/ 15:01
miso2217 moritz: ah, ok, is there some kind of workaround?
p6eval niecza v4-47-gfffa4cd: OUTPUT«a␤»
moritz niecza: say ~('aa' ~~ m:g/a/)
p6eval niecza v4-47-gfffa4cd: OUTPUT«a␤»
moritz rakudo: .say for 'abc'.match(:g, rx/./) 15:02
p6eval rakudo 4bf132: OUTPUT«a␤b␤c␤»
jnthn o/ #perl6
moritz hm
sbp hey jnthn
moritz ah, I remember what the problem was
jaffa4 What was it? 15:03
moritz if m:g// returns a list of matches (like Str.match(:g) does), what's in $/ ?
jaffa4 What is in $/?
What is in $/ usually?
moritz jaffa4: see S05
sbp "The underlying match object is now available via the $/ variable" 15:04
feather.perl6.nl/syn/S05.html
15:04 pernatiy left
jaffa4 is s05 up to date? 15:07
15:10 masak left
miso2217 feather is down, perlcabal.org/syn/S05.html#Quantifi...n_captures 15:10
15:10 yves_ joined
flussence rakudo: say 'abcabcbcba' ~~ m/(a) ** [.*]/ 15:11
p6eval rakudo 4bf132: OUTPUT«abcabcbcba␤»
flussence rakudo: say ('abcabcbcba' ~~ m/(a) ** [.*]/).perl
p6eval rakudo 4bf132: OUTPUT«Match.new(␤ from => 0,␤ orig => "abcabcbcba",␤ to => 10,␤ positional => [␤[␤ Match.new(␤ from => 0,␤ orig => "abcabcbcba",␤ to => 1,␤ ),␤ Match.new(␤ from => 9,␤ orig => "abcabcbcba",␤ to => 10,␤ ),␤ ],␤ ],␤)␤»
flussence hm, only 2 'a' matches 15:12
rakudo: say ('abcabcbcba' ~~ m/(a) ** [<!$0>*]/).perl 15:13
p6eval rakudo 4bf132: OUTPUT«Null PMC access in can()␤ in <anon> at line 1␤ in 'Cool::match' at line 2661:CORE.setting␤ in main program body at line 22:/tmp/3waHMe7Fur␤»
flussence ooh, I broke something
15:15 hercynium joined 15:17 nymacro left
miso2217 flussence: I don't see anything about the possiility to quantify the separator int he ** <separator> form in S05 15:17
bbkr_ std: sub foo(Hash %y) { 1 }; # I think I found STD bug. This is legal definition of hash(because of sigil) of hashes(because of Hash type). In other words Associative[Hash]. But STD returns unrelated error. Can someone confirm? 15:18
p6eval std 4608239: OUTPUT«Potential difficulties:␤ %y is declared but not used at /tmp/cGmEjD1WG2 line 1:␤------> sub foo(Hash ⏏%y) { 1 }; # I think I found STD bug. Th␤ok 00:02 123m␤»
moritz miso2217: <separator> can be any possible rule, in theory
jaffa4 rakudo: "a"~~m:c(0)/ 3 /
p6eval rakudo 4bf132: ( no output )
jaffa4 rakudo: "3"~~m:c(0)/ 3 /
p6eval rakudo 4bf132: ( no output )
moritz bbkr_: not an error, just a warning
bbkr_: read it :-)
jaffa4 rakudo: "3"~~m:c(0)/ 3 /; print $/.perl; 15:19
p6eval rakudo 4bf132: OUTPUT«Match.new(␤ from => 0,␤ orig => "3",␤ to => 1,␤)»
moritz std: my %h # same thing
p6eval std 4608239: OUTPUT«ok 00:01 119m␤»
15:19 alester joined
moritz huh, or not :-) 15:19
jaffa4 rakudo: "3"~~m:c(0)/ 3 /; print $/;
p6eval rakudo 4bf132: OUTPUT«3»
jaffa4 rakudo: "33334"~~m:c(0)/ 3+ /; print $/;
p6eval rakudo 4bf132: OUTPUT«3333»
jaffa4 rakudo: "33334"~~m:c(2)/ 3+ /; print $/;
p6eval rakudo 4bf132: OUTPUT«33»
jaffa4 rakudo: "33334"~~m:pos(2)/ 3+ /; print $/; 15:21
p6eval rakudo 4bf132: OUTPUT«33»
jaffa4 rakudo: "33334"~~ms:pos(2)/ 3+ /; print $/; 15:22
p6eval rakudo 4bf132: ( no output )
jaffa4 rakudo: " 3333 4"~~ms:pos(0)/ 3+ /; print $/;
p6eval rakudo 4bf132: OUTPUT« 3333 »
jaffa4 rakudo: "3333 4"~~ms:pos(0)/ 3+ /; print $/;
p6eval rakudo 4bf132: OUTPUT«3333 »
15:26 flatwhatson left 15:37 woosley left 15:52 ymasory_ joined 15:53 ymasory left, ymasory_ is now known as ymasory 15:56 pernatiy joined 15:59 s1n left 16:00 risou joined
miso2217 moritz: what do you think about this new attempt on a real life example for Backtracking: 16:04
moritz: my regex word4 { <[a..z']>+ }; my regex after_can { (<&word4>) \W+ <?{ $0 eq 'can' }> <&word4> }; .say for "can this can't that.".match(:g, rx/ ( <&after_can> ) /);
moritz: my token word4 { <[a..z']>+ }; my regex after_can { (<&word4>) \W+ <?{ $0 eq 'can' }> <&word4> }; .say for "can this can't that.".match(:g, rx/ ( <&after_can> ) /);
16:11 felher left, birdwindupbird left 16:12 felher joined 16:13 mberends joined 16:21 birdwindupbird joined
mberends wow, the backlog and links about Design Patterns yesterday gave me several hours of interesting reading after $work :) 16:23
16:23 mtk left
mberends especially thought provoking is Greenspun's Tenth Rule: Any sufficiently complicated C or Fortran program contains an ad hoc informally-specified bug-ridden slow implementation of half of Common Lisp. ;) 16:26
birdwindupbird mberends: What links?
phenny birdwindupbird: 09 Apr 18:19Z <tadzik> tell birdwindupbird if you look closely, you notice that the tests pass. The above message is just a side effect of checking the behaviour of a doomed to fail situation, and is completely ok
16:27 cdarroch joined, cdarroch left, cdarroch joined
mberends birdwindupbird: www.codinghorror.com/blog/2005/06/a...volve.html www.paulgraham.com/icad.html etc 16:27
birdwindupbird mberends: Thanks 16:28
mberends birdwindupbird: and #perl6 discussion starting at irclog.perlgeek.de/perl6/2011-04-11#i_3478803 16:29
16:30 mtk joined 16:31 MayDaniel joined 16:33 daxim left
birdwindupbird mberends: Thanks a lot 16:40
mberends birdwindupbird: what other languages do you use? 16:41
birdwindupbird you mean programming lang or natural? 16:42
s/lang/langs/
mberends heh, programming first, maybe human after that (thought about that after I'd pressed Enter ;) 16:43
16:46 pmurias left 16:47 risou_ joined
birdwindupbird mberends: primarily c++, javascript, a little bit interested in perl5, now deeply looking into p6. afterword i am more interested in software design, OOP and OOD, design patterns, multi-threading, distributed computing and may be other good stuff and software technologies. 16:48
16:48 birdwindupbird left
[Coke] wants to learn a human language. Sucks being stuck here in suburban USA. 16:48
*another 16:49
16:49 risou left
mberends for me it's Perl, (C|C++|Java|C#), JavaScript, SQL, *cough*Basic 16:49
moritz [Coke]: you were too fast. I was about to suggest "English" :-)
huf how about an inhuman language?
something banned by the geneva convention
PerlJam huf: I've always wanted to learn dolphin.
huf: although cricket might be useful to me where I currently live. 16:50
huf :)))
mberends lolspeak is pretty useful on some IRC channels
huf cricket is what ricket became when brits started to get enough vitamins
mberends English is not rated very highly when it comes to qualities of a language, but like the x86 instruction set that doesn't matter. As Stalin is supposed to have said, quantity has a quality all of its own. 16:53
16:53 araujo left
tadzik mberends! \o/ 16:54
huf mberends: i only know two and a half languages but i've always liked english
it's got it where it counts
mberends ahoj tadzik!
moritz
.oO( English has it's quirks :-)
16:55
huf like any of them :)
PerlJam galactic standard is likely to be closer to spanish than english though ;) 16:56
huf nah, it's bound to be something very very unexpected
PerlJam chinese? 16:57
moritz Quechua
huf no, something that's very small now
but will expand to trillions of speakers in the future
PerlJam huf: that weird clicking language they use in africa/
huf etruscan oslt ;)
moritz PerlJam: Swahili?
huf someone will rediscover it and then it'll spread all over
moritz: i think he means the one the bushmen speak in that movie (maybe?) 16:58
16:58 alester left, araujo joined, araujo left, araujo joined
moritz might not know "that movie", depending on which you mean :-) 16:59
huf "animals are beautiful people" or "gods must be crazy"
i think. i saw them with hungarian titles and narration and it was a long time ago
mberends oh, hungarian, that must be it ;) 17:00
PerlJam Perl will have morphed into a "natural language" a million years from now.
huf nah, we'll never spread our language. we'll be the chosen people when the antichrist brings total war
our country will stay above the waves like a second ararat 17:01
(or so some looney claimed in a viral youtube video a few years back)
17:01 snearch joined
huf PerlJam: now that's a good idea! 17:01
mberends those films were made by Jamie Uys in the 1970's and 80's en.wikipedia.org/wiki/Jamie_Uys 17:02
17:02 alester joined, dakkar left
PerlJam And in an even odder twist, peace and prosperity will come with a Perlian mantra stolen from a 20th century movie: "be excellent to each other" 17:02
huf duuuuuude 17:03
17:03 hanekomu left 17:05 MayDaniel left
jaffa4 rakudo : my @d=1; print "1"~~/@d/; 17:06
rakudo: my @d=1; print "1"~~/@d/;
p6eval rakudo 4bf132: OUTPUT«1»
jaffa4 rakudo: my @d=2; print "1"~~/@d/;
p6eval rakudo 4bf132: ( no output )
jaffa4 rakudo: my @d=1,2; print "1"~~/@d/; 17:08
p6eval rakudo 4bf132: ( no output )
jaffa4 should that work?
rakudo: my @d=<1 2>; print "1"~~/@d/; 17:10
p6eval rakudo 4bf132: ( no output )
mberends rakudo: my @d=1,2; print ("1"~~/@d/).perl; # if that helps
p6eval rakudo 4bf132: OUTPUT«Match.new(␤ from => 1,␤ orig => "1",␤ to => -3,␤)»
jaffa4 rakudo: my @d=1,2; print ("1"~~/@d/); 17:11
p6eval rakudo 4bf132: ( no output )
jaffa4 rakudo: my @d=1,2; print ("1"~~/@d/.perl);
p6eval rakudo 4bf132: OUTPUT«Bool::False»
mberends it seems to return something, but stringifying that for the print returns nothing
17:12 isBEKaml joined
jaffa4 It does not work 17:12
17:14 TimToady left 17:15 araujo left 17:17 impious joined, impious left
moritz rakudo: my @d=1,2; print ("1"~~/@d/).perl 17:17
p6eval rakudo 4bf132: OUTPUT«Match.new(␤ from => 1,␤ orig => "1",␤ to => -3,␤)»
moritz precedence
oh, I see that mberends++ already wrote that 17:18
jaffa4 to 17:19
is -3. It does not seem to be correct. 17:20
flussence why are we using numeric failure values in a language with a type system? :)
mberends the -3 even looks like an uninitialized varaible
flussence mberends: I'm pretty sure it's initialised somewhere, it's always -3 from what I've seen. 17:21
mberends "always -3" :)
flussence well, when it's not a valid value
17:22 hanekomu joined, araujo joined, araujo left, araujo joined
flussence makes me wonder if it's some low-level enum somewhere. 17:22
17:23 TimToady joined 17:25 Axius joined 17:27 pernatiy left
moritz jaffa4: .from and .orig of a failed match are pretty meaningless 17:35
jaffa4 that match should not have failed 17:36
OR should it?
17:36 noganex_ joined 17:37 mkramer joined 17:38 snearch left, hanekomu left 17:40 noganex left 17:46 risou joined 17:49 risou_ left 17:54 fhelmberger left 17:55 noganex joined 17:58 noganex_ left 18:00 mkramer left 18:04 BlueT_ joined, BlueT_ left
colomon #phasers in 52 minutes? 18:08
moritz oh right, there's #phasers
I should pre-report
18:13 masak joined
masak oh hai, zebras. 18:13
tadzik hai
18:16 Chillance joined 18:22 Axius left
masak mberends: I find English is rated not-very-highly by people with an agenda. I say this as someone who has spent a lot of time with IAL idealists. the more idealist, the higher the disregard for English, generally. 18:24
18:25 devendra joined
[Coke] IAL? 18:27
masak International Auxiliary Language
Esperanto, among others.
[Coke] jIyajbe' 18:29
masak if English is as unusable as these people claim, how come it's increasingly ubiquitous?
it's like they think they can topple the language by pointing out its obvious flaws.
mberends masak: I do not consciously have a linguistic agenda. My partial grasp of French, Latin and German convince me that English and Dutch are have too many ugly awkward bits. English is popular for the same reason that Microsoft Office is popular.. 18:30
masak mberends: I've yet to find a working spoken langauge without ugly bits.
mberends: the world is a messy place. languages tend to inherit that. 18:31
mberends masak: :-) 18:32
masak I find English, like Windows, gets much of the flak *because* it's used for so many things, including some things it was never very good at.
mberends aye, it's the least worst option in many cases 18:33
masak that said, I would definitely recommend to [Coke] and anyone else to try on a different language. it opens up new vistas in the brain. 18:34
mberends literally. multilingualism is associated with mental development in children. 18:35
18:36 azalyn left
masak naturallement. 18:37
PerlJam especially if the language is radically different from your own in some way. 18:38
arabic - written RTL insteadof LTR
chinese - tone matters more than usual in english when speaking :) 18:39
masak well yes. tone is part of the word, not the sentence. :)
I'm still amazed how Chinese people manage to put in both tones for the words and a sentence melody. 18:40
moritz or doesn't have tenses, or doesn't have cases, or doesn't have .... you name it :-)
masak and the waterbed theory definitely holds there.
you can count on, if a language doesn't have tenses, it has something else instead. 18:41
case endings are often interchangeable with prepositions.
PerlJam As a westerner, I have trouble unstanding (in a big-picture sort of way) many eastern languages. The cadences are all wrong, the intonation is weird, etc. 18:42
masak PerlJam: my Russian teacher told me of how she got a lot of angry looks in the subway asking "is this your stop?". turns out she hadn't mastered the melody and what she said sounded like a statement, not a question. 18:43
PerlJam Japanese makes some sense but only after it had been explained to me by a spanish-speaking person who related it through spanish sounds. (I don't really understand much spanich, but it's a language I have some handle on :) 18:45
er, spanish even
masak Japanese phonology has many of the qualities of a minimalist auxiliary language. :) 18:49
18:57 devendra left 18:58 devendra joined
Util moritz: thanks 18:59
19:04 noganex_ joined
[Coke] masak: I have exposure to, in roughly decreasing order of ability, english, spanish, german, latin, japanese, and bulgarian. There's just no one to practice with, so I get bored (and then stale) 19:04
19:06 noganex left
masak oh, I can relate to that. 19:09
[Coke] Hurm. my neighbor is Polish. Perhaps I can learn from her. 19:14
tadzik oh, a fellow Pole :)
19:15 _jaldhar left
[Coke] "hey, do you know her?" 19:15
tadzik I don't think so :)
PerlJam That kind of thing does happen from time to time 19:16
[Coke] Czy jestem aresztowany? 19:17
(the sort of useful thing you can find on wikitravel!)
tadzik Masz prawo do telefonu :)
[Coke] listens to the spoken version of that on google translate and his ears go blind. 19:21
apparently that will require some study
19:22 molaf joined 19:23 molaf left 19:33 devendra left 19:34 devendra joined 19:39 devendra left 19:41 eternaleye_ is now known as eternaleye 19:44 am0c left 19:45 eternaleye is now known as eternaleye_, devendra joined
masak phenny: "Czy jestem aresztowany? -- Masz prawo do telefonu :)"? 19:45
phenny masak: "Am I under arrest? - You have a right to your phone:)" (pl to en, translate.google.com)
masak guessed right :)
19:49 pernatiy joined 20:09 [particle]1 joined 20:11 [particle] left 20:13 bluescreen10 left, [particle]1 is now known as [particle] 20:21 Rotwang joined
masak good night, #perl6. 20:26
20:27 masak left 20:29 stkowski joined 20:35 kaare_ left 20:36 jaffa4 left 20:47 risou_ joined 20:50 risou left 21:01 MayDaniel joined 21:03 justatheory left 21:05 justatheory joined, sbp left, sbp joined 21:07 rokoteko left, rokoteko joined 21:10 Mowah left 21:19 ymasory left 21:29 alester left 21:33 hercynium left 21:40 silent_h_ joined 21:47 ymasory joined
ashleydev how does the hindly-milner type system play into the design of perl6? 22:02
sbp ashleydev: seen the first paragraph here? 22:05
cpansearch.perl.org/src/AUDREYT/Per...e_meta.pod
frettled googles hindly-milner type system
22:06 Rotwang left 22:09 dorlamm joined
ashleydev sbp are those notes linked still the plan? 22:11
sbp can't help you there, I'm afraid; no idea
these were speculative notes, and they're associated with pugs, which is out of date
that's as much as I know 22:12
TimToady they never were the plan
ashleydev what's the type system plan then? And does it take any nods from the hindly-milner system? 22:13
sbp (*Hindley) 22:15
22:15 icwiener_ left
TimToady generally invents his own theory on the fly 22:16
justatheory generally feeds flies to TimToady
sbp Lemma #1. TimToady creates his own type system on the fly. Proof. P, and The Hairy Ball Theorem via Sperner's Lemma. Therefore Q. QED. Corollary #1. Perl6 is a good flycatcher. 22:18
22:23 saaki left
ashleydev Is there more work to be done on the type system design then? 22:24
22:26 saaki joined 22:28 whiteknight joined 22:33 whiteknight left 22:51 wallberg left 22:53 jevin left 23:00 cognominal_ left 23:04 Tedd1 left 23:05 dorlamm left, cognominal_ joined 23:09 Tedd1 joined, MayDaniel left, cdarroch left, dorlamm joined 23:10 dorlamm left 23:11 flatwhatson joined 23:13 jferrero joined 23:15 Tedd1^ joined 23:16 Tedd1 left 23:20 _jaldhar joined
mberends ashleydev: the reference to Perl 6 in en.wikipedia.org/wiki/Hindley-Milner#algorithm is only speculation. A more believable expectation is 6guts.wordpress.com/2010/09/20/grad...alization/ which is on the Rakudo or 6model roadmap but Not Yet Implemented. 23:44
ashleydev: there is sure to be more work to be done on the design because the implementations are not done yet, and we never freeze any aspect of the design until there is consensus from several implementations. 23:51
Integrating the processor's native types is currently beginning to cross the designers' minds, for example speculating whether to expose the number of bits in a native int came up most recently, and making or accessing native structs is an unsolved problem.
23:53 Chillance left 23:57 araujo left