Think twice before running "make install" for Pugs | moritz.faui2k3.org/irclog/ | pugscode.org | sial.org/pbot/perl6 | ?eval [~] <m oo se> | We do Haskell, too | > reverse (show (scanl (*) 1 [1..] !! 4)) | "Perl 6 Today" video from YAPC::Asia: xrl.us/v6op
Set by agentzh on 6 May 2007.
00:14 amnesiac joined 00:41 baest joined
dduncan fyi, I made a p6l post proposing an alteration to how the @ and % sigils are used ... feedback there is appreciated 00:45
Juerd Didn't like it, because much of the present day expressive power for sigils is in signatures 00:49
And I expect signatures to play a big role.
00:50 nipotaway is now known as nipotan
dduncan my impression was that the current use of @foo and %bar was rather limited situations, and that @$foo or %$foo are a fine or superior alternative 00:51
in the same places
00:54 justatheory joined
dduncan so then, @$foo would just be the new spelling for @foo in places where the distinction matters ... while that is longer, the @ isn't used everywhere the variable name is, just in the minority of places where it has something to say 00:55
you lose nothing
obra timtoady++ # Language design is hard. Let's go shopping! :-) 01:34
01:39 baest joined, edenc joined, IllvilJa joined, mr_ank joined, qmole joined, bones`cochilo joined, dduncan joined, drupek12 joined, penk joined, Patterner joined, azawawi joined, jjore-w joined, stevan_ joined, araujo joined, svnbot6 joined, zamolxes joined, BooK joined, rfordinal joined, offby1 joined, fridim joined, rashakil_ joined, wolverian joined, lumi joined, Casan joined, ofer joined, kolibrie joined, Gothmog_ joined, QtPlatypus joined, TreyHarris joined, arguile joined, pasteling joined, cls_bsd joined, buu joined, orafu joined, takesako___ joined, Yaakov joined, allbery_b joined, kcwu joined, SamB joined, GeJ joined, rgs joined, masak joined, Caelum joined, perlbot joined, gaal joined, nothingmuch joined, mtve joined, takanori joined, Daveman joined, cernd joined, Tene joined, shachaf joined, Maddingue joined, LCamel joined, dvorak joined, Lunchy joined, drbean joined, evalbot_r16296 joined, clkao joined, wilx joined, statico joined, pjcj joined, Loro_ joined, nekokak joined, TimToady joined, mj41 joined, ingy joined, Southen joined, blaze-x joined, tewk joined, idiotmax joined, cognominal joined, jikuty joined, ruz joined, cj joined, rlb3_work joined, awwaiid joined, Teratogen joined, mugwump joined, Kattana joined, ajs_ joined, gnuvince joined, JarJarBinks joined, rhr joined, catch23 joined, bas joined, lidden joined, nelhage joined, specbot6 joined, buubot joined, jql joined, amnesiac joined, stef__ joined, ashleyb joined 01:40 Aankhen`` joined, oceanlab joined, Khisanth joined, diakopter joined, electrogeek joined, theorbtwo joined, avar joined, f0rth joined, frobnitz joined, charsbar joined, autark joined, jvoorhis joined, Grrrr joined, tokuhirom_ joined, yves_ joined, spinclad joined, scw joined, Juerd joined, Eidolos joined, nnunley joined 01:44 trippeh joined, meppl joined 01:46 japhb joined, SubStack joined, ddwagnz joined 01:56 ddwagnz left 02:01 toshinori joined 02:02 khisanth_ joined 02:03 khisanth_ is now known as Khisanth 02:04 b00t joined 02:17 Khisanth joined 02:30 REPLeffect joined 02:36 stevan__ joined 03:00 perlDreamer joined 03:04 justatheory joined
perlDreamer in t/TASKS there's a task for removing all the :todo marks and marking the tests as failing or using todo subs. 03:09
If I wanted to use the subs, which version should they marked as to be done?
03:13 mako132_ joined 03:38 REPLeffe1t joined 03:40 REPLeffe1t joined 03:43 REPLeffe1t left 03:45 REPLeffect joined 04:13 REPLeffect joined 04:17 REPLeffect joined
azawawi ?eval say "hello!"; 04:18
evalbot_r16296 OUTPUT[hello!ā¤] Bool::True
azawawi ?eval say "Perl is cool!";
evalbot_r16296 OUTPUT[Perl is cool!ā¤] Bool::True
04:18 b00t joined 04:25 the_dormant joined 04:48 edenc joined 05:06 BooK_ joined 05:09 nop joined 05:22 jisom joined 05:39 frobnitz joined
svnbot6 r16297 | agentz++ | [t/TASKS] 05:52
r16297 | agentz++ | - removed the "todo" sub task since we're moving to
r16297 | agentz++ | jerry's smart comments like "### todo: pugs 6.28.0"
r16297 | agentz++ | or something like that. thanks perlDreamer++ for
r16297 | agentz++ | pointing that out.
05:52 agentzh joined
rhr if I say something like $s = \x[1234] what controls the encoding? something like use utf8? is utf8 always the default if no encoding is specified? 05:57
and how would you specify a different encoding for one string without changing the default? 05:58
svnbot6 r16298 | agentz++ | [t/TASKS]
r16298 | agentz++ | * added a new task for implementing Jerry's TODO smart
r16298 | agentz++ | comments in the test harness. some examples are
r16298 | agentz++ | also added.
06:02 agentzh left 06:12 jisom_ joined
rhr Str.chars doesn't appear in S02, should it? I'm assuming it should mean whichever of .bytes/.codes/.graphs/.langs is selected by use bytes/codes/etc., and that the default is .graphs 06:14
in pugs, .codes, .graphs, and .chars all mean .codes at present 06:15
?eval my $u = "\x[0041,0300]"; say $u; $u.graphs 06:16
06:16 evalbot_r16296 is now known as evalbot_r16297
evalbot_r16297 OUTPUT[Aōæ½xCCōæ½x80ōæ½xE2ōæ½x90ōæ½xA4] 2 06:16
rhr also, how do you specify unicode normalization forms?
Aankhen`` rhr: From S02, "In the abstract, Perl is written in Unicode, and has consistent Unicode semantics regardless of the underlying text representations.", so I guess it works out to `use utf8` on steroids. :-) 06:20
lambdabot Aankhen``: You have 1 new message. '/msg lambdabot @messages' to read it.
Aankhen`` @messages
lambdabot agentzh said 16h 48m 33s ago: could you take a look at that load event handler when you have the tuits? it's indeed running 10+ or even 20+ times during a single loading. (location.hash = '...' is
not the cause)
rhr Aankhen``: that's fine until you do IO :) 06:23
Str.bytes doesn't make any sense if no encoding is specified 06:25
Aankhen`` @tell agentzh I'm not seeing the load handler run more than once on Firefox; a profiling session shows that it runs once, calling addEvent 83 times (or more, or less, depending on the number of smartlink snippets). Which browser did you see this behaviour under?
lambdabot Consider it noted.
svnbot6 r16299 | rhr++ | misc unicode tests, add smartlinks 06:46
06:50 buetow joined
ingy seen gaal 06:52
seen gaal?
japhb @seen gaal
lambdabot gaal is in #haskell and #perl6. I don't know when gaal last spoke.
japhb ETOOMANYBOTSYNTAXES
Aankhen`` LOL.
07:03 iblechbot joined
Aankhen`` Heh. 07:06
Un-heh, I just realized what I thought was funny really wasn't. :-(
japhb :-) 07:07
Aankhen`` Don't laugh at me!
Man, Perl 6 regexes look like a parsing nightmare. 07:09
07:12 REPLeffe1t joined
japhb Not when you can use them to parse themselves. ;-) 07:13
Aankhen`` Fair enough.
I'd hate to be the one bootstrapping them, though. :-P
07:14 franck__ joined
Aankhen`` I wonder how it'll work if and when Perl 6 regexes are used in other languages. I guess every language would have to specify its own parser for { ... }? 07:14
Or rather, re-use its parser.
japhb In fact, I'd say that STD itself is a fair test of the rubber-to-the-road value of the grammar design, exercising a lot of the features that make grammars more useful than mere regexen
Aankhen`` Such as? 07:15
japhb I'm basing that comment on the fact that $Larry has updated the grammar design several times to make STD cleaner. 07:16
Aankhen`` Ahh.
07:18 justatheory joined
Aankhen`` I don't understand the bit about multi regexes. 07:22
proto token sigil; multi token sigil:sym<$> { <sym> } # what is the "sym" there?
I meanā€¦ what does `sigil:sym<$>` break down to?
japhb I believe it allows him to use a single rule body for multiple possible symbols ($ @ % and so on, in this case). I'm not looking at STD at the moment, so I'm not sure that's correct, but I seem to recall that reasoning 07:24
Aankhen`` Right, but I don't understand the long name. :-S 07:25
Aankhen`` cries.
(I'm reading S05, BTW.)
07:32 dduncan left 07:34 buetow joined
Aankhen`` wonders if the greatly increased expressive power of Perl 6 regexes will lead to a lot of mixing of logic, not unlike mixing presentational logic with business logic. 07:34
I know that you can use (?{...}) and (??{...}) in Perl 5 todayā€”however limited they might beā€”but it seems to be much easier to do that sort of stuff (squared) in P6. 07:35
rhr Aankhen``: look at regex cmd in examples/password-manager.p6 for an example of that 07:38
Aankhen`` Heh, I see that. 07:39
That doesn't work, does it? 07:40
rhr Aankhen``: the sym thing has something to so with wanting to distinguish the symbol being parsed from the name of the rule that parses it, but I don't understand the details...
07:40 the_dormant joined
rhr no, it doesn't work with pugs yet 07:40
Aankhen`` I see.
Yeh, I figured the $<...> at the very least would break it. 07:41
rhr I don't even really know what does and doesn't work in regexes in pugs
Aankhen`` subset NumberBase of Int where /^ (\d+) { 2 <= $0 <= 64 || fail } $/; 07:43
Er.
I suppose that was a bad example, since numbers aren't the best thing to run regexes on.
Regardless, I'm trying to figure out whether something like that is a fair use of regexes, or something that will come back to haunt me. 07:44
rhr subset Identifier of Str where /^ <ident> $/ 07:45
Aankhen`` Well, that seems like a basic, logical subtype.
What about this? subset User of Str where /^ <ident> { check_database_for_user($<ident>) or fail } $/ 07:46
That's on the other extreme, isn't it?
rhr could be useful 07:47
Aankhen`` Well, it seems like it would give you more useful error info if that sort of logic weren't within the regex.
sub foo (User $bar) { ... } vs. sub foo (Str $bar) { check_database_for_user($bar) || fail "User does not exist"; } 07:48
rhr I think you can do ... or fail "No such user"
Aankhen`` First case, you just get an error saying $bar must satisfy the User type constraint. Second case, you get a message explicitly saying the user does not exist.
Yeah, you could. Maybe I'm just reaching. 07:49
rhr but that probably doesn't print the error for you
and you may not want to print it anyway 07:50
Aankhen`` True.
Eh, you could possibly write your entire program within one giant rule, much beyond password-manager.p6 =) 07:53
Oh, I actually wanted this earlier: /^ (\d+) <?{ 2 <= $0 <= 64 }> $/; 07:54
rhr well, regex cmd is already 99% of the main loop :) 07:56
Aankhen`` True, but the full program has too much non-regex stuff in it. <G> 07:57
regex unescaped_slash { <!after <~~>> \\ } # does this look right? 07:59
rhr slash or backslash? 08:03
Aankhen`` Well, backslash. 08:04
rhr what does ~~ have to do with backslash?
Aankhen`` "A leading ~~ indicates a recursive call back into some or all of the current rule." 08:05
<~~> # call myself recursively
rhr oh, didn't know that
Aankhen`` regex unescaped_backslash { <!after <~~>> \\ }; regex unescaped_string (Str $str) { <!after unescaped_backslash> $str }; # don't I have imaginative names? :-D 08:07
All this stuff about controlling backtracking makes my head hurt. 08:10
One second it all makes sense, the next I'm left reeling again.
rhr I've had that feeling. Need to write some code, but too much doesn't work yet... 08:11
Aankhen`` Heh. 08:12
08:29 kunwon1 joined 08:35 lichtkind joined 08:39 buetow joined, b_jonas joined
svnbot6 r16300 | rhr++ | Lots of failing unicode bytes/codes/chars tests 08:59
09:10 riffraff joined
riffraff hi 09:10
moritz hi riffraff ;)
riffraff it seem I found a wonderful heisenbug related to returning junctions from routines and depending on the want'ed type 09:13
from time to time $foo =some_routine_returning_jun().values will end up with "()" but if I assign to a @array everything alays work fine 09:14
09:28 ruoso joined
moritz ?eval ((1,2,3) Z (5,4,3)).map(&infix:<+>) 09:28
09:28 evalbot_r16297 is now known as evalbot_r16300
evalbot_r16300 (4.0, 2.0) 09:28
moritz not what I expected ;) 09:29
but propably it works how it should
riffraff really unexpected :)
moritz ?eval ((1,2,3) Z (5,4,3)).map([+] $_) 09:30
evalbot_r16300 Error: Cannot cast from VList [VUndef] to Pugs.AST.Internals.VCode (VCode)
moritz or do I have to use some kind of @$_?
riffraff ?eval [[1,2]].map(&infix:<+>) 09:32
evalbot_r16300 (2.0,)
riffraff mh 09:33
?eval &infix:<+>(1,2)
evalbot_r16300 3
riffraff ?eval &infix:<+>([1,2]) 09:34
evalbot_r16300 Error: No compatible multi variant found: &infix:+
09:54 nferraz joined 09:59 rindolf joined 10:19 buetow joined 10:51 DarkWolf84 joined 10:54 ruoso joined, ddwagnz joined 10:58 chris2 joined
spinclad ?eval ((1,2,3) Z (5,4,3)).map({[+] $_}) 11:00
evalbot_r16300 (6, 6, 6)
11:04 fridim joined, rashakil_ joined, wolverian joined, lumi joined, Casan joined, ofer joined, kolibrie joined, Gothmog_ joined, QtPlatypus joined, TreyHarris joined, arguile joined, pasteling joined, cls_bsd joined, buu joined, orafu joined, takesako___ joined, Yaakov joined, allbery_b joined, kcwu joined, SamB joined, GeJ joined, rgs joined, masak joined, Caelum joined, perlbot joined, gaal joined, nothingmuch joined, mtve joined, takanori joined, Daveman joined, cernd joined, Tene joined, shachaf joined, Maddingue joined, LCamel joined, dvorak joined, Lunchy joined, drbean joined, evalbot_r16300 joined, clkao joined, wilx joined, statico joined, pjcj joined, Loro_ joined, nekokak joined, TimToady joined, mj41 joined, ingy joined, Southen joined, blaze-x joined, tewk joined, idiotmax joined, cognominal joined, jikuty joined, ruz joined, cj joined, rlb3_work joined, awwaiid joined, Teratogen joined, mugwump joined, Kattana joined, ajs_ joined, gnuvince joined, JarJarBinks joined, rhr joined, catch23 joined, bas joined, lidden joined, offby1 joined, rfordinal joined, zamolxes joined, svnbot6 joined, araujo joined, jjore-w joined, Patterner joined, penk joined, drupek12 joined, qmole joined, mr_ank joined, IllvilJa joined, baest joined, nelhage joined, specbot6 joined, buubot joined, jql joined, stef__ joined, oceanlab joined, diakopter joined, electrogeek joined, theorbtwo joined, avar joined, f0rth joined 11:05 charsbar joined, autark joined, jvoorhis joined, Grrrr joined, tokuhirom_ joined, yves_ joined, spinclad joined, scw joined, Juerd joined, Eidolos joined, nnunley joined, trippeh joined, meppl joined, japhb joined, stevan__ joined, BooK_ joined, frobnitz joined, iblechbot joined, REPLeffe1t joined, franck__ joined, kunwon1 joined, b_jonas joined, riffraff joined, rindolf joined, ruoso joined, chris2 joined 11:18 Alias_ joined
svnbot6 r16301 | rhr++ | [t/builtins/strings/unicode.t] Readability improvements to substr tests 11:21
11:37 fglock joined
Tene ?eval (1,2,3) Z (4,5,6) 11:37
evalbot_r16300 ((1, 4), (2, 5), (3, 6))
Tene ?eval map (1,2,3) Z (4,5,6), {[+] $^a} 11:38
evalbot_r16300 Error: Cannot cast from VList [] to Pugs.AST.Internals.VCode (VCode) 11:39
Tene ?eval map {[+] $^a}, (1,2,3) Z (4,5,6)
evalbot_r16300 ((1, 4), (2, 5), (3, 6))
Tene ?eval ((1,2,3) Z (4,5,6)).map: {.say}
evalbot_r16300 OUTPUT[14ā¤25ā¤36ā¤] (Bool::True, Bool::True, Bool::True) 11:40
Tene ?eval ((1,2,3) Z (4,5,6)).map: {[+] $^a}
evalbot_r16300 (5, 7, 9)
11:44 wolverian joined 11:53 nipotan is now known as nipotaway 11:57 the_dormant joined 12:33 [particle] joined 12:36 ddwagnz joined
pasteling "rhr" at 65.94.38.10 pasted "pugs syntax error I don't understand" (63 lines, 2.9K) at sial.org/pbot/24890 12:37
kolibrie that's weird that it works in the interactive shell but not on the command-line 12:41
rhr yes, it is
moritz does it work if you remove the Int before @combining? 12:44
rhr nope
moritz weird 12:45
rhr I'm a magnet for weird pugs bugs, apparently
moritz I can't spot either a syntax error nor a particularly sophisticated syntax
12:46 ddwagnz left 12:47 buetow joined
rhr hmm, deleting most of the numbers in the array gets rid of the error 12:48
12:49 iblechbot joined
rhr nevermind, there's a missing comma 12:51
Tene Heh.
rhr not sure how it went missing, that was all generated by a perl script 12:53
moritz and perl scripts are bug free[tm] 12:56
rhr actually, I probably hit x in vim or something by mistake 12:58
lumi But the useless error is sil la bug, right? 13:03
svnbot6 r16302 | rhr++ | [Prelude.pm] add Str.graphs, make Str.chars return Str.graphs
lumi s/sil la/still a/ 13:04
rhr yeah, that was a pretty confusing error message
13:07 jerrylee joined 13:14 thepler joined 13:21 stevan__ joined 13:42 chris2 joined, fglock joined 13:43 rfordinal_ joined 13:44 zzzz joined
zzzz ?eval print "Hello World" 13:45
13:45 evalbot_r16300 is now known as evalbot_r16302
evalbot_r16302 OUTPUT[Hello World] Bool::True 13:45
zzzz ?eval print "Hello World" . (1+1);
evalbot_r16302 Error: ā¤Unexpected "."ā¤expecting operator, ":" or ","
zzzz ?eval print "Hello World" . (1+1)
evalbot_r16302 Error: ā¤Unexpected "."ā¤expecting operator, ":" or ","
zzzz ?eval print "Hello World" + (1+1) 13:46
13:46 ashleyb joined
evalbot_r16302 OUTPUT[2] Bool::True 13:46
diakopter ?eval print "Hello World" ~ (1+1)
evalbot_r16302 OUTPUT[Hello World2] Bool::True
13:50 lisppaste3 joined, ashelyb_ joined 14:04 veritos joined 14:06 Tanktalus joined 14:10 amnesiac joined
Teratogen is Perl 6 just gonna end up another flavor of Lisp? 14:20
blaze-x is man "just" going to be another flavor of ape? 14:24
:)
Teratogen man is going away, it's all gonna be "info" now 14:26
can we expect Perl 6 by Christmas 14:28
make it, like, a big Christmas present to the world
before we blow ourselves up or get hit by an asteroid or global warming runs rampant 14:29
I mean, you know, we could all go before you get this thing done
did you know that there are huge whirlpools of discarded plastic (the size of Texas) in our oceans? That could kill the oceans? 14:30
[particle] PHEAR.
Teratogen and that honeybee colonies are dieing off in record numbers?
you gotta get a move-on or there'll be nobody to use Perl 6!
kolibrie we're in this for the fun
Teratogen oh well that's a totally different story then 14:31
have fun =)
let the world crumble around you
the yellowstone caldera could erupt! 14:32
it will be neat though 14:35
I assume Perl 6 will be an interpreter AND a compiler?
compile to native code?
Juerd It will compile to Parrot native code, probably. 14:36
14:36 jisom joined
Juerd Something else can, if needed, take care of compiling parrot bytecode to system native code, but I doubt it's very useful. 14:36
[particle] we call that JIT 14:37
Teratogen right 14:38
hi Juerd =)
I'm trolling this morning
[particle] i see that 14:39
Teratogen about to take my medz, eat some food, and crash.
Juerd [particle]: Not everything is jit'ed, I thought
Teratogen am bored.
[particle] i'm sure perl 6 (the product) will be fun someday. perl 6 (the journey) is fun now.
Teratogen the only thing I don't like is sigil invariance
it isn't Perlish!
[particle] i disagree 14:40
14:40 Loro_ joined
Teratogen the way sigils work in Perl 5 make a Perlish kind of sense 14:40
[particle] juerd: not everything *yet* (if ever)
14:40 b_jonas joined
Teratogen and how do you do a slice now? 14:41
(in Perl 6)
[particle] teratogen: don't get so hung up on syntax. perl 6 expresses a much wider set of semantics in a much friendlier way
Teratogen ok 14:42
[particle] so, the syntax changed a bit--that doesn't make it less perlish
gnuvince Teratogen: my @slice = %hash<foo bar baz>;
[particle] it might make it less perl 5-ish
jisom not everything needs to be jitted, optimization isn't always guaranteed, plus do you really expect to jit "add_parent" for a class? 14:43
jisom goes back to his amd64 jit attempt
[particle] jisom: how's that going, btw? 14:44
blaze-x in relation to that, whould it somehow be possible to use . on a string for concatination (I only know perl5, but assuming that maybe the string object protoype could be overridden somehow?)
[particle] blaze-x: syntax that looks something like "foo".concat("bar") ?
blaze-x although that would probably make it "foo".("bar")? I'm not up to speed with perl6 development
jisom eh, no longer working 58 hours a week at work, so now have time.......got a decent collection of whitepapers from AMD about it all......so now it's actually coding 14:45
[particle] jisom: i noticed you've been quiet. glad to see it's a good quiet :)
blaze-x [particle]: well, no, that would be too php'ish for my taste, but then again, I'm so used to . for concat, I might get used to ',' , but '~' ... hmm.. I though about ways around it as I had read it :p 14:46
jisom well, we can always use a perl5 compiler 14:47
[particle] blaze-x: yes, i'm sure there will be something like that. maybe like "foo".~("bar", "baz")
blaze-x also, although those ~ probably look quite nice on mac, I'm using a dos font from waaay back, I'm addicted to it, my consoles look like back in the bbs days, with ~ on the topline very high
[particle] i'd have to read the SYN to know for sure though
ole! 14:48
Juerd blaze-x: Why do you want . for concatenation?
blaze-x Juerd: third-finger-going to . brainwash?
Juerd blaze-x: Takes just a week to get used to the new operators
[particle] oh, you mean just '.'. i thought you meant a method form of concat
Juerd Andthat's a very broad guess. 14:49
estimation
blaze-x [particle]: no, indeed
Juerd It took me two days.
Really, brainwashing isn't a big problem.
blaze-x hmmm, you could be right, I'm not there yet, bu-ut (being on qwerty), concatination is done with one hand ([",\.']), if you include ~ using both is required 14:50
although whilest typing, I must say that I probably will get used to it :) 14:51
Juerd Switch to dvorak
Where "', is on the left side :)
As is ~`
blaze-x hehe, myes, that's on my todo list for like soo long :)
jisom then go to work and type, people will call you crazy
Juerd blaze-x: How much spare time do you have next two weeks?
blaze-x: Could you make room for one hour per day? I have a great dvorak course for you 14:52
I'll buy you a beer at a Perl event if you don't manage to touch type dvorak within those two weeks, with practicing only one hour a day.
blaze-x Juerd: have a few projects which need to finish (they are on the laptop) once I switch to my desktop pc, I'm willing to give it a go 14:53
Juerd blaze-x: Contact me by that time then :)
blaze-x oh and btw, I'm probably the only hacker who doesn't drink beer (being from belgium and al, that's unusual :))
Juerd I don't drink any myself. It's an expression
"Favourite not too expensive beverage."
kolibrie doesn't drink beer, but he does type dvorak 14:54
blaze-x sure, just thought it was curious, but seems i'm not alone :)
Juerd kolibrie++
blaze-x: Where in .be do you live?
blaze-x Juerd: flemisch brabant
Juerd Oh, that's not far from where I live
blaze-x like 20mins from the capital
Juerd I live a few km from the Dutch (N-)Brabant border, in Zuid-Holland. 14:55
blaze-x ah, I see, cool.
wasn't there an upcoming YAPC in europe>
Juerd Yes, in August
In Vienna
blaze-x darn, /me hates traveling (don't ask why :)) 14:56
but since my gf has been nagging like crazy to go on holiday, this might be a perfect opportunity
she's a geek too (well math geek actually) so she might even like the meetings
btw, I'm interested in the possible uses of perl6 conversion to other languages, esp javascript. could someone enlighten me about the implications of this, 15:00
Juerd It's compilation, not conversion
blaze-x ie: will we see some kind of CGI which can reform itself into a hybrid client/server model, pushing to the client what it wants and keeping serverside what it wants 15:01
Juerd It's theoretically possible to compile any language to any other language, if external features like I/O are either sufficiently supported, or not used.
Compiling C to ELF isn't much different from compiling Perl 6 to Javascript, from an extremely high level view. 15:02
But don't think it's translation, because it's not.
blaze-x ok, compilation, my bad.
but I'm wondering about the impact of this, will this create new opportunities for the web? 15:03
Juerd 1 + 5 may wind up as enoaenuth(notehuoe(1), notehuoe(5)), or something even much more complex.
Not unless Javascript gets MUCH faster soon.
obra Juerd: see the new VM adobe's contributeed to the mozilla project 15:04
Juerd Compiling to javascript is a few steps backwards in execution speed.
obra: Ooh, interesting. I think I might look up some reading material on that tonight.
obra tamarind.
Juerd noted
obra though the work ms has done with the DLR (not clr) is interesting for many of the same reasons.
blaze-x Juerd: unless you distribute the payload over the clients, and reading about @[1,2,3] ~ @[a,b,c] (syn?) being split up in 3 separate concats... 15:05
Juerd I don't know what @[] is.
blaze-x probably the wrong syntax, sorry
but I meant that it is done in 3 independant calls, so you execute them parralell, no? 15:06
I'm probably using bad terminology, need to do some more reading...
[particle] you mean hyper operators 15:10
blaze-x yes, (or I think so :) 15:11
[particle] S03? 15:12
rats, i was hoping somebody made that specbot i've been talking about
blaze-x indeed, a hyper operator 15:15
Juerd [particle]: Specbot? 15:16
[particle] i'd like a bot that can recite the spec 15:17
Juerd That's way too much data for irc
[particle] a query like "S03?" would give you a link to the spec
Juerd Ah
I use tnx.nl/S03
[particle] one like "S03:1127-29" would give you those lines 15:18
Juerd Erh
[particle] and maybe it'd be limited to 10 or 15 lines, so as not to drive folks mad
Juerd The specs don't have line numbers. It has floated paragraphs.
[particle] the pod is canon 15:19
Juerd Bah
Nah, I don't like that idea
[particle] well, there could be "S03/Hyper Operators" queries, too, if you like
TimToady and others (me included) use line numbers 15:20
until each verse (like the bible) is numbered, that's the best way to be clear and succinct so far
Juerd Sure, but reciting on irc is a bad idea. 15:21
[particle] well, i think otherwise :)
would you prefer nopaste?
Juerd I'd prefer a link to the entire document, properly #'ed 15:22
[particle] the html is generated. i want quick and easy access to the source. 15:23
Juerd Then the source needs to be htmlified <pre> with <a id>
[particle] but, i'm unlikely to write it
Juerd Or something like that, but not lines on irc
[particle] what's wrong with irc?
Juerd Nothing's wrong with irc as long as such bots aren't written ;) 15:24
Multiline stuff on irc is problematic because it disturbs normal conversations.
IRC is line based
It's not even *possible* to flood 15 lines at once, so you need a delay. During the delay, people will talk, and it'll be a mess. 15:25
[particle] i can write
more than one line at once
Yaakov You need a separate channel, moderated, for the output. 15:26
[particle] oh, heh, that's a client thing.
Juerd You can't output 15 lines in one go, pasteling
eh, [particle]
example... 1
example... 2
example... 3
example... 4
example... 5
example... 6
example... 7
example... 8
example... 9
example... 10 15:27
example... 11
example... 12
example... 13
example... 14
example... 15
That was: /exec -o perl -le'print "example... $_" for 1..15'
You'll notice how the first few lines were floodod at once, while the others are delayed a second each, by my client, to prevent that I'm killed by the server (excess flood)
[particle] what i'm after is a mechanism for sharing information when discussing the spec 15:28
so everyone in the channel can be a part of it without having a copy of the spec on their machine for reference 15:29
Juerd I think URLs are great for that.
[particle] if the response from the bot is nopasted, fine.
Juerd Why nopaste it if you can have static documents online? 15:30
It's a piece of cake to wrap some html around the literal pod
[particle] if we have line-numbered pod documents online, that's fine too
Juerd Yea
I think that's much easier AND much better than such a bot.
The line numbers should be links to the lines 15:31
[particle] still be nice to get a link made up for you
Juerd So you can easily copy/paste that.
You shouldn't have to manually type in line numbers.
I'll see if I can build something like this today.
[particle] juerd++ 15:32
Juerd Probably less than 30 minutes work
15:33 rhandom joined
jerrylee any good tutorials on teaching Haskell? 15:35
Juerd jerrylee: svn.perl.org/perl6/pugs/trunk/docs/...view.html, under "Where can I learn more about Haskell?" 15:36
lambdabot Title: Pugs Apocryphon 1
jerrylee Juerd: thanks :D 15:37
Juerd The pleasure of googling is all mine. 15:38
15:44 iblechbot joined 15:45 silug joined 16:06 jisom_ joined 16:09 jisom joined 16:13 azawawi joined, azawawi is now known as zperl 16:14 bernhard joined 16:16 fglock joined
svnbot6 r16303 | rhr++ | [Prelude.pm] in Str.graphs, comment the future need for units in substr 16:16
rhr what kind of object is 1.as(Codes) (S02:620) supposed to be?
16:17 fglock left
Tene ?eval 1.as(Codes) 16:18
evalbot_r16302 Error: No such method in class Int: &as
rhr I remember from way back there was conjecture that arbitrary units for Nums would be supported via something like 42`mm + 23`furlongs
16:18 fglock joined, veritos joined
[particle] ?eval 1.returns(Codes) 16:18
veritos hello 16:19
evalbot_r16302 Error: No such method in class Int: &returns
Tene That's an interesting suggestion
rhr might 1.as(Codes) fit into the same scheme? that would be cool
zperl hi 16:22
Tene zperl: Hi!
xinming_ lwall++ I finally realized what the powfulness roles have. perl6 rocks really. :-) >_< 16:23
TimToady xinming_: please blame chromatic for introducing roles to Perl 6 16:28
Codes(1)
jerrylee bye guys 16:31
fglock hi
TimToady howdy
xinming_ It's fun to get the new understanding of a technoligy... >_< 16:32
japhb fglock: refreshed from time off?
xinming_ how to spell technoledgy correctly? >_<
TimToady probably tired out... :)
japhb "I need a vacation from that vacation!"
TimToady xinming_: whatever communicates is fine
fglock I've been taking a look at history of computer languages - interesting read 16:33
mostly smalltalk & lisp
gnuvince smalltalk++
rindolf Hi fglock, TimToady, xinming_, gnuvince 16:34
fglock rindolf: hi
rindolf gnuvince: my problem with Smalltalk is that Squeak is so much different from anything I'm used to.
fglock: what's up?
gnuvince rindolf: Squeak isn't the only Smalltalk. 16:35
rindolf gnuvince: yes.
gnuvince: is there anything better?
japhb Well, Squeak is the one to be installed on many millions of OLPC laptops, so it will be the de facto main one in the not too distant future, methinks. 16:36
gnuvince Depends on what you mean by better; you have Cincom Smalltalk, VisualAge Smalltalk, Dolphin Smalltalk, Abrai Smalltalk
rindolf gnuvince: and GNU Smalltalk...
TimToady rhr: yes, Str.bytes would fail unless the object in question had a visible encoding mixed in or delegated.
fglock rindolf: just trying to see Perl 6 from a different angle; perhaps from an evolutional POV
gnuvince Cincom Smalltalk is probably the most widespread
rhr TimToady: ok, so it's $str does utf8 16:37
japhb You know, I wonder if it's doable to get Parrot released in time to go on OLPC 2 (2009 or later, I think ...)
rhr is there a 'use utf8' to make that a default? 16:38
zperl ?eval $z=1+2
16:38 evalbot_r16302 is now known as evalbot_r16303
evalbot_r16303 \3 16:38
zperl $eval $z
?eval $z
[particle] japhb: join us!
evalbot_r16303 \undef
fglock isn't Parrot usable right now?
TimToady you can't really force a string to be utf-8 if it doesn't want to be 16:39
in general it should be the generator of the string deciding whether to supply the bytes abstraction layer.
xinming_ rindolf: hi 16:40
rhr ok, good enough
fglock re Parrot: my point is that Perl 6 implements it's own object system, and it works fine without threads
TimToady pragmas can really only set defaults for the generators in the current scope
japhb fglock: I mean, released so that the OLPC guys would consider replacing CPython, so that the kids would have more than just Python and Squeak available.
rindolf I personally think OLPC is stupid.
japhb blinks 16:41
I've heard OLPC called a lot of things. "Stupid" is a new one.
rhr TimToady: what did you mean by Codes(1)? Are Codes/Graphs/etc. roles also?
TimToady @tell Aankhen`` I'd just write "subset NumberBase of Int where 2..64"
lambdabot Consider it noted.
16:42 Averell joined
TimToady most of the built-in types are really roles punning with classes of the same name 16:42
And Codes(1) would be a control-A 16:43
xinming_ BTW, what is the difference between these 2 situations in perl 5 and perl 6? one is using a role (perl 6 way).... another is make a class without new in perl 5. and when we want the Mixin, we just use 'use base qw/Pkg1 Pkg2 Pkg3/;' to "act" as mixin?
rindolf japhb: it's a computer that's not quite a computer, running a very unorthodox GUI, and incredibly crippled.
japhb: interesting idea. Very bad execution.
TimToady Codes(32) is a space regardless of the current encoding of the script
rhr TimToady: control-A? I don't understand
TimToady "consistent Unicode semantics"
codepoint 1 in Unicode is a ^A 16:44
rhr how does that jive with S02:620?
xinming_ hmm, May I ask here or I should ask in #perl? >_<
japhb unorthodox GUI -- true. Crippled -- less so now that they are running the Geode LX instead of Geode GX. Also, they have some parts that are considerably more advanced than any other laptop available. Not quite a computer -- not so. It's a fully functional Fedora. In fact, Red Hat is doing a "95% shared" version that runs using the standard Gnome desktop instead, for sale in developing countries. 16:45
16:46 veritos joined
TimToady okay, Code(1) is ^A, not Codes(1). sorry 16:46
16:46 stef_ joined
rindolf japhb: next time please adress me. 16:46
japhb rindolf: basically a few months ago, the various purchasing nations got together and decided to dump OLPC 1 in favor of just starting immediately with OLPC 1.5, paying the price delta and accepting a couple months delay. And it's now a WAY more functional box 16:47
rindolf japhb: rin[tab]
japhb: oh.
TimToady but I think people usually just use Char(1) to get it in the current abstraction level.
japhb rindolf: I generally use ri[tab]. :-) But that was forgetfullness, not ignorance.
rindolf japhb: OK.
TimToady 'course, now I'm contradicting the types in S26, sigh... 16:48
rhr TimToady: isn't that all just "\x[...]"? How exactly is Code($n) different from Graph($n)?
TimToady so maybe I should say Uni(1)
\x is always hex 16:49
rhr ok, so Uni($n) === "\d[$n]"
TimToady er, only if you eval the right side 16:50
rhr huh?
TimToady \d wants literal digits
rhr oh, right
TimToady interpolation isn't two pass.
you'd have to double the \ too before the eval 16:51
rhr but back to 1.as(Codes) :)
TimToady and 2.54`cm and all that
rhr did that idea die? 16:52
TimToady the ` is currently reserved for user use, but I think a lot of users might opt to say "use units". :)
rhr but should 1.as(Codes) be part of that? 16:53
1`Code
TimToady well, it's a dimensional constant, it's just not a linear dimension necessarily. 16:54
rhr GNU units does nonlinear units :)
like tempF 16:55
not exactly the same thing
TimToady well, I'd call those linear, but not commensurable
or something like that
have different 0 origin, so can't just multiply
but the basic idea is that you can take a number and mix in a preferred interpretation of that number somehow 16:56
rhr yup
[particle] $Feb.days.as(Months)
rhr heh
TimToady and then hopefully the type logic can sort things out, or at least know when it can't
and some conversions can happen either eagerly or lazily 16:57
rhr nod
TimToady all the length units might just convert immediately to meters internally 16:58
rhr that's what units(1) does, I believe
TimToady or maybe they would prefer to do it lazily, much like we say that / could pretend to be a Num but really store a Rat until the value is needed.
xinming_ hopes people not ignores him. :'(
fglock [particle]: is perl6-language the right place to discuss Perl 6 in Parrot? 17:00
TimToady xinming_: I don't understand your question. I'm not an expert on how Perl 6 types map to Perl 5...
Yaakov Hello, TimToady.
[particle] perl6-compilers, i'd say
rhr afk a few mins 17:01
fglock [particle]: ok 17:03
I'd really prefer online chat
17:04 diakopter joined
[particle] fglock: we can chat online 17:05
it's likely pmichaud will be around in ~1-2hrs
fglock oh, nice
[particle] parrot team has weekly status tuesday @ 1830gmt
usually we're all around at that time 17:06
TimToady moritz: the Z operator (and operators like it) do not currently respect @ vs @@ context according to spec.
moritz TimToady: ok, thanks
b_jonas I wonder what Z will be renamed to next. perhaps \/\/\/
TimToady moritz: and arguably defaulting all of them to @ is wrong
17:07 veritos joined
TimToady hmm, I wonder if there's a Unicode that looks like that... :) 17:07
[particle] fglock: pmichaud is on #parrot now
fglock [particle]: trying to find out how to connect to irc.perl.org from irssi :) 17:08
veritos fglock: only 1 server at a time i think. open another screen. 17:09
fglock veritos: thanks
moritz fglock: just type /connect irc.perl.org 17:10
fglock: and then join -perl #parrot
b_jonas I don't know why we need an operator for it. could we just have that functionality built in map like in scheme? (I think foreach can already do multiple lists paralelly)
veritos ooh--nice.
moritz irssi is perfectly capable of handling many servers at once
fglock moritz: that worked - thanks
b_jonas though of course there's the problem of how to distinguish between the many things iterating on many lists can mean 17:11
xinming_ TimToady: hmm, what is the difference between role composition and multi inheritance. I think this is what I mean in my previous question.
moritz b_jonas: this beeing perl we want to implement _every_ convenient method ;)
b_jonas sure, implement zip, but why an operator with a silly name?
btw, I quite like standard ml's list and listpair library 17:12
17:12 REPLeffect joined
b_jonas oh well 17:12
I would like to have a large standard library too 17:13
large standard libraries rock 17:14
17:15 Aankhen`` joined
rhr so would there be something like role furlongs does meters {...}? obviously role Codes doesn't do Bytes, they'd each be fundamental units 17:16
hmm, Code already means somethng else
17:18 justatheory joined 17:20 elmex joined
xinming_ hmm, thanks, I think I got it. :-) 17:21
17:28 stef_ joined, stef_ left 17:34 franck__ joined 17:38 SubStack joined 17:41 stef_ joined 17:47 Psyche^ joined 17:54 stef_ joined 18:03 Aankhen`` joined 18:04 Psyche^ is now known as Patterner 18:10 the_dormant joined 18:39 chris2 joined
gaal ingy: moose! I later realized why my suggestion was bogus :) 18:43
18:44 chris2_ joined 18:46 chris2_ joined 18:50 diakopte1 joined 18:53 PerlJam joined 18:59 Psyche^ joined
svnbot6 r16304 | rhr++ | [t/builtins/strings/unicode.t] use utf8 -> does utf8 etc. 18:59
TimToady xinming_: role composition resolves method collisions at compile time, and has no trouble with diamond inheritance. multiple inheritance can't make such guarantees.
19:10 ruz_ joined 19:14 Psyche^ is now known as Patterner
svnbot6 r16305 | rhr++ | [t/builtins/strings/unicode.t] most of these are :todo 19:20
19:33 Teratogen joined, dduncan joined
xinming_ TimToady: The best answer I ever got is from you. :-) Check google, and found many articles. But none touched my itchy points 19:34
Sleep for now, bye all.
Just googled the answer, and now, I can sleep well. :-)
thanks all
19:42 Jedai joined 19:47 veritos joined 19:52 ruoso joined 20:01 buetow joined 20:12 diakopter joined 20:14 renormalist joined
ingy gaal? 20:27
what suggestion
<- too lazy to read back
20:50 edenc joined 20:55 jjore-w joined, polettix joined 21:00 rashakil joined 21:10 lichtkind joined 21:14 polettix left, REPLeffe1t joined 21:18 iblechbot joined
lichtkind moritz: now has time? 21:25
moritz lichtkind: yes 21:29
lichtkind moritz fine
moritz lichtkind: would you care to join an irc server where we can /msg ?
lichtkind moritz good but how?
moritz lichtkind: /connect irc.perl.org 21:30
lichtkind moritz: good moment reconnecing 21:31
21:32 lichtkind joined
lichtkind moritz: it was /server irc.perl.org 21:32
moritz lichtkind: depends on your client ;) 21:33
21:53 rhandom left 21:55 fax joined
fax hello 21:55
I just watched video.google.com/videoplay?docid=-3...6103839772
lambdabot Title: Audrey Tang - Perl 6 Today - Google Video
fax looks really amazing!
very excited about perl6 :D 21:57
moritz fax: that's because perl6 _is_ cool ;)
Tene Hello, fax! 21:58
PerlJam You mean "Perl 6" don't you moritz? ;)
Today, the role of chromatic will be played by PerlJam on #perl6.
moritz PerlJam: I do, ;)
fax I wish I was a master haskell programmer so I could help :p
PerlJam fax: you don't need to be a master haskell programmer to help! 21:59
fax is it likley that perl 6 will always be in haskell?
PerlJam: oh? 22:00
stevan__ PerlJam: quick hyperoperator question
PerlJam There's lots of non-haskell work that needs doing.
stevan__ [++] @minions
does that ++ all my minions
or do some kind of reduction
stevan__ hasnt looked at the hyperoperator spec in a while
PerlJam stevan__: if it works, it should do a reduction and ++ all of your minions 22:01
moritz stevan__: I think you'd need @minions>>.++ or something
PerlJam :-)
I'm not sure [++] is what you want.
what moritz said
stevan__ cool
I knew I had it wrong :)
moritz I think [...] expect a binary operator
stevan__ thanks
ah
22:02 pbuetow joined
stevan__ so [] is more akin to fold, then map 22:02
moritz right
erm, reduce
at least in p6 reduce is roughly equivalent to reduce 22:03
PerlJam foldl
22:03 Limbic_Region joined
PerlJam foldr would be weird. 22:03
stevan__ PerlJam: yes,.. agreed :)
PerlJam or do I have those backwards again?
stevan__ no,.. fold_left is the normal one :)
stevan__ is speaking in Ocaml sorry,.. foldl 22:04
Tene stevan__: spec says @minionsĀ»++ 22:05
?eval @m = 1..3; @m>>++ 22:06
22:06 evalbot_r16303 is now known as evalbot_r16305
evalbot_r16305 (*** Can't modify constant item: VInt 1ā¤ at <eval> line 1, column 12 - line 2, column 1, *** Can't modify constant item: VInt 2ā¤ at <eval> line 1, column 12 - line 2, column 1, *** Can't modify constant item: VInt 3ā¤ at <eval> line 1, column 12 - line 2, column 1) 22:06
fax will perl6 always be implemented in haskell? 22:09
Tene fax: no
fax :(
why?
stevan__ fax: nope, it will be implemented in Perl 6
fax ahh thats ok then :D
Tene fax: well, there will likely always *be* a Perl 6 implementation in haskell
diakopter wonders how to de-implement pugs
22:09 japhb joined
Limbic_Region diakopter - bootstrapping of course 22:09
fax so the plan is to write in haskell then write it in perl 6?
PerlJam fax: There are multiple Perl 6 implementations. 22:10
Tene the most "official" implementation will be in Perl 6, yes.
fax so it will be a perl 6 compiler as well as an interpreter?
Tene Sure.
fax wow
moritz fax: it will have multiple backends, propably
PerlJam fax: As soon as we get the right amount of perl 6 implemented (in any language) such that we can write perl 6 in perl 6, we're good to go.
fax sounds fantastic 22:11
moritz fax: and because of BEGIN {...} blocks you can't write a pure compiler
PerlJam fax: and I think we'll reach that point some time this year.
moritz fax: because it can change syntax at compile time
fax moritz: what do you mean? I heard about BEGIN in the video but what problem does it cause?
whats wrong with that though?
moritz fax: if you do something like BEGIN { sub infix:<*> {...} }
fax: you change the meaning of the operator "*"
before the rest is compiled 22:12
fax hm maybe I dont understand what you mean by a pure compiler
moritz which means that the BEGIN {...} part must be _executed_ at compile time...
fax oh I understand
PerlJam moritz: that doesn't mean you can't make a pure compiler, just that you have to ship it as part of your executable ;-) 22:15
moritz PerlJam: but if code is executed at compile time, that's normally called "interpreted" ;) 22:16
TimToady sub infix:<*> changes the language even if you don't use BEGIN 22:21
moritz right
TimToady BEGIN is just the final safety valve, like eval, only the opposite 22:22
diakopter TimToady: I don't see a SoTO listed at conferences.oreillynet.com/pub/w/58...sions.html 22:23
lambdabot Title: O'Reilly Open Source Convention 2007 &#8226; July 23-27, 2007 &#8226; Portland, ...
TimToady just as we try to make it unnecessary to use eval, we also try to make it unnecessary to use BEGIN
diakopter: it's not usually considered part of the sessions
it's normally been part of the Tuesday night bash 22:24
diakopter TimToady: oh! okay
TimToady not sure where it's tucked this year though
diakopter a couple of the tutorials I had preferred are already full. :( 22:25
diakopter looks for an evening bash (anywhere) 22:26
oh, I see. Opening night last year. 22:29
22:39 mncharity joined 22:41 justatheory joined 22:45 perlDreamer joined
perlDreamer TimToady or other enlightened folk: in t/TASKS it says to update the closure tests w.r.t changes in S04. Which changes does that refer to? 22:49
TimToady not sure 22:52
22:52 ludan joined
perlDreamer TimToady: I'll try to narrow down when the task was added. Would that help? 22:53
TimToady probably double check all the named blocks at S04:853 since some of them got renamed along the way
START used to be FIRST, for instance
(though I think I changed that one at the time) 22:54
perlDreamer The task was added 8/18/06. I'll try to cross reference with S04 now.
oh, and from what I've seen the block renaming was done. 22:55
23:05 marmic joined 23:26 buetow joined 23:30 bsb joined 23:40 ben joined 23:41 guinex joined 23:43 weinig_ joined 23:52 IllvilJa joined