»ö« 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! | Rakudo Star Released!
Set by diakopter on 6 September 2010.
00:05 ggoebel joined 00:06 jferrero joined 00:09 MayDaniel left 00:10 pythonian4000 is now known as pythonian4000afk 00:12 dnl left 00:14 jferrero left
dukeleto lichtkind: ETOOMANYTHINGS 00:35
lichtkind same here :) 00:36
00:40 Chat7676 joined, Chat7676 is now known as Bella, whiteknight joined 00:41 Bella left 00:42 stkowski_ joined 00:43 stkowski left, stkowski_ is now known as stkowski 00:51 stkowski left 00:57 QinGW joined 01:04 risou joined 01:07 risou_ left 01:26 jhuni joined 01:37 pythonian4000afk is now known as pythonian4000 01:43 pythonian4000 is now known as pythonian4000afk 01:48 pythonian4000afk is now known as pythonian4000, jasonmay left 01:49 jasonmay joined, dukeleto left 01:50 dukeleto joined 01:53 florz left 01:54 jhuni left
lichtkind but im learning to enjoying doing instead of worring about what im missing 01:55
colomon ETOOMANYTHINGS is a way of life here. 02:01
02:12 florz joined, skangas left 02:34 whiteknight left 02:36 rgrau left 02:39 xinming joined 02:42 xinming_ left 02:45 petdance joined 02:52 lichtkind_ joined 02:53 lichtkind left, lichtkind_ is now known as lichtkind, lichtkind left 03:00 obra joined 03:05 risou_ joined 03:08 risou left 03:17 ggoebel left 03:29 patspam joined 03:36 nadim left 03:46 hercynium joined 03:48 Guest66311 left 03:59 cdarroch left 04:05 sftp left 04:08 patspam left 04:13 LoRe left 04:14 hercynium left, LoRe joined 04:15 justatheory left 04:19 cls_bsd left 04:25 meppl joined 04:31 LoRe left 04:39 petdance left 04:44 LoRe joined 05:04 _kaare joined 05:25 flussence_ joined, flussence left 05:35 cls_bsd joined
araujo pastie.org/1257320 05:36
05:37 lue left 05:41 pythonian4000 is now known as pythonian4000afk
araujo pastie.org/1257327 05:44
:)
05:59 nymacro joined
sorear good * #perl6 06:00
06:01 nadim joined 06:04 envi left, dnl joined
dnl moinsen 06:05
06:07 satyavvd joined 06:08 envi joined 06:22 lue joined 06:23 wtw joined 06:30 lue left 06:48 pythonian4000afk is now known as pythonian4000 06:56 Bzek joined 07:00 lue joined 07:01 baux joined, baux left 07:05 risou_ left, risou joined 07:06 lue left 07:09 baux joined 07:16 nymacro left 07:22 lue joined
jnthn morning, #perl6 07:24
sorear hello jnthn 07:27
(I have a few millituits if you need them)
jnthn I think I need a few mililakes of coffee... :-) 07:28
sorear Which lake?
How many km^3 are there in an ISO Standard Lake?? 07:29
jnthn Lake Biakal. ;-)
gah,
Baikal
07:38 kensanata joined 07:39 lue left 07:40 jfried joined 07:48 s1n left
sorear I drink by the attolake then 07:51
07:55 lue joined 07:58 dnl left, dnl joined 08:00 cosimo left 08:01 dnl left, dnl joined 08:03 satyavvd left
jnthn Heh. So it turns out Baikal's volume is around 23615.39 kilometers cubed. A few millilakes would thus see me drinking around 70 kilometers cubed of coffee. A typical cup of coffee is, say, 0.25 liters. This occupies about 1/4000th of a cubic meter. In the unlikely event I did the maths right, I'm set to drink 280 billion cups of coffee. That's a little much even for me. 08:06
08:09 lue left
sorear You only did the math right if your typical cup of coffee is 250 liters 08:11
sorear is in the one country in the world that uses fl. oz. *raage* 08:12
don't want to talk any perl 6?
jnthn oh, crap :-)
Well, I may have just about drunk enough coffee to do Perl 6 now... :-) 08:13
I'm meant to be focusing on $dayjob though ;-)
Did you see the new multi-dispatch spec? It seems...saner.
sorear yes 08:14
it basically exactly matches how I was planning to *implement* multi-dispatch 08:15
jnthn Nice :-)
I don't think that I like the "instance = curried proto" implementation approach. Still trying to work out exactly what it's an instance of in a sense. 08:16
sorear I have very little hacking or IRC time this week, I'll very likely have a null report for #phasers
jnthn Plan to try it this weekend.
sorear it's not a currying of the proto
it's a partial evaluation of the proto
jnthn Well, in one place the spec seems to hint that this could be a way to do it.
It's one I've pondered in the past, but don't really like. 08:17
sorear the compiler (or role composer) can see all of the candidates, and builds a scope-specific dispatch tree
note, in particular, that CORE::<&infix<+>> has a fixed set of candidates, so instead of having to partially evaluate a proto, I can just use a hand-written dispatch tree in low-level code 08:19
ie basically what Perl 5 does, and just as fast
08:19 cosimo joined
jnthn Aye, the proto there would almost certainly just have { * } as a body. 08:20
I wonder if CORE immutability means we can rely on wrapping of things declared in CORE to be forbidden.
sorear it's forbidden to wrap any sub in a compilation unit after that compilation unit has run its CHECK 08:21
jnthn ? 08:22
I think .wrap is rather more dynamic than that.
sorear my interpretation of S06:2784 and similar clauses is that AOP cannot cross compilation unit boundaries 08:24
in user code, there is only one compilation unit; it contains all modules and ends right before MAIN
08:25 Trashlord left
sorear but we're free to make the setting a separate compilation unit 08:25
the compiler in any event must be a separate compilation unit
08:25 rgrau joined
sorear (some remarks of TimToady's lead to the conclusion that the compiler is in a separate AppDomain with its own CORE:: and GLOBAL::, which I'm probably going to do since metacircularity is confusing) 08:26
08:26 QinGW left
jnthn Hmm. That doesn't quite mesh with the level I'd been considering a "compilation unit" as. 08:29
08:29 lue joined
sorear the biggest question facing me right now is whether Niecza should be written in Perl 6, versus (say) C# 08:32
pro: the entire compiler is as portable between VMs as the backend
con: the compiler is a bit slower
con: compiling the compiler is MUCH slower
the Niecza compiler is about 12,000 lines of Perl 5 atm. if I rewrote that in Perl 6, and made Niecza 10 times faster than it is now, I'd still have a 2 minute turnaround 08:33
the Perl 5 compiler gives me a 10 second turnaround, and C# is about as fast
jnthn We pretty much have the same pros and cons in Rakudo at the moment. 08:38
The portability is nice BUT it makes development slower. 08:39
08:40 lue left
jnthn (Plus, there's no actual portable implementation yet.) 08:45
08:45 MayDaniel joined 08:46 mavrc joined 08:47 lue joined
sorear I'm hoping to fix that soon 08:53
jnthn Me too ;-)
sorear kid51 has drafted me onto the Lorito team
jnthn Ooh. :-)
*That's* nice to hear. :-)
08:54 colbseton` joined
sorear it means that instead of just whining about Parrot low-level architecture idiocy, now I can do something about it. maybe. 08:54
sorear wonders how wrapping a method will work, esp. wrt. nextsame; 08:55
09:02 flussence_ is now known as flussence 09:03 Axius joined 09:05 lue left 09:08 qwebirc31167 joined 09:15 masak joined
masak oh hai, #perl6! 09:15
09:16 vx64z joined
jnthn lolitsmasak! 09:16
09:16 lue joined
masak \o/ 09:16
sorear hi masak 09:20
09:21 Axius left 09:28 cjk101010 left, lue left, cjk101010 joined
sorear out 09:29
09:36 colbseton` left, colbseton` joined 09:37 _kaare left
masak lunch & 09:41
09:42 ggoebel joined 09:56 lue joined 10:01 lue left 10:05 uniejo joined 10:07 risou_ joined 10:08 ggoebel left 10:09 risou left 10:11 Dunearhp left 10:12 uniejo left 10:14 tadzik joined
tadzik o/ 10:15
10:15 lue joined 10:26 MayDaniel left 10:30 tadzik left 10:32 tadzik joined, lue left 10:35 PerlJam left 10:38 jhuni joined 10:39 PerlJam joined, MayDaniel joined 10:40 lue joined, pythonian4000 is now known as pythonian4000afk
colomon sorear++ 10:41
sjohnson colomon += 2; 10:47
10:48 hanekomu_ joined
jnthn Mmm...lunch :-) 10:48
sjohnson yo 10:49
bed time for me
jnthn Sweet dreams 10:54
10:56 oyse joined
sjohnson :) 10:56
sjohnson dreams of perl 6
10:56 kanishka left 10:59 icwiener joined 11:01 lue left 11:06 lue joined 11:09 smash joined
smash hello everyone 11:09
11:10 lue left
tadzik hi smash 11:10
11:11 ggoebel joined
araujo pastie.org/1257367 11:15
11:17 tadzik1 joined, ggoebel left
masak new day, new syntax :) 11:17
tadzik1 what syntax?> 11:18
masak araujo's programming language project. 11:19
11:20 tadzik left
tadzik1 ...at last 11:20
11:20 tadzik1 is now known as tadzik
araujo masak, I kind of considered the 'if' conditionals without parens better :D 11:20
masak I noticed. :)
araujo and came up with some code today :P
masak it's still more confusing than helpful to me that there is no 'elsif'-like thingie.
even if it's not necessary from a syntactic viewpoint, it helps remind the reader of what's happening. 11:21
11:21 toebu left
masak <TimToady> maybe ??? warns on composing, !!! fails, and ... just tries to work 11:21
I think that should be in the spec, at least conjecturally. 11:22
anyone mind if I add it?
jnthn masak: +1 11:23
It still feels fine to me the morning after. 11:24
Well, day after. :-)
masak that's a good sign. :)
masak refrains from pulling horrible puns from the "you think it's cute today" direction
frettled Are we talking about kittens? 11:25
masak yeah. kittens. yep.
jnthn Kittens are cute every day. 11:26
masak goes looking in S12 and S14 for a nice place to put the above
jnthn S14
I'd expect.
11:27 pnu left
araujo masak, you have 'labels' 11:27
masak having looked through S12, I'd agree.
araujo so they are not keywords, but that ... labels, you can do: 11:28
if = 1 2 then: { .... } else: { }
in the same way 11:29
if = 1 2 then: { .... } elif: = a + b c { ... } else: { }
11:30 pnu joined 11:31 hanekomu_ left
masak how many times in one scope can I use the 'elif:' label? 11:32
araujo masak, all you want 11:34
masak huh.
araujo they are like comments
masak how does one invoke a literal block in koan?
araujo with '^'
masak ah, right. 11:35
well, it's up to you to make 'elif' and 'else' optional like that. it's your language. :)
(let f \{ :n * n n } { f }) -- isn't that missing a '|' after ':n'? 11:36
araujo | is optional too 11:37
:D
masak I see.
actually, even with the 'let' syntax, I'd throw in a '=' between the definiend and the definition, just for good measure.
araujo for small one liners, i think it can be omitted
masak then why have it at all?
araujo well, when you have bigger functions, and several arguments, i think it can make code readable 11:38
it is up to you at the end :P
masak yes, but it's up to you at the beginning :)
araujo There Is No Way To Do It But The Way You Choose To Do It = TINWATDITBTWYCTDI 11:39
11:39 lue joined
araujo :D 11:39
masak I'm having difficulty deciding whether that's sagely advice, or somehow even more strict than Python's line.
araujo hehe 11:40
probably neither
hence why a koan
:P
masak :) 11:41
11:47 leprevost joined
masak [backlog] millilakes. *chuckle* 11:54
takadonet morning all 11:55
masak takadonet: \o
takadonet masak: how are u?
masak I'm fine. and u? 11:56
takadonet busy!!
An open book exam for a new position here, giving a perl 6 talk to our lab and wife coming home tomorrow!
masak Perl 6 talk to your lab. nice! 11:57
11:58 lue left
jnthn Turns out that a few people at the (C#) place I'm currently consulting have been watching the video of my Oslo Perl 6 talk. :-) 11:58
Seems to have made a good impression. :-) 11:59
takadonet well if this goes well, it will increase my chances to use perl6 in my work
when speed is increased :(. Trying to parse out a few GBytes text files with perl6 would be.......... slow 12:00
I already tried
12:01 wamba joined 12:02 leprevost left
flussence p6 grammars would probably be faster for me, 99% of my work is figuring out how to parse nasty, undocumented text output formats :( 12:02
12:02 leprevost joined
takadonet flussence: funny i'm the opposite most of the time 12:03
12:06 lumi_ joined 12:07 lumi_ left 12:08 risou joined 12:10 risou_ left
takadonet masak: When did Pugs start again? 2004? 12:14
masak Feb 2005. 12:15
takadonet thanks
and ended 'active' development in?
masak I'd say summer of 2007, but it was slow-ish already some time before that. 12:16
12:16 drbean left
masak see strangelyconsistent.org/blog/happy-...ary-perl-6 12:16
12:17 lue joined 12:18 wamba left, wamba joined 12:25 cjk101010 left 12:26 tadzik left 12:29 lue left 12:32 tadzik joined 12:47 molaf joined 12:48 lue joined
flussence What does Duration do, exactly? Is it just a stricter number type? 12:51
masak Duration is a Real type, so in that sense it's a number. but it can do arithmetic on Instants, which general Reals can't. 12:52
flussence oh, so in that sense it's a lot like the interval type in postgresql... 12:53
makes sense
masak I don't know about the interval type in postgresql. maybe if you have a source... 12:55
flussence yep, one sec... 12:56
masak anyway, a Duration is just a time length in atomic seconds.
it's not a range of two Instants or anything like that.
flussence www.postgresql.org/docs/9.0/static/...etime.html 12:57
in pg it's basically just a strict type, but it also lets you specify the duration as hours/minutes/etc.
masak there's a special value called... "allballs"? o.O 12:58
flussence SQL is weird.
masak I'm speechless. 12:59
flussence they don't make it easy to get unixy numeric representations out of their date formats either... :( 13:00
masak hard to tell whether postgresql's 'interval' type is atomic or not. it seems quite tied to years and months, so maybe not.
flussence I think that's just the format of its input/output strings, the storage size gives a bit of a hint that it works like a normal date value. 13:01
masak ...whatever that means. 13:02
13:02 miso_soup joined
flussence actually, from the date range given, it looks like it's stored as floating point... 13:02
eww, I never read the docs for this in detail before. 13:04
okay I think I cleared up my confusion; Duration is like the interval type, but not insane. 13:07
13:08 timbunce joined, risou left 13:09 plainhao joined
takadonet how many tests are they in the Perl 6 official test suite at the moment? 13:09
flussence about 27000, last I checked...
smolder.parrot.org/app/projects/smoke_reports/5 13:10
there's a few numbers to go on
that includes the non-official tests though
oyse What are the best resources for Rakudo internals? 13:16
masak oyse: github.com/rakudo/rakudo/blob/maste...cture.html 13:17
takadonet flussence: thanks
13:20 lue left
oyse masak: what about the runtime architecture? Internal objects created during execution etc. 13:21
13:21 Patterner left 13:22 ggoebel joined
masak sounds like what you're describing is the Parrot runtime. 13:24
I don't know off-hand where one'd find architecture documentation for that.
somewhere under docs.parrot.org/parrot/latest/html/ , I guess.
oyse masak: Yes it is probably close to the parrot runtime architecture, but I am guessing that Rakudo builds something on top of that? 13:25
e.g. what happens when "my $num = 1" is executed. How is the $num variable stored internally?
masak oyse: gist.github.com/653552 13:27
jnthn The lexpad it's stored in is provided by Parrot. Pretty much all operators - = included - just mean a multi-dispatch.
masak se especially lines 72 to 75.
s/se/see/
oyse Ah, I can get the PIR?! Sweet! Thanks 13:28
jnthn So it looks up the container stored under $num, creates an Int and then calls infix:<=> with them.
But yes, the PIR reveals all. Note that my declarations also result in something near the top of the sub.
PerlJam Perl being so english-like sure does make the use-mention problem more pronounced. :) 13:30
jnthn I need to start quoting when I'm being unmeta. :-) 13:31
13:32 Psyche^ joined, Psyche^ is now known as Patterner
oyse So if I understand correctly all the different Perl6 types are implemented as PMCs? 13:35
PerlJam oyse: in Rakudo, yes. Mostly. 13:36
oyse Mostly?
jnthn Well, that's not really the case
A few low-level bits are 13:37
Most things are instances of the P6opaque PMC, which subclasses Parrot's Object PMC
Though that'll all change in the not too distant future.
masak \o/ 13:40
takadonet when did Rakudo started? 13:43
takadonet looks at masak
masak takadonet: see strangelyconsistent.org/blog/happy-...ary-perl-6 13:44
takadonet masak: sorry :(
masak grep for "Rakudo".
don't be sorry; it's not that I don't want to tell you -- it's just that I said it well there. :) 13:45
13:46 BaBiE_AriN joined
BaBiE_AriN hi.. 13:47
takadonet BaBiE_AriN: hey 13:48
masak hi there
13:50 BaBiE_AriN left 13:53 _twitch joined 13:56 wtw left 14:03 lue joined 14:04 jaldhar left 14:06 moritz_malle joined
moritz_malle oh hai from mallorca 14:07
masak moritz_malle! \o/
oh, *that's* where you are!
flussence yay
smash moritz_malle: hi
moritz_malle internet price: 1 euro for 12 minutes 14:08
masak scandal!
moritz_malle won´t chek mails, otherwise he´ll feel obliged to answer any :-)
smash 120 euros/day !
masak we'd better give you your money's worth, then :)
moritz_malle expects great entertainment :-) 14:09
my wife too
what´s new in #perl6 land?
PerlJam moritz_malle: Some good challenges would be porting specific Perl 5 modules to Perl 6. 14:10
jnthn o/ moritz_malle 14:11
moritz_malle perljam: feel free to propose some - they are not limited to my blog
perljam: or collect ideas in a repo somewhere 14:12
jnthn moritz_malle: Hope you're enjoying Mallorca :-)
moritz_malle jnthn: I am, we are :-)
very good food in rough masses
14:12 icwiener left
moritz_malle fresh fruits with every meal 14:12
2 minutes left...
masak quick! amuse moritz_malle! 14:13
moritz_malle well, the beach and a good book will do that in a few minutes anyway 14:14
jnthn Can't beach about that.
</awful_pun>
masak :P
moritz_malle so far I´ve read 3 books from cover to cover, each at least with 400 pages
yay, jnthn has authenticated himself :-) 14:15
now I know that I didn´t chat with an imposter
bye bye, I´ll be back late sunday night
masak moritz_malle: enjoy! hope you come back refreshed and happy from your travels!
smash moritz_malle: have fun
14:20 moritz_malle left 14:23 lue left 14:25 Chillance joined 14:27 skangas joined, miso_soup left 14:35 colbseton` left 14:36 colbseton` joined, rgrau_ joined 14:38 pyrimidine joined 14:40 silug left, icwiener joined 14:45 lue joined
jnthn decommute & 14:57
14:57 jfried left 15:00 oyse left
pmichaud good morning, #perl6 15:01
15:01 colbseton` left, colbseton` joined
masak mroing, pmichaud. 15:02
smash pmichaud: mornin' 15:04
15:05 kcwu left 15:09 dual left 15:17 kcwu joined
masak www.twit.tv/floss140 # merlyn++'s interview with pmichaud++ 15:18
and lol, I blogged: strangelyconsistent.org/blog/second...done-wrong 15:19
longish post. for the tl;dr crowd: most things in the spec are great, but some -- not so much. 15:20
tadzik is there a way to download a video? 15:27
masak I believe it's a radio show. 15:28
or a podcast, really.
flussence masak: I agree with that qw-numbers thing, that's what ».Num is for! 15:30
or commas, even.
masak aye.
it addresses a real problem, but the solution is potentially so much more painful than the original problem.
flussence seems to me the benefit gained isn't really enough to justify the hidden magic going on there/ 15:31
s|/|.
masak I don't want those hybrid types screwing up a completely innocent program a few years down the line. I want simplicity. I want a list of strings.
15:32 Ross joined, Ross left, Ross joined 15:33 Trashlord joined
flussence that reminds me, I actually had a reason to use the p5 "0 but true" string once... in javascript. 15:37
it was someone else's code defaulting to 1 if the input was false... even though 0 was a valid value for whatever it was 15:38
masak Perl 6 turns that hack into a built-in feature. :) (runtime traits) 15:39
15:40 mberends joined
flussence yep, I noticed "0 but Bool::True" is valid code now while I was typing that 15:40
in that context the choice of "but" makes a whole lot more sense
(I didn't get it before :) 15:41
15:42 Limbic_Region joined, justatheory joined 15:45 tzhs joined 15:48 \xF0 left 15:49 jhuni left 15:50 \xF0 joined
colomon masak++ 15:50
jnthn morning, pmichaud 15:55
masak: tl;dr :P
jnthn puts it in a tab to read later on :)
masak :)
15:59 sftp joined
masak sftp: hi. I'm told you're preferable to normal ftp. 16:07
you probably get that a lot.
sftp masak -> yeah, it's true 16:09
masak :)
16:15 dual joined 16:16 cdarroch joined, cdarroch left, cdarroch joined 16:17 _twitch left 16:21 packetknife joined 16:22 packetknife left, stkowski joined, packetknife joined, packetknife left, packetknife joined 16:23 packetknife left 16:30 Ross left 16:31 baux left 16:33 lamstyle left 16:35 lamstyle joined 16:36 cosimo left 16:37 cosimo joined 16:40 dnl left, kjeldahl joined, kensanata left 16:41 cogno joined 16:42 kjeldahl left 16:43 kjeldahl joined 16:45 tzhs left 16:46 Ross joined, Ross left, Ross joined 16:47 lamstyle left
masak nom & 16:48
16:48 masak left 16:49 lamstyle joined 16:50 Gothmog_ left 16:53 icwiener_ joined 16:54 nadim left 16:55 icwiener left 16:57 lamstyle left 16:58 lamstyle joined, tadzik left 17:01 tadzik joined 17:02 dnl joined 17:06 nadim joined 17:11 cogno left 17:14 Limbic_Region left 17:21 timbunce left 17:23 tadzik left, tadzik joined 17:24 cogno joined 17:26 patspam joined 17:28 timbunce joined
x3nU well, i have bought recently editplus and i'm finishing syntax definition for perl6 and autocompletion 17:30
nothing advanced
though
17:33 cogno left 17:39 Ross left 17:40 Ross joined, patspam left 17:42 patspam joined, patspam left 17:43 patspam joined 17:50 wamba left 17:58 smash left 17:59 Ross left, jferrero joined
colomon wishes p6 were fast enough to use for this afternoon's $work project 18:04
[particle] use more p6's. 18:07
diakopter heh 18:08
18:08 zb left
colomon rakudo is just not up to parsing 50meg files yet. 18:08
Tene Yeah, just fork and run on all your cores... oh wait... 18:09
;)
18:09 constant left 18:14 zb joined
colomon is comb available for p5? 18:21
Tene colomon: my @items = $foo =~ m/(needle)/g 18:25
colomon Tene++
18:31 _kaare joined
_kaare Hm, again. Wouldn't it be a good thing at least to mention rakudo releases on blogs that are picked up by feeds? 18:32
18:32 tadzik left 18:33 patrickas joined 18:34 tadzik joined
takadonet colomon: Funny reverse of roles..... Asking for p6 functions in p5..... 18:35
colomon well, my inner perler now speaks p6, so when circumstances force me to go p5, I need translation... 18:36
flussence it seems like they're slowly ending up there anyway :)
dukeleto If you are interested in mentoring for Google Code-In, please add tasks to this wiki: trac.parrot.org/parrot/wiki/GoogleC...n2010Tasks 18:39
18:42 icwiener_ left 18:45 colbseton` left 18:46 hatsefla1s is now known as hatseflats
TimToady you have to be careful with m/()/g though, since nested parens will return extra fields 18:55
19:04 patrickas left 19:06 orafu left 19:07 leprevost left, orafu joined 19:08 patrickas joined 19:13 cognominal left 19:29 qwebirc31167 left 19:31 Chat1901 joined
Chat1901 hi 19:31
patrickas hi Chat1901 19:32
sbp welcome to #perl6, the channel about en.wikipedia.org/wiki/Perl_6
Chat1901 add me on bbm 226f9390
hi patrickas 19:34
patrickas sorry no bbm!
19:34 Chat1901 left 19:48 patspam left 19:55 patspam joined 19:56 masak joined
masak ahojte, #perl6! 19:56
jnthn o/ masak
colomon \o 19:58
dalek odel: c8d35ab | jnthn++ | dotnet/runtime/Runtime/Ops.cs:
[dotnet] Make the repr_defined op return an object, so we can actually, like, use it from the setting.
odel: ac08da5 | jnthn++ | common/NQP/NQPSetting.pm:
[common] Add .defined methods to the various built-in types.
19:59 molaf left 20:00 Bzek left
masak 6model hacking, yay! 20:00
jnthn++
20:00 Bzek joined
jnthn :-) 20:01
masak: Nice blog post :-)
masak thank you :)
it's a controlled rant, more or less. 20:02
20:02 cognominal joined
TimToady I find it interesting that you want opposite things in adjacent paragraphs :) 20:02
masak :)
I know. but they're not exact opposites.
jnthn That's inconsis...oh, wait...the blog name.
:-)
masak heh.
TimToady but it does occur to me that the two dwimmeries are really teh same
masak maybe they are. 20:03
TimToady so mostly we just need to name it
as a concept
masak but I really don't like having it per default on <>
TimToady I think it has to be that way
masak I think it'll screw up things as much as it removes an FAQ.
TimToady we've relied on it to disambiguoate <1/12> and such
masak yeah. don't like that either. :/
TimToady the other solutions were worse 20:04
diakopter tries to pronounce guoate
masak at least I don't get the normal warm fuzzies about it.
TimToady I think you're hung up in P5-think with your mental def of <>
frettled diakopter: is it similar to ghoti?
masak diakopter: did I write that? :)
diakopter no, TT did
Tene for number lists, we could have an explicit different form
q:lolnumbers[1 2 3 4 5 6 7 8] 20:05
masak TimToady: I think I'm hung up on tools that do one thing, and do it well.
TimToady no, I think more like qw// is the string form, and qw:dwim is the def of <>
masak ok.
didn't think of it that way before. fair enough.
TimToady and is the same dwim that happens anywhere that strings might be meant as numbers 20:06
including pre-MAIN
masak maybe that is the way to go. 20:07
my defenses are crumbling :)
TimToady it feels like the stuff-everything-into-one-place that we did successfully with smartmatching
jnthn pmichaud: ping 20:08
20:09 tadzik left
masak Python kills off the Python 2.x branch: twitter.com/obra/status/29109607910 20:12
PerlJam smaller impedence mismatch between Python 2.x and 3.x makes that easier to do. 20:13
TimToady which means almost nothing, given py2->3 was just a few tweaks
masak nod.
chromatic finds a rub, though: twitter.com/chromatic_x/status/29116147053 20:14
20:15 meppl left 20:29 am0c joined 20:35 estrabd is now known as estrabd_afk, pyrimidine left
masak TimToady: does %hash<2/3> have the same magic as <2/3> does? 20:48
if not, why not? if it does, how do I get the non-magic form?
20:49 timbunce left
Tene masak: %hash{'2/3'} of course. 20:49
masak duh. of course. :/
Tene++ 20:50
20:50 pythonian4000afk is now known as pythonian4000
TimToady and if it's a string-keyed hash, it'll pull out the original Str form anyway 20:51
masak ah; indeed. 20:52
my arguments are weak and feeble. orz
20:55 perlygatekeeper left, timbunce joined
TimToady I think of it as an endearing quality :) 20:55
masak :P 20:56
Tene masak: I'm also skeptical about this num-producing thing.
masak Tene: are you able to verbalize better than I was why it's a bad idea? 20:57
TimToady the point is, there a places where people are kinda forced to write everything as strings, and these are the places people need relief. 20:59
especially if the alternative is arduous, or requires eval
masak I do agree about the problem as stated. the unease is purely related to the solution. 21:01
specifically, I don't like the hybrid types.
Tene masak: hybrid types suggest hackish smell to me, this reminds me of semipredicate problem 21:02
masak Tene: nod
Tene If you want nums or ints or whatever without commas, either make a different quoting form, or >>.Int or whatever
TimToady in some sense they aren't hybrids: they aren't really Str anymore, they just come with a .Str that is forced back 21:03
21:03 am0c left
TimToady >>.Int does no good at all for <1 2.3 4/3 foo> 21:03
masak rakudo: class StrInt is Str { has $.Str; has $.Int; }; my $a = StrInt.new(:Str("42"), :Int(42)); say $a ~~ Str; say $a.Int.WHAT
p6eval rakudo 479650: OUTPUT«1␤Int()␤»
Tene TimToady: If you want that, we have *commas*
TimToady not on the command line you don't 21:04
and probably not on user input
Tene masak: for the MAIN signature, my inclination is something more like "$x as Int" instead of a constraint
masak Tene: problem is, that doesn't affect dispatch.
so different multis would tie. 21:05
TimToady what masak++ sez
Tene TimToady: what's the connection between user input and <> ?
TimToady the general case I stated above
places where the user is forced to put text, but may mean numbers
21:05 MayDaniel left
masak does that include &prompt? 21:06
TimToady I can argue that one both ways
masak :)
what about $*IN.get?
Tene If you want numbers from text, I expect you should ask for that. 21:07
jnthn pmichaud: akshually unping :-)
TimToady tell that to everyone who expects <1 2 3> to do the "right thing"
masak Tene: I have a counterexample. people reading numbers from $*IN, and sorting them.
TimToady it has happened over and over
sjohnson "perl6, always doing the right thing" 21:08
21:08 Trashlord left
masak question is, how common is the <1 2 foo> case? because if it's not that common, >>.Int would still work. 21:08
or >>.Num
Tene TimToady: so your solution is to make strings that happen to look like numbers behave like numbers?
What if I'm reading in filenames, and the filenames happen to look like numbers? 21:09
masak what if the strings are freaking huge numbers, purely by accident?
colomon or better yet, +«
TimToady that is what the user expects most of the time, and a goodly part of the other times, Cool will save their bacon anyway
Tene suddenly I get different sorting behavior for one directory than another?
masak oh right! what's the sorting behavior of the not-really-hybrid types?
TimToady it's impossible to make everyone happy with sort 21:10
masak right.
Tene you said MMD, though. Are my filenames that I read from stdin going to dispatch to different MMD candidates if they happen to look like numbers? 21:11
dalek odel: 1bb02e7 | jnthn++ | dotnet/runtime/ (2 files):
[dotnet] Start working towards some closure support by adding new_closure and capture_outer ops.
odel: 13a72ce | jnthn++ | dotnet/compiler/PAST2DNSTCompiler.pm:
[dotnet] Compile block references to either capture lexical context or create a closure, based upon $block.closure.
odel: c04f22c | jnthn++ | dotnet/ (2 files):
[dotnet] Fix a silly (used static block object instead of dynamic one always) and get our outer from the set one, and we have sufficiently working closures to pass a (modified to avoid NYI return) 48-closure.t.
masak what if there's one Str candidate and one Num candidate? which way will the special type go? will it tie? 21:12
TimToady no, it would go to the Num candidate
but to answer Tene++'s Q, it's rather unlikely that you'd want to feed filenames to a function that is overloaded like that 21:13
21:13 icwiener joined 21:14 am0c joined
TimToady and I haven't said that $*IN.get should do it 21:14
Tene TimToady: filenames on CLI args, then.
21:15 tadzik joined
tadzik good late-evening 21:16
TimToady if the interface you're calling is overspecific on nominal typing, then you'd have to use ~
but Any.Str should work okay
Tene TimToady: Don't normal Ints and Nums have a .Str method anyway?
Yeah.
So how are these hybrid types different from normal numeric types? 21:17
TimToady shadowed
sjohnson in p6, can one yank something out of an array
TimToady as in splice?
sjohnson without undeffing it, then doing a grep { defined }
yeah
the splice scares me, what with all its arguments
for (@list) { # about 3 steps in, say..... $something = yank; } 21:18
just yanks it out of list
kind of like... a pop in the middle
snap()
crackle || pop()
masak TimToady: another thing that I could have written in the "Abstraction Astronautism" section, but somehow forgot, is the ObjAt thing gotten back from the WHICH macro.
maybe I don't understand it properly, but it seems to me that raises barriers that weren't much needed in the first place (pointer arithmetics?), in exchange for making p6 implementations more complicated.
Tene sjohnson: @a = @a[0..4],@a[6..*]; 21:19
masak sjohnson: &slice
er, &splice 21:20
Tene s/=/:=/
yeah, &splcie is the right way, but if you prefer not to read the docs for it, you can do that ^ 21:21
TimToady gather for @list { .take unless .do-not-want }
sjohnson yeah, TimToady, thats the idea
masak TimToady: isn't that just &grep?
TimToady that is legal P6
masak oh wait, it's index-based.
sjohnson the "yank" idea i think it a good one
think of how many times you are parsing @ARGV with a for, and you are stripping out some --switches 21:22
TimToady yank is just a "don't take" :)
sjohnson true
cause $_ has the data
TimToady and "don't take" is usually spelled "next"
21:23 spq1 left
sjohnson but if i wanted to kill the value from @ARGV list 21:23
if i undef it
the index remains
21:24 _kaare left
sjohnson bad example, ARGV, cause maybe i shouldn't altar it. let's say... @animals 21:24
TimToady you're thinking like an imperative programmer, not like a functional programmer
sjohnson TimToady: if i told my boss that, would he fire me? i dont quite know the difference
i can't tell if it's a compliment or not!
TimToady it's just an observation :)
changing something in place is imperative or procedural 21:25
a functional program will instead return a new list and put it in a new place
sjohnson is there more than one way to do it?
:) 21:26
TimToady sure
sjohnson i realize splice is the answer
but i suppose i kind of mean.. it would be neat if you could call splice without many arguments, or none at all
TimToady splice is the imperative answer :)
sjohnson and have it do what you like
for example, next unless length;
no args!
maybe splice;
would junk the current loop index
TimToady how would it know?
for some_function() { splice; } # huh? 21:27
sjohnson well, if you do... $_ = "pig";
TimToady the actual array it's reading from may be half-way around the globe
sjohnson in there, it will change the @in_array value it's on to pig. is it then difficult to instead just destory the current index? 21:28
TimToady yes, but a rw parameter only has to track the argument itself, it doesn't have to track the outer container
sjohnson i see
maybe in perl 8 :)
TimToady it's one of those situations where making it work would slow down the 99% of loops that don't use it 21:29
sjohnson to get around it, i find myself doing @second_stage type lists
and im kinda thinkin... maybe there's a more cryptic way of doing it
TimToady think of that as the right way to do it, if you name the variable better
sjohnson the @second_stage idea?
sjohnson pats himself on the back
TimToady if you're just going to feed that list to another function, just compose the two functions 21:30
sjohnson using '
'next' technology and the like
TimToady the old .grep.sort.map.grep.classify».foo.grep.map kind of thing, give or take a few block arguments
also saves wear and tear on the sigil keys if you don't have to name your intermediates 21:31
sjohnson ahh 21:32
assembly-line programming paradigm
i think i need to pay you for perl coaching
TimToady just pay it forward please :)
sjohnson i like to do it the TimToady way, which is a bit of a paradox
jasonmay hah 21:33
Juerd loves imperative programming
sjohnson i follow the "Just Do it!" programming model 21:34
Juerd Almost as much as functional programming :D
colomon sjohnson++
TimToady I won't object to objects...
21:34 am0c left
TimToady though, really, .splice is OO 21:34
Juerd An old sysadmin script that cron ran every 10 minutes started taking almost 10 minutes. The solution: do things in place 21:35
TimToady given the array is an object
from the FP view, OO programmers are continually cheating the type system, and often get away with it, until they don't :) 21:36
from the OO view, FP programmers don't know the first thing about how the real world works. :) 21:38
21:38 envi left
sjohnson TimToady: what do you think of this methodology: pastie.org/1258982 21:39
colomon wants his objects' methods as pure as reasonably possible, and his I/O untouched by monads.
sjohnson i just wrote it. is this how you would do something similar? 21:40
(oops, extra whitespace on line 12)
Tene sjohnson: the simple, imperative way to remove list indexes is splice, as we've already said.
TimToady it doesn't work very well as soon as you want your switches to have extra arguments 21:41
Tene sjohnson: you really should use a MAIN sub for that.
TimToady it was p5 21:42
in p5 I tend to shift my @ARGV destructively
Tene sub MAIN(@*pertinent, :$verbose, :$dryrun) { ... }
TimToady but yeah, this is better solved by binding to a MAIN sig in p6
s[ '@*' ] = '*@'; 21:43
Tene Oops, yeah. 21:44
sjohnson TimToady: in this case, im not sure how i could use your grep.map.other stuff tricks
to avoid a 2nd stage @pertinent_arguments list
TimToady well, in this case, you have a good name, which probably means it's worth naming 21:45
sjohnson heh 21:46
glad you liked it
TimToady a name like @second-stage is relatively meaningly
meaningliess*
grr
sjohnson perl advice straight from the camel's mouth!
TimToady m e a n i n g l e s s . . .
sjohnson much appreciateed
TimToady there
sjohnson -e
sbp unmeaningful
Tene or even better, @filenames, or @servers, or @ips, or whatever
TimToady Mu
sjohnson Tene: yep. in the real stuff i do it for, it will be @files or something 21:47
or @isbns
in that example, just was a bit more vague as the program doesn't do anything
masak I'm writing a Perl (5) course. this FP map.grep.map tip comes in handy for the next part of that course as well. thanks.
Tene naming something "arguments" kinda irks me there, unless you're like gathering arguments to pass to a command or something.
TimToady well, if you never put a non-isbn into @isbns, you don't have to grep 'em out
Tene sjohnson: which makes it awkward to actually answer your question. 21:48
sjohnson TimToady: the @isbns would come from @ARGV though
Tene Yes, so you gather them under another name.
sjohnson Tene: you answered it exactly how i hoped
21:49 Trashlord joined
sjohnson i couldn't have bought a better answer 21:49
TimToady Moral: it's best if variable names don't lie.
masak Name Your Variables Well.
sjohnson you can tell a lot about the character of a man by his variable names
TimToady and every time you do a modification in-place, the variable name is lying, or is overly generic
sjohnson if he's trustworthy or not
masak TimToady: that must be why I never know what to name accumulator variables that I increment in a loop. 21:50
Juerd $data 21:51
sjohnson thanks for looking at my cute code you guys
Tene np 21:52
masak anytime.
Juerd masak: And if $data is taken, just use $moredata
masak Juerd: what would I do without you? :)
TimToady the need for accumulator variables probably just means the language designer is an idiot :)
Juerd masak: You'd probably have named it $foo, which is a really silly name and utterly non-descriptive.
masak Juerd: yeah. what would I have been thinking? 21:53
Juerd The name "foo" doesn't say anything about the contents of the variable, while "data" does.
masak absolutely.
"data" is much better than "foo".
Juerd Agreed. I'm glad you brought this up.
TimToady unless you happen to be foo processing
Juerd TimToady: There's no way to be sure 21:54
sbp or your native language is one where foo means data
TimToady Juerd: just read the comments, then you'll know for sure
Juerd I used to call my variables $info, but that turned out to be a lie too.
TimToady metadata should always go into comments
sbp $thisVariableBelongsToEpimenides 21:55
that should probably be a scope
sjohnson i usually use animal words instead of foo and bar
sbp epimenides' $variable = ...;
sjohnson i think their cuter
masak Juerd: I'm thinking of calling some of my variables $value
TimToady
.oO(three animals walk into a foo...)
21:56
Juerd TimToady: There are no comments in my code. Comments are not necessary if code is self-documenting, like for dwim($data) -> $data2 { dwim2($data2); }
sjohnson <cow pig chicken> allows a 3rd variable
though i think "baz" is the 3rd one
Juerd sjohnson: $data, $data2, $data3, $data4 allows for as many as you'd ever need!
sjohnson Juerd++ # the knuth of perl 21:57
Juerd sjohnson: And symbolic references even let you iterate over all your datas
TimToady it's much more convenient for dereferencing if you name the first one $data1
21:57 MayDaniel joined
TimToady so all variables should in with '1' in case you need more of 'em 21:58
Juerd p5: for (1..99999999) { if (${ "data" . ($_ > 1 ? $_ : "") } =~ /regex/) { die "Data contains 'regex'!!!11" } } 21:59
21:59 orafu left
TimToady orz 21:59
sjohnson starcontrol II
masak the channel is just teeming with variable naming advice tonight. 22:00
Tene masak: you've seen rfc3092 yes?
Juerd In very complicated programs, like those with nested loops, I may use identifiers like $data5a, $data5b, ...
Tene .g rfc3092
phenny Tene: www.faqs.org/rfcs/rfc3092.html
masak looks
TimToady $dataa5 is a bit problematical though 22:01
sjohnson nothing beats @asokdfjgrew
Tene First on the standard list of metasyntactic variables used in syntax examples (bar, baz, qux, quux, corge, grault, garply, waldo, fred, plugh, xyzzy, thud)
TimToady that can't be true; waldo was too easy to find
Juerd :)
masak Tene: wonderful. thanks. 22:02
Juerd He wouldn't have been if his name were data
TimToady I only liked the original series.
Juerd Code security remains important
masak Tene: speking seriously for a while, I'm at a stage in my variable-naming where I very seldom end up with "foo". I guess I used to, but nowadays I tend to take naming more seriously than that. I use "foo" in string literals sometimes. 22:03
TimToady especially if followed by a "d"
Juerd I don't think I've ever used "foo" in serious code.
diakopter spews
Tene contributes a spec test change, s/*/foo/g 22:04
Juerd In non-example code, even.
sbp I've got a good example of this, YOU HOLD ON RIGHT THERE
Tene s/test //
flussence I am guilty of using "i" for a loop var :(
lucs i++ 22:05
TimToady sbp: sorry, I tried, but the earth is rotating too fast </pant /pant /pant/
>
flussence (use ii, it's more greppable)
Juerd flussence: Doesn't everyone do that?
sbp .title gist.github.com/654528
phenny sbp: gist: 654528 - Code Shui- GitHub
TimToady I tend to like $ix if it's an index
Juerd I grew up with BASIC, so it took a while for me to adjust from "X" to "i"
masak TimToady: I know a pole or two you could move to to rid yourself of that problem.
sbp python, but you get the idea. a method in a simple editor
the first causes splosions in the cranial region 22:06
TimToady I'm just waiting for someone to install an East Pole in the correct place.
sbp the second is practically self documenting
flussence I learned to stop doing it after trying to debug code with two adjacent nested loops
sbp just from the variable names
(and method names, and the such)
Tene an ex co-worker (who just left; anyone want a job?) had this horrible habit of naming his variables with leading underscores indicating the level of nested scope. 22:07
Juerd flussence: Why would you have two adjacent loops over indices?
masak TimToady: they've been talking about the East Pole for years now. I'm starting to suspect it's a vapor-pole.
Juerd Tene: Not a big fan of refactoring, probably :)
Tene my $foo; sub bar { my $_lol; while true { my $__wtf; } }
flussence this was html formy stuff, one was to get input/textarea values, the other was select values because it's slightly different...
tadzik I suppose it's twice as far as the Middle East
Tene and then it was inconsistent in places too. :( 22:08
Juerd flussence: But why would you loop over the indices if you can loop over the values proper?
flussence that was in js, no foreach over dom node lists :(
turned out to be good practice everywhere though 22:09
Tene He wouldn't actually give any reason for doing it, and he refused to stop doing it. He also committed modules generated by h2xs, as he wasn't able to write 'package Foo;' himself, or something?
TimToady when you mention h2xs I throw up a little in my mouth 22:10
flussence Tene: half the code I maintain at $dayjob has weird underscores to indicate not to use it outside the package... the problem is the other half doesn't.
dukeleto TimToady: that is good to hear :) 22:11
Tene Fortunately he mostly stayed away from Perl these days.
Juerd flussence: It's probably a good idea to stop using globals altogether, rather than indicating which ones can and which ones shouldn't be touched. 22:12
TimToady but that isn't portable
flussence those were method names...
Juerd I see 22:13
flussence (the code's actually pretty good about avoiding globals)
Juerd Let's stop using global function names too :D
TimToady okay
done
Juerd :)
TimToady perl6: say GLOBAL::.keys 22:14
p6eval rakudo 479650: OUTPUT«Could not find sub &GLOBAL␤ in main program body at line 22:/tmp/hYsbH7Z8gR␤»
..pugs: OUTPUT«*** ␤ Unexpected "GLOBAL"␤ expecting bare or pointy block construct, ":", "=>" or operator␤ at /tmp/Y_Hg8hAmay line 1, column 5␤»
Juerd If all function names were lexical to their own block, you'd never have to worry about something else calling it.
Juerd wants to go back to copy-and-paste programming 22:15
And I long for "goto 10" 22:16
TimToady invents hygienic copy-and-paste
Juerd copy/paste could be improved with copy on write!
TimToady unfortunately, the margins are too small, and irssi won't let me paste the solution here
Juerd: you jest, but that's sort of the essence of Xanadu 22:17
lucs TimToady: Nelson's Xanadu?
TimToady *nod* 22:18
Juerd I don't know what Xanadu is, but I figure that it's probably incredibly scary.
sbp scary and awesome
Juerd googles
sbp .wik Xanadu (Nelson)
phenny "Theodor Holm Nelson (born 1937) is an American sociologist, philosopher, and pioneer of information technology." - en.wikipedia.org/wiki/Ted_Nelson
TimToady it was sort of revision control for the whole world of text, if you believe in ASCII
Juerd "Wired magazine called it the "longest-running vaporware story in the history of the computer industry"." 22:19
22:19 timbunce left
Juerd When will Wired write about Perl 6? :) 22:19
sbp back in them days we didn't have no fancy unicode, we had to work down t' mines with a pint of coal and a pencil made of chloroform...
TimToady hasn't sucked up enough money yet
jnthn We're working on it. 22:20
Oh, wait...
22:20 alester left
sjohnson they called perl6 vaporware? 22:22
Juerd No, Project Xanadu
sjohnson interesting 22:23
never heard of it
guess that's not surprising
masak that Wired article has been described as very mean-spirited. (don't remember by who.)
sbp true fact: Ted Nelson, when he was young, used to cross roads by turning his back to the traffic and just jumping out. he figured they'd stop, and he wouldn't have to wait. must have worked because he's still alive. won't test, DONTTRY, WONTFIX 22:24
that might be from the Wired article, now that I think of it
something I read years ago, don't blame me for bibliographic inaccuracies
x3nU ftp://x3n.info/pub/apps/win32/x86/rakudo-star/rakudo-star.2010.10.exe 22:25
22:26 tylercurtis joined
TimToady offers his condolences to any future historians who are only now just trying to wade through all this stuff and nonsense to try to figure out how Perl 6 succeeded (or didn't) and why. 22:27
masak *lol*
masak waves peevishly at same historians
jnthn I imagine that Perl 6 must be one of the most documented language design/implementation proccesses.
x3nU (note that this win32 build is totally untested, i'll test tommorow)
sbp no, no, historians LIKE the messy stuff 22:28
masak historians: TimToady may be apologetic, but I only intend to make life harder for you! I'm in ur meme stream, mucking things up!
sbp it's all the tidied up, heavily groomed rubbish that they hate
because it has all the layers of cultural bias and other similar historical perversions in it
which, unless you're studying the history of cultural bias, isn't all that helpful
jnthn Do historians like puns? :-)
22:29 Trashlord left
sbp only if they're really punny 22:29
TimToady only if they're pundits
sbp they answer everyþing with a þong
TimToady recovers enough to wince 22:30
masak do they wear the þongs?
or maybe they just use them for smilies: :þ 22:31
TimToady that looks...sloppy and wet... 22:32
masak
sbp eths wynn
22:33 kjeldahl left
TimToady what that, someone blowing a smoke X? 22:33
*what's
or someone showing off a tongue piercing?
masak :D 22:34
sbp this is getting somewhat off-topic, but...
masak O RLY?
sbp I assume you've seen the awesome new additions to Unicode?
e.g. U+1F343 LEAF FLUTTERING IN WIND
TimToady ow
masak has only seen the new smilies
sbp it's like a whole new plane of dingbats
seriously, U+1F304 SUNRISE OVER MOUNTAINS 22:35
can't wait for Michael Everson to give us all some nice glyphs for these
flussence I was about to suggest something like that, satirically...
but wow.
TimToady how do we know it's really a sunrise, and not a sunset running backwards? 22:36
Tene Man, Michael Everson. It's interesting to see the same person come up in different circles.
22:36 mavrc left
Tene He started a huge argument on the lojban mailing list a while back. 22:36
masak :)
sbp Buckminster Fuller suggested we call sunset "sunclipse"
phenny sbp: 22:36Z <[bjoern]> tell sbp h ttp://www.textfiles.com/underconstruction/
masak sunrises, lojban arguments. I gotta look this guy up. 22:37
sbp can't remember what he suggested we cal sunrise though
flussence unsunclipse?
TimToady sunprise!?!
Tene masak: it was for his publication series of translations of Alice in Wonderland
sbp oh, he suggested "sunsight" for sunrise
sbp coughingly mentions www.mikeoates.org/mas/leek/sunset.htm by-the-by 22:38
Tene He wanted to publish the lojban translation of Alice in Wonderland, but he wanted to reformat it to add initial capitals to sentences and names, drop the normal lojban punctuation, add periods at the end of lojban sentences, etc.
22:38 risou joined
Tene So it would still (mostly) be isomorphic to lojban, but would be very atypical for lojban. 22:38
masak Tene: eew
that sounds very iconoclastic, from the Lojban viewpoint. 22:39
Tene yeah
22:39 kulp joined
TimToady yeah, like logban isn't complete artifice to begin with... 22:39
22:39 Trashlord joined, kulp left
TimToady *lojban 22:39
Tene TimToady: Nobody claims that it isn't... 22:40
masak TimToady: hey! they did make their words from random letter from the world's languages... :)
*letters
TimToady let's never us mind that humans like to have their languages organized into nouns and verbs to go into different brain bits
and let's just define each verb to have its own positional parameters willy nilly 22:41
masak Lojban wasn't designed with puny humans in mind.
but yeah, the positional params suck.
TimToady what about punny humans?
flussence
.oO( Lojban sounds like PHP... )
sbp don't start that again, puns are a thorny issue here now
Tene yeah, totally better to first come up with a complete map and categorization of all possible types of parameters, and order them in universal importance order. 22:42
TimToady ÞþÞþÞþÞþÞþÞþ
masak thank you. now don't ever do that, again. 22:43
masak pulls out a couple of thorns
sbp TimToady: get þee to a punnery!
masak *groan*
*lol* 22:44
jnthn :D
masak sbp++
Juerd
masak rakudo: say "sbp++" for ^10
p6eval rakudo 479650: OUTPUT«sbp++␤sbp++␤sbp++␤sbp++␤sbp++␤sbp++␤sbp++␤sbp++␤sbp++␤sbp++␤»
22:45 icwiener left
TimToady wonders what the opposite of a punnery is, genderwise... 22:45
sbp a monadstery? 22:46
masak a mona-hystery?
jnthn I dunno, but the leader of it is a puntiff. 22:47
sbp :-)
TimToady whereas the leader of a punnery cannot rise above the level of an Abscess 22:48
22:50 dnl left
sbp rakudo: say \frac{\pi^2}{6} 22:51
p6eval rakudo 479650: OUTPUT«Could not find sub &frac␤ in main program body at line 22:/tmp/DasCYBtyCY␤»
sbp someone will create a latex dialect for perl6, right? right?
diakopter in some universe..
TimToady how else will we know who to shoot first? 22:52
sbp heh!
masak I'd like to see a sturdy tool that could turn Perl 6 source code into beautifully laid-out TeX output.
tadzik sbp: ooc, what should the code do?
Tene masak: alternate compiler backend, perhaps? 22:53
sbp tadzik: presumably it would let you use latex expressions anywhere that you'd have a mathematical expression in perl6. don't ask me, I'm just the imaginer, the visionary, the one in danger of being first against the wall when the revolution comes (but I'll just blame Knuth)
(he won't be able to say anything because he doesn't use email. take that, Prof. Luddite) 22:54
diakopter sbp: but then it'd have to also re-implement all of latex...
22:54 dnl joined
masak Tene: yes, maybe -- though "backend" makes me suspect it gets things in a too-digested form. 22:54
TimToady um, this isn't email...
sbp so what? it's 2010, come on. gimme a break. what did Djikstra say? all programmers do now is glue libraries together?
no, but I could hack up an email-to-irc bridge 22:55
22:55 dnl left
sbp *-ij- 22:55
TimToady you have a point
Tene masak: translate the parse tree to custom nodes that render LaTeX, basically.
dukeleto sbp: do you have an reference for that Dijkstra quote?
TimToady or perhaps a punt
dukeleto Tene: that sounds awesome 22:57
sbp dukeleto: oh cruel irony! it wasn't Dijkstra at all
dukeleto Tene: so it would do PAST->LaTex ?
sbp it was... Prof. Knuth! 22:58
“There’s the change that I’m really worried about: that the way a lot of programming goes today isn’t any fun because it’s just plugging in magic incantations — combine somebody else’s software and start it up”
dukeleto sbp: what is that from?
Tene dukeleto: PAST is too low, really.
dukeleto Tene: what is high enough?
sbp .g "just plugging in magic incantations"
phenny sbp: reprog.wordpress.com/2010/03/03/wha...ogramming/
Tene dukeleto: the match object
dukeleto: what rakudo uses for --target=parse
sbp p.594 of Coders at Work
by Siebel
TimToady hmm, I'm likely to see Knuth this weekend... 22:59
I mean, a week hence
sbp tell him I'm very sorry for my luddite slur
masak tell Knuth we said hi!
sbp actually, if you want to really make yourself useful...
dukeleto TimToady: tell him I said "Thanks for LaTeX, dude" 23:00
sbp TimToady: tell him that the W3C Validator team were actually very impressed by the email he sent them a few years ago rightly complaining about them changing their architecture out from underneath him rendering his old pages invalid
masak actually, I meant to do all the exercises in Knuth's books, but Perl 6 kinda got in the way... :)
sbp their minds were sort of blown
TimToady in other words, he was being a Luddite :)
sbp YES! 23:01
masak they changed their architecture?
sbp well, they were changing their architecture; and in the process they got rid of some *very* old crufty DTDs that nobody used anymore. except, guess what? Knuth had learned how to make websites from a book in like *1993*, I kid you not. and it had this old doctype in it
and he'd been using it ever since!
23:02 dnl joined
masak pfft, the w3c getting rid of doctypes. there's your mistake right there. 23:02
you can't invalidate parts of the web. or at least, it's a disgrace.
I'm with Knuth on this one.
sbp timbl said the Validator works the wrong way around
it penalises people for making mistakes
he said it should award points for the things that people get right
perhaps code syntax checking should work that way too 23:03
TimToady and the larger the font, the more points
masak note the modules.perl6.org does the "award points" thing. 23:04
s/the/that/
TimToady masak++
dukeleto TimToady: i am concerned about the avg default font size on the web as well. It is bad for the eyes.
patrickas notes that it was masak++'s idea
diakopter nosquint plugin for firefox is the bestest 23:05
masak now I get points for awarding points. how referent.
TimToady "Your karma exceeds the syntactic distress of this program, so we'll just try to run it anyway..."
Tene dukeleto: people don't just adjust their browser or desktop preferences?
masak TimToady: I wish.
flussence is still holding out for a 300dpi desktop screen within my lifetime... 23:06
TimToady just look at your HDTV through binoculars the wrong way 23:07
works in 3d too
masak 'night, #perl6 :) 23:08
flussence hmm... red-green 3D binoculars
o/ bai
TimToady masak: night
tadzik 'night masak
23:08 masak left
dukeleto Tene: i just crank my default way up, but some sites require manual intervention 23:11
dalek odel: 25487a2 | jnthn++ | dotnet/compiler/PAST2DNSTCompiler.pm:
[dotnet] Implement compilation of pasttype return (though there's no handler installed to catch it just yet.
23:15
odel: 083fa12 | jnthn++ | dotnet/ (2 files):
[dotnet] Stub in block handlers setup.
sjohnson i feel good today. i argued to fix a security play in GnuPG, and there were a few nay-sayers, but the developers agreed with me in did it.
maybe i can do the same for perl 6 someday :3
.oO(still waiting for good ideas)
23:16
23:18 tylercurtis left 23:25 pythonian4000 is now known as pythonian4000afk 23:27 MayDaniel left
sorear I think that the most fundamental mismatch between Perl 5 and Perl 6 is that in Perl 5, Int is a subtype of Str 23:27
Perl5think still holds that "everything is a string" tclishly, although this has not been strictly true since Perl 5.0 (not all $foo eq "ARRAY(0x8064304c)" are created equal) 23:28
23:30 patrickas left 23:34 Limbic_Region joined
sorear phenny: tell masak to check out lhs2tex 23:45
phenny sorear: I'll pass that on when masak is around.
Trashlord thanks 23:46
that means a lot
sorear ?
talking to em?
Trashlord disregard, random drunken talk 23:47
I'm just surprised I didn't say anything here earlier, heh
you'll come to realize I'm usually like this
23:51 krakan left, krakan joined 23:56 krakan left 23:57 javuchi joined
javuchi ey how fast is parrot compared to the jvm? 23:57
tadzik ask #parrot on irc.perl.org. Parrot is not as mature as JVM, it doesn't have JIT and GC is far from perfect. But if you pay attention, you will see they're improving fast 23:58
JVM has years of optimizations after it, Parrot is a lot fresher compared to it
sorear parrot's current speed is a joke, nobody will deny this 23:59
javuchi i'm trying to find some information regarding speed
that bad, sorear?