Check your feather email | spec.pugscode.org | paste: sial.org/pbot/perl6 | pugs.blogs.com | www.treehugger.com/files/th_images/paradigm.jpg Set by audreyt on 29 August 2006. |
|||
00:01
markstos joined
|
|||
TreyHarris | renormalist: thanks for looking at it :-) | 00:02 | |
jdv79 | any idea on the status of the metamodel stuff? | 00:04 | |
00:04
weinig|food is now known as weinig
|
|||
markstos | What's the recommend tool for viewing the kwid in Perl 6 modules ? | 00:06 | |
renormalist | TreyHarris: np :-) | ||
svnbot6 | r13050 | trey++ | [t/perl5/array.t] | 00:07 | |
r13050 | trey++ | Un-todo'd passing test. Wrapped some | |||
r13050 | trey++ | failing tests in eval so that skip_rest | |||
r13050 | trey++ | could be removed. Wrapped failing | |||
r13050 | trey++ | expressions in eval, and tested them. | |||
r13050 | trey++ | Removed voodoo that doesn't seem necessary | |||
r13050 | trey++ | anymore. | |||
TreyHarris | renormalist: oh, if it's an easy hack, ? can't introduce a regex anymore, and since ?() is used all over the place in pugs' tests, it would be helpful if that were fixed :-) | 00:14 | |
theorbtwo | Er, what's ?() now? | 00:15 | |
TreyHarris | theorbtwo: boolean context | 00:16 | |
theorbtwo slaps his head. | |||
TreyHarris | like @() array context, %() hash context, !() boolean negating context, $() scalar context | ||
theorbtwo | I don't think of those as having parens after them, for some silly reason, so I was thinking of something more function-like and less operator-like. | 00:17 | |
(And you missed ~, string context, and +, numeric context.) | |||
00:19
ludan joined
00:20
markstos left
00:21
markstos joined
|
|||
TreyHarris | yup. without the parens, my brain starts to hurt though. maybe i'll get more comfortable with ~expr versus expr1 ~ expr2 as time goes on.... | 00:21 | |
svnbot6 | r13051 | trey++ | [t/perl5/array.t] | ||
r13051 | trey++ | Uncommented and munged a hardfail into | |||
r13051 | trey++ | something testable. | |||
markstos | To answer my own question about reading kwid. I found "perl-doc", but it is just currently a kwid to HTML translator. Are they are any direct kwid viewers ? | 00:22 | |
TreyHarris | markstos: i've been meaning to look into that myself. there's an ext/Kwid-Event-Parser, but I don't know what it does | 00:23 | |
markstos | I'm getting frustrated with reading the source of Test.pm each time I wonder about a specific testing method. | 00:24 | |
TreyHarris | i must have run "perldoc ext/Test/lib/Test.pm" a hundred times.... | ||
lol | |||
== markstos | |||
spooky | |||
markstos | I prefer kwid to POD for looks, but I'm considering PODifying Test.pm until kwid tools catch up. | ||
Can I get a ++ ? | 00:25 | ||
TreyHarris | markstos++ | ||
TreyHarris++ | |||
perlbot | What kind of idiot karmas himself? Your kind of idiot! | ||
TreyHarris | lol | ||
markstos | lol | ||
TreyHarris | &'s for a few | ||
markstos | Ok. I'll PODify Test.pm now. | ||
00:27
nekokak joined
00:31
renormalist_ joined
|
|||
svnbot6 | r13052 | markstos++ | convert Test.pm docs from kwid to POD as there are more tools | 00:39 | |
r13052 | markstos++ | and familiarity with POD now. Once there are kwid tools for | |||
r13052 | markstos++ | easy viewing, we can change it back. | |||
00:40
GeJ left
|
|||
TreyHarris | hmmm.... when a test in a loop is todo'd, and it succeeds some of the time, what to do? (pun unintentional.) untodo it? leave it todo'd? or go to the trouble of teasing that case out of the loop? | 00:40 | |
markstos | Ah. feather.perl6.nl/~markstos/Test.pm.html | 00:41 | |
lambdabot | Title: Test - Test support module for perl6, tinyurl.com/p2dor | ||
markstos | An easy Test.pm reference. :) | ||
TreyHarris | perlbot: learn perl6 Test.pm as feather.perl6.nl/~markstos/Test.pm.html | 00:42 | |
perlbot | added perl6 Test.pm to the database | ||
lambdabot | Title: Test - Test support module for perl6, tinyurl.com/p2dor | ||
markstos | TestHarris: ideally-- extract the test case. | ||
A simplified test case might be easier to work with anyway. | |||
audreyt | 00:39 < TreyHarris> actually, i know it's not. Proxy objects aren't implemented. | 00:43 | |
lambdabot | audreyt: You have 1 new message. '/msg lambdabot @messages' to read it. | ||
markstos | but it's easy to be idealistic from afar-- you are the one staring it at. :) | ||
audreyt | actually, it's hacked in by schwern long ago :) | ||
"user defined" proxy objects aren't implemented. | |||
builtin ones like %*ENV or $*CWD works fine | |||
markstos | TreyHarris: so we do we get that information /out/ of perlbot later ? | ||
perlbot: what is Test.pm? | 00:44 | ||
perlbot | I already have an entry for what | ||
audreyt | perlbot: Test.pm | ||
TreyHarris | audreyt: ah... what's the difference? they can be written in Haskell but not perl? | ||
perlbot: perl6 Test.pm | |||
perlbot | feather.perl6.nl/~markstos/Test.pm.html | ||
lambdabot | Title: Test - Test support module for perl6, tinyurl.com/p2dor | ||
audreyt | TreyHarris: exactly. though I think the plumbing is here for userdefined proxy too | ||
just need to be exposed | 00:45 | ||
audreyt backlogeth | |||
TreyHarris | cool... if it were exposed, i think i could actually code up my cloning proposal rather than just describing it. oh... i guess i'd need user-defined trait_auxiliary:is support too | ||
audreyt | noted | ||
is there test for latter? | 00:46 | ||
markstos | The test.pm docs say "This function currently uses require() since Pugs does not yet have a proper use() builtin." I've found the reverse to be true-- I've had better look with "use" than "require" | ||
TreyHarris | audreyt: i don't remember if i looked. i'll check, and if not, i'll write one asap | ||
audreyt | markstos: right it's a commentrot | ||
markstos | audreyt: so just remove the comment ? | ||
audreyt | TreyHarris: cool! I've been lately biased toward working at failing tests _with smartlinks_ | ||
TreyHarris often gets diverted when he starts looking at stuff inside t/ and comes up for breath hours later not having accomplished what he intended to | |||
audreyt | markstos: sure | ||
TreyHarris | audreyt: dunno if you watch the svn logs, but many of my recent commits have been smartlinking :-) | 00:47 | |
audreyt | TreyHarris: that's fine... it all adds up :) | ||
TreyHarris: I have :) | |||
audreyt still reviews each and every diff... or at least s/review/skim/ | |||
TreyHarris | i should clean up my "svn-explorer" script that lets me quickly work through recent commits trn-style and stick it in util/ | 00:48 | |
svnbot6 | r13053 | markstos++ | Test.pm: remove note suffering from comment rot. | ||
TreyHarris | but it makes a lot of assumptions about my pugs installation right now. | ||
markstos | I'm close to getting a basic CGI::App port done with tests passing. After that, I might help improve the Test.pm docs and other testing stuff. | 00:49 | |
audreyt | TreyHarris: that never stops pugs committers from checking things in :) | ||
markstos: oooh | |||
00:50
hikozaemon joined
|
|||
markstos | I saw that agentz recently commited so that this works: L<foo.com> | 00:50 | |
I like that because, because I can copy and paste Syn URLs from my browser. :) | |||
s/because, // :) | 00:51 | ||
TreyHarris | markstos: oh, btw, i've cleaned up a few of your smartlinks recently. don't put the section name in quotes, do include pod directives like C<> in the section names, and run util/smartlinks.pl --check t/<mumble>.t before you checkin to see if they're all valid | 00:53 | |
markstos | TreyHarris: Thanks for the tip! | 00:54 | |
TreyHarris | audreyt: there's some ambiguity in the synopses as to whether it's written trait_auxiliary:is or trait_auxiliary:<is>. the latter is tested, the former is not | 00:56 | |
audreyt | ok. I think :is is internal storage form, :<is> is canonical | ||
so test for latter = correct | |||
markstos just noticed t/README, which already includes all of trey's tips. | 00:57 | ||
TreyHarris | audreyt: thanks, i'll smartlink them :-) | ||
audreyt | moose! :) | ||
audreyt goes grepping for breakfast -- bbiab | 00:58 | ||
TreyHarris | markstos: yup. good tips in /lib/Pugs/Doc/Hack.pod too, and IMHO it's too-well-hidden-away | ||
markstos | TreyHarris: link it it from the wiki, or pod2html ~/public_html/Hack.html, and link to /that/ from the wiki. | ||
TreyHarris | markstos: i don't have a feather account, would you mind? | 00:59 | |
markstos | coming up | 01:00 | |
01:00
dolmans joined
|
|||
audreyt | @tell xerox install File::chdir from CPAN and use { local $CWD = '/foo'; ... } | 01:01 | |
lambdabot | Consider it noted. | ||
audreyt | written, unsurprisingly, by the same Schwern. | 01:02 | |
TreyHarris | oh... yes... i've used that myself. | 01:03 | |
TreyHarris smacks his head | |||
markstos | feather.perl6.nl/~markstos/Hack.html | ||
lambdabot | Title: Pugs::Doc::Hack - How to hack on Pugs | ||
markstos | Wow, looks really useful. | ||
It should really be in doc/ --- that's where I'd expect to find it. | |||
TreyHarris | My memory for CPAN modules is not what it used to be | ||
01:05
scook0 joined
|
|||
TreyHarris | markstos: you may want to go behind the tests you've added and fix their svn props as described in that doc. i've caught a couple of them as you committed them, but i haven't gone back and looked exhaustively. | 01:06 | |
markstos | Ok. I' | ||
I'm totally unaware of svn props usage, so I'm not surprised. | |||
svnbot6 | r13054 | markstos++ | Move lib/Pugs to docs/Pugs for consistency and ease of finding. | 01:09 | |
r13054 | markstos++ | I'll document this move the Pugs/Doc/Hack.pod layout docs. | |||
markstos | So the svn props util script is normally run just after adding new files? The doc said to run it... it didn't say /when/ :) | 01:11 | |
svnbot6 | r13055 | markstos++ | reflect move of lib/Pugs to docs/Pugs | ||
TreyHarris | markstos: you can run it any time after you do the add. preferably before you do the commit :-) | 01:22 | |
markstos | Ah. | ||
svnbot6 | r13056 | markstos++ | clarify when to run the svn props scripts. | 01:26 | |
markstos | Should this emit an error? | 01:28 | |
?eval my @r; @r.push<hi>; say @r.perl; | |||
01:28
evalbot_r13037 is now known as evalbot_r13055
|
|||
evalbot_r13055 | OUTPUT[[] ] Bool::True | 01:28 | |
01:28
peacock joined
|
|||
TreyHarris | i think it should emit an error. S06, I think, specifies that you can't call a subroutine like that | 01:29 | |
01:29
peacock left
|
|||
TreyHarris | even if the subroutine returns a hash, which that doesn't | 01:29 | |
01:29
peacock joined
|
|||
TreyHarris | s/subroutine/routine/g | 01:29 | |
markstos | Ok. Adding test. | 01:30 | |
TreyHarris | *laugh* that irc log stats thing somebody posted a couple weeks ago said that my favorite things to say were "i think" and "specifies". i think i just proved that it specifies my behavior accurately ;-) | ||
markstos | funny. | 01:32 | |
01:32
mako132_ joined
|
|||
svnbot6 | r13057 | markstos++ | [t/builtins/arrays/push.t] | 01:35 | |
r13057 | markstos++ | New failing test for @a.push<hi>: it should emit an error. | |||
markstos | I just porting the Dump function from CGI.pm-p5 and noticed there was a bug in it: | 01:51 | |
rt.cpan.org//Ticket/Display.html?id=21341 | |||
lambdabot | Title: #21341: PATCH: Param names not escaped properly in Dump, allowing raw HTML throu ..., tinyurl.com/gbb6f | ||
markstos | s/just/was just/ | ||
obra | seen nothingmuch | 01:55 | |
TreyHarris | hmm. audreyt, what's your understanding of how @r.push<hi> should parse, if it should parse at all? | 01:58 | |
markstos | TreyHarris: are you wondering whether it should parsefail, rather than be a runtime error ? | 01:59 | |
TreyHarris | markstos: yep. | ||
markstos | Earlier feedback is always nicer. | ||
TreyHarris | markstos: apologies, i didn't think of the distinction until i saw your diff, or i would have mentioned it earlier | ||
markstos | No apology needed. I thought it as I was creating the patch, but I knew it could be refined later. | 02:00 | |
TreyHarris | yep, it's just that in this case, if it should be parsefail, then "success" will be defined as failing not just that test, but any tests which later might follow :-) | 02:01 | |
i like to future-proof tests when possible, because a good change causing more test failures is demotivational ;-) | 02:02 | ||
markstos | But we would switch to using eval with a string, rather than dies_ok with a block, right ? | ||
TreyHarris | right. ok !(eval '...') is how i usually write it | ||
or rather | 02:03 | ||
right. ok !(eval '...; 1') is how i usually write it | |||
markstos | And that would cover a parsefail case, as well as a runtime error? Then it seems there's no downside to switching it now. | ||
TreyHarris | markstos: the downside is you're running string eval, which makes smoke slow. :-) correct tests are more important than fast tests though | 02:11 | |
markstos | Oh. On the other hand, yesterday I got rid of two test scripts by consolidating them, so that should bring a small performance boost. | 02:12 | |
We can leave it as a dies_ok now, and then it it really does become a parsefail, someone will notice and fix the script. :) | 02:13 | ||
TreyHarris | true enough :-) | 02:14 | |
02:16
reZo joined
02:19
diakopter joined
|
|||
dolmans | markstos: you can use eval_dies_ok($str ... too, which is essentially ok !(eval $str ... | 02:22 | |
TreyHarris | dolmans: yes, in this case it is. but eval_dies_ok runs the eval in its lexical context, so you can't use it when it refers to something in the test's lexical context | 02:25 | |
i've been bitten by that one many times | |||
02:26
diakopter left
|
|||
TreyHarris | ok !(eval $str) always works, so I tend to just use that now :-) | 02:27 | |
dolmans | TreyHarris: true, and sometimes package scope is annoying. | ||
markstos | TreyHarris: I can't reminder my password to register with FreeNode to msg you directly | 02:34 | |
TreyHarris | ahh, ok, i'll make a channel | 02:35 | |
markstos | or do this: /msg nickserv set unfiltered on | ||
And you can get msgs from unregistered users | |||
02:46
reZo joined
|
|||
TreyHarris | markstos: heh, my script fired that opped the last person on the channel before i left :-) | 02:50 | |
TreyHarris &'s to decommute | |||
02:54
weinig is now known as weinig|zZz
|
|||
markstos wraps up another blog post, encouraging more people to get involved in Perl 6 | 02:56 | ||
clkao | markstos++ | ||
markstos | clkao: Would you like a preview? | 02:57 | |
feather.perl6.nl/~markstos/three_reasons.txt | |||
if you have feedback, I can incorporate it before I officially publish it. | 03:00 | ||
clkao | looks fine to me. surely you want to mention the irc? | 03:02 | |
markstos | like "join us on #perl6" or something ? | ||
clkao | ya | 03:03 | |
markstos | Ok. | ||
TreyHarris | markstos: oh, i was just heading out the door when i noticed my pugs make didn't even get off the ground because Hack.pod had moved. You may want to make a minor change to Makefile.PL so that people's Makefiles will rebuild | ||
markstos | will do. | 03:04 | |
TreyHarris &'s for real this time | |||
markstos | We're live: pugs.blogs.com/pugs/ | 03:12 | |
03:13
mako132_ joined
|
|||
markstos | I think we need to start Pugs::Diagnostics.. or something. To help people when they get errors like this: | 03:16 | |
Can't modify constant item: VUndef | |||
What's my crime? | 03:22 | ||
?eval my @result; for <a b> -> $param { @result.push("<li><strong>$param</strong></li>"); } | |||
03:22
evalbot_r13055 is now known as evalbot_r13057
|
|||
evalbot_r13057 | Error: Can't modify constant item: VUndef | 03:22 | |
markstos | I suspect I accidently involved some interpolation operator I'm unaware of. | ||
Ah, it was $param< | 03:23 | ||
svnbot6 | r13058 | markstos++ | CGI.pm: implement code/docs/test for "Dump" method, like CGI.pm-P5 has. | 03:45 | |
TreyHarris | ?eval my @result = gather { for <a b> -> $param { take "<li><strong>{$param}</strong></li>" } } | 03:50 | |
03:50
evalbot_r13057 is now known as evalbot_r13058
|
|||
evalbot_r13058 | ["<li><strong>a</strong></li>", "<li><strong>b</strong></li>"] | 03:50 | |
TreyHarris | I like gather/take :-) | 03:51 | |
markstos | I haven't used it yet. | ||
Wouldn't a simple "push" work there, though? | 03:52 | ||
TreyHarris | of course, but I don't think push is simpler... it's only simpler from the perspective of being familiar to perl 5 programmers. you're not "pushing" anything in that case, there's no stack there... you want to gather up some things after they've been munged in a certain way | 03:55 | |
?eval <a b>.map:{ "<li><strong>{$^param}</strong></li>" } | 03:56 | ||
markstos | but in this case the "Munging" is just creating a string, and that part would remain with a push call there. | ||
evalbot_r13058 | ("<li><strong>a</strong></li>", "<li><strong>b</strong></li>") | ||
TreyHarris | might be more familiar to functional programmers. timtowtdi, of course :-) | ||
i don't understand. push? push is something you do to stacks. you're creating a list of strings, aren't you? | |||
markstos | right. | 03:57 | |
Later to be joined with "\n". | |||
You're say: conceptually, the stack is not a the best metaphor, and gather/take avoids it ? | 03:58 | ||
TreyHarris | ?eval <a b>.map:{ "<li><strong>{$^param}</strong></li>" }.join("\n") | ||
evalbot_r13058 | "<li><strong>a</strong></li>\n<li><strong>b</strong></li>" | ||
markstos | If you want to play with a refactor, I just check in the result to the CGI.pm as the Dump method. | ||
The code is a mostly-straight port from the P5 Dump method. | 03:59 | ||
Now I'm playing with "as_yaml" as an alternative, but I'm finding the structure that Pugs generates isn't as "clean" as I would have hoped. | |||
TreyHarris | right. "push == 'put something onto the end of a list'" is a perl5ism. whether it's a perl6ism as well remains to be seen. but i try to look at all perl 6 code from a new set of eyes, not as a translation of perl 5 with some nifty new features | ||
markstos | Yes: I'm definitely interested in learning about and evaluating new styles myself. | 04:00 | |
Simply translating P5 into a new-but-same syntax seems like a waste of time. | |||
TreyHarris | especially as we'll have tools to do that for us automatically ;-) | 04:01 | |
markstos | you mean, to automatically waste time? | ||
;-) | |||
TreyHarris | yes, of course. ever played WoW? :-) | ||
markstos | No, but I heard it is popular... must be for a reason. | ||
TreyHarris | the ultimate time-wasting tool ;-) | 04:02 | |
markstos | TreyHarris: by the way, I did a 'make' with problem. | 04:03 | |
maybe you needed a "make clean" ... or something. | |||
TreyHarris | yes, i did. and anyone else who last built just prior to r13054 but later than... um... i'd have to dig up the exactly rev, will need to as well. i suggested you change Makefile.PL so they won't have to manually make clean | 04:05 | |
markstos | Could you help me? I looked and couldn't find what needed to be changed. | ||
TreyHarris | nothing. just some change, so Makefile.PL's timestamp gets updated, forcing a make clean | 04:06 | |
markstos | Uh oh, it's 00:01 o'clock. I'm going to turn into a pumpkin soon. | ||
No wonder I couldn't find the right spot. | |||
TreyHarris | Makefile.PL automatically generates document targets from the podfiles it finds. you moved one of the podfiles, but didn't update Makefile.PL. but Makefile still has a reference to the old loc. so it bombs, unable to find Hack.pod in its prior location | 04:07 | |
svnbot6 | r13059 | markstos++ | TreyHarris suggested making a trivial change after moving | 04:09 | |
r13059 | markstos++ | some files from lib/Pugs to docs/Pugs. Reportedly, this | |||
r13059 | markstos++ | prevent a build-break for some people. | |||
TreyHarris | anyway gather/take becomes more useful when it's not just linearly mapping: | 04:16 | |
?eval my @vowels = <a e i o u>; my @after_vowel = gather { for each(@@vowels) -> $letter, $next { take $next if $letter eq any(@vowels) } } | |||
04:16
evalbot_r13058 is now known as evalbot_r13059
|
|||
evalbot_r13059 | Error: Undeclared variable: "$next" | 04:16 | |
TreyHarris | unfortunately that syntax doesn't work yet. | ||
:-) | |||
erm... that's not what i meant. | 04:17 | ||
?eval my @vowels = <a e i o u>; my @after_vowel = gather { for each(@@<a..z>) -> $letter, $next { take $next if $letter eq any(@vowels) } } | |||
evalbot_r13059 | [] | ||
TreyHarris | there we go. :-) still doesn't work, but progress ;-) | ||
and wouldn't work anyway, unless the alignment happened to be right. but that was a contrived example i just pulled out of thin air anyway :-) | 04:18 | ||
?eval my @vowels = <a e i o u>; my @letters = 'a'..'z'; my @next_letters = @letters[1..@letters - 1,0]; my @after_vowel = gather { for each(@letters;@next_letters) -> $letter, $next { take $next if $letter eq any(@vowels) } }; | 04:24 | ||
evalbot_r13059 | ["b", "f", "j", "p", "v"] | ||
TreyHarris | there we go. lol. | ||
i think an iterative approach would be much clearer there ;-) | |||
04:40
hermax_ joined
04:46
justatheory joined
04:47
justatheory joined
04:48
justatheory joined
04:49
justatheory joined
04:50
justatheory joined
04:51
justatheory joined
04:52
justatheory joined
04:55
justatheory joined
04:56
justatheory joined,
drrho joined
04:57
justatheory joined
04:58
justatheory joined
04:59
justatheory joined
05:01
justatheory joined
05:02
justatheory joined
05:03
justatheory joined
05:04
justatheory joined,
mjk joined
05:05
justatheory joined
05:08
justatheory joined
05:09
justatheory joined
05:10
justatheory joined
05:12
justatheory joined
05:14
justatheory joined
05:15
justatheory joined
05:16
bjoern_ joined,
justatheory joined
|
|||
bjoern_ | ?eval 0xf6 + 0xffffffffffffffff | 05:17 | |
evalbot_r13059 | 18446744073709551861 | ||
05:17
justatheory joined,
bjoern_ left
05:18
justatheory joined
05:19
justatheory joined
05:20
justatheory joined
|
|||
nothingmuch | obra: pong | 05:20 | |
05:21
justatheory joined
05:22
justatheory joined,
statico joined
05:23
justatheory joined
05:24
justatheory joined
05:26
justatheory joined
05:27
justatheory joined
05:28
justatheory joined
05:29
justatheory joined
05:30
justatheory joined
05:31
justatheory joined
05:33
justatheory joined
|
|||
TreyHarris | 17:46 < audreyt> TreyHarris: cool! I've been lately biased toward working at failing tests _with smartlinks_ | 05:34 | |
05:34
justatheory joined
|
|||
TreyHarris | audreyt: does that mean that I should un-todo those tests? :-) | 05:34 | |
05:35
justatheory joined,
kanru joined
05:36
justatheory joined
05:37
justatheory joined
05:38
justatheory joined
05:39
justatheory joined
05:40
justatheory joined
05:42
justatheory joined
|
|||
Teratogen | are we having fun yet? | 05:42 | |
05:42
justatheory joined
05:43
justatheory joined
|
|||
TreyHarris | ?eval .fun | 05:43 | |
evalbot_r13059 | Error: No compatible subroutine found: "&fun" | ||
TreyHarris | guess not | ||
05:44
justatheory joined
05:45
justatheory joined
05:48
justatheory joined
|
|||
obra | nothingmuch: I wanted to thank you for mailtomutt ;) | 05:48 | |
05:48
justatheory joined
05:50
justatheory joined
|
|||
nothingmuch | obra: wow | 05:51 | |
that's old | |||
05:51
justatheory joined
05:52
justatheory joined
|
|||
gaal | audreyt: hey. two leftovers in Sig... | 05:52 | |
nothingmuch | morning gaal | 05:53 | |
gaal | first, we need to get the existential coercion to work again (ie, make p_unpacking :: Maybe PureSig again) | ||
hey nothingmuch! | |||
obra | nothingmuch: I was a bit surprised to see your name on it | ||
05:53
justatheory joined
|
|||
gaal | second, is there a less error prone way of threading traits/traits'/traits''' etc. in that function? | 05:54 | |
05:54
justatheory joined
|
|||
nothingmuch | obra: good surprised or bad surprised? ;-) | 05:55 | |
05:55
justatheory joined
|
|||
gaal | oh, actually there's a third thing, support for elided varnames (ie unpacked-only params). but there are two p6-l posts that need to be answered for that | 05:55 | |
nothingmuch ignores justatheory to see if it'll help | 05:56 | ||
obra | nothingmuch: just amused. | ||
it seems to mostly do what I want | |||
I'm tired to being unable to fully keyboard mail.app | |||
nothingmuch | it should be fixed up a bit | ||
*nod* | 05:57 | ||
05:57
justatheory joined
05:58
justatheory joined
|
|||
nothingmuch | the icon contains an easter egg you might appreciate, too ;-) | 05:59 | |
05:59
justatheory joined
|
|||
TreyHarris | nothingmuch: oh, is he still popping in and out? i ignored him an hour ago :-) | 06:00 | |
06:00
justatheory joined
|
|||
nothingmuch | ah, so appearantly it does help ;-) | 06:00 | |
06:01
justatheory joined
06:02
justatheory joined
|
|||
nothingmuch goes to the post office to mail out A Pattern Language | 06:03 | ||
06:03
justatheory joined
06:06
justatheory joined
06:07
justatheory joined
06:08
justatheory joined
06:09
justatheory joined
06:10
justatheory joined
06:11
justatheory joined
|
|||
lumi | /ignore justatheory JOINS QUITS | 06:11 | |
Under irssi | 06:12 | ||
06:12
pinPoint joined
06:13
justatheory joined
06:14
justatheory joined
06:15
justatheory joined
06:16
justatheory joined
06:17
justatheory joined
06:18
justatheory joined
06:19
justatheory joined
06:20
justatheory joined
06:21
justatheory joined
06:22
justatheory joined
06:23
drrho joined,
justatheory joined
|
|||
TreyHarris | what would cause a test to not print its trailing status, despite getting through the last test? | 06:23 | |
TreyHarris wishes for pugs debugger sometimes | 06:24 | ||
audreyt | TreyHarris: tried pugs -d ? | ||
not quite a debugger, but in practice for me comes close | |||
TreyHarris | oh, you're kidding me. | ||
oh. ok :-) | |||
06:24
justatheory joined
|
|||
TreyHarris | i'll try it | 06:24 | |
audreyt | pugs -d your_code_here.pl | ||
it's a 10-min hack | |||
don't expect too much :) but it's useful | 06:25 | ||
TreyHarris | cool. | ||
i was semi-seriously asking before, though: should i un-todo those trait_auxiliary tests? | |||
06:25
justatheory joined
|
|||
audreyt | you can use the force_todo device | 06:26 | |
as a crude hack. | |||
not aware of better ways | |||
TreyHarris | no, i meant... | ||
17:46 < audreyt> TreyHarris: cool! I've been lately biased toward working at failing tests _with smartlinks_ | |||
there are tests for it, but they're not failing | 06:27 | ||
audreyt | ah right. leave them failing | ||
I'll todo or implement them as part of triage | |||
thoug trait_aux is almsost definitely todo material for this week | |||
TreyHarris | no, they're not failing because they're todo | ||
audreyt | so the end result is likely same | ||
TreyHarris | *grin* ok :-) | ||
audreyt | :) | ||
I finally repaird my ~/.svk space | |||
syncing some 400 changes | 06:28 | ||
sync the macbook went down | |||
s/sync/since/ | |||
TreyHarris | more of the fallout from your failing macbook? | ||
audreyt | yeah, finally seeing end of tunnel | ||
TreyHarris | i would just go insane | ||
audreyt | I considered that to | ||
*too | |||
decided to not do that | 06:29 | ||
TreyHarris | :) | ||
06:31
justatheory joined
|
|||
audreyt | bbiab.. | 06:31 | |
06:34
justatheory joined
|
|||
TreyHarris | audreyt: i'd be willing to start implementing missing S29 builtins and S{none(29)} syntactic sugar in Perl 6 if you think it would be worthwhile | 06:34 | |
06:36
justatheory joined
06:37
joshmoore joined
|
|||
TreyHarris | joshmoore: josh moore formerly of ibiblio? | 06:37 | |
06:38
justatheory joined
06:39
justatheory joined
|
|||
joshmoore | nope, sorry. | 06:39 | |
TreyHarris | joshmoore: np, just didn't want to snub you if you were an old coworker :-) | 06:40 | |
svnbot6 | r13060 | trey++ | [t/packages/require_and_use.t] | ||
r13060 | trey++ | Un-todo'd passing test. | |||
r13060 | trey++ | Changed test messages in loops to include | |||
r13060 | trey++ | the string being attempted, as the counter | |||
r13060 | trey++ | was counterintuitive. | |||
audreyt | TreyHarris: it certainly would! more helpful even would be to separate them into src/perl6/Num.pm, etc | 06:41 | |
bbiab for real :) | 06:42 | ||
06:44
justatheory joined
06:47
justatheory joined
06:48
justatheory joined
06:49
justatheory joined
06:50
justatheory joined
06:52
deepthink joined
06:54
justatheory joined
06:55
justatheory joined,
deepthink left,
justatheory joined
06:57
justatheory joined
06:58
f0rth joined
06:59
justatheory joined
07:01
f0rth joined
07:02
iblechbot joined
07:04
justatheory joined
07:05
justatheory joined
07:10
justatheory joined
|
|||
pinPoint | . | 07:12 | |
07:13
justatheory joined
07:14
justatheory joined
07:15
justatheory joined
07:16
justatheory joined
07:19
justatheory joined
07:20
stennie joined
|
|||
svnbot6 | r13061 | trey++ | [t/oo/traits/basic.t] | 07:22 | |
r13061 | trey++ | Added a missing test. | |||
07:25
justatheory joined
07:28
justatheory joined
07:29
onsen joined
07:32
justatheory joined,
mjk joined
07:33
justatheory joined
07:34
justatheory joined
07:35
justatheory joined
07:36
justatheory joined
07:38
justatheory joined
07:39
justatheory joined
07:40
justatheory joined
07:41
justatheory joined
07:42
justatheory joined
07:46
justatheory joined
07:47
justatheory joined
07:49
lilo joined
|
|||
lilo | hmmm, I'm going to be bad now | 07:49 | |
07:50
lilo sets mode: +b justatheory!n=justathe@dsl093-038-250.pdx1.dsl.speakeasy.net!##unavailable
|
|||
nothingmuch reenables clothes optional mode | 07:50 | ||
lilo | make sure a channel staffer turns that off in a few hours, when the guy is back | ||
nothingmuch | audreyt: morning | 07:51 | |
lilo waves and & | |||
pinPoint | . | ||
nothingmuch | pinPoint: ? | 07:52 | |
08:00
tifo joined
|
|||
nothingmuch | cute =) www.designboom.com/contemporary/peg.html | 08:08 | |
lambdabot | Title: ‘clothes peg iconography’, tinyurl.com/fwkqu | 08:09 | |
08:18
drrho joined
08:19
kane-xs joined
08:25
onsen joined
08:53
bsb left
08:55
ruoso joined
09:06
renormalist joined
09:08
f0rth joined
|
|||
svnbot6 | r13062 | renormalist++ | cperl-mode.el: handle regexp modifiers :Perl5 :perl5 :P5 more explicity | 09:14 | |
09:24
buetow joined
09:37
dok joined
09:44
tibbe joined,
tibbe left
|
|||
svnbot6 | r13063 | audreyt++ | * Fix "make ghci" in conjunction with Perl5 embedding; | 09:50 | |
r13063 | audreyt++ | embed flags now never affects "make ghci" prompts, and | |||
r13063 | audreyt++ | the _stub.o files, if any, are deleted prior to entering ghci. | |||
09:54
elmex joined
09:55
ludan joined
09:58
xinming joined
|
|||
TreyHarris | audreyt: i ran ext/libwww-perl/t/live.t five times in a row, and three of those times I got sigbus, "illegal hardware instruction", once i got...oh, it scrolled off but it told me to report a compiler error to GHC, and once all tests passed :-) | 10:04 | |
10:04
nekokak_ joined
|
|||
nothingmuch | hmm | 10:29 | |
10:30
onsen joined
|
|||
TreyHarris | time for me to sleep | 10:32 | |
nothingmuch | oh | ||
i thought you woke up early | |||
TreyHarris | no, hacksies keep the sleepydust away ;-) | ||
TreyHarris & zzzzz | 10:33 | ||
nothingmuch woke up at 8:15 today... </impressive> | |||
ciao | |||
10:44
tifo joined
10:49
loumz joined
10:58
ruoso joined
11:29
agentzh joined
|
|||
agentzh | TreyHarris: i suggest you stick with eval_dies_ok as much as possible since it provides detailed parsefail diagnostic info via stderr. | 11:31 | |
11:34
xerox joined
11:35
xerox joined
11:37
loumz left
11:54
agentzh joined
|
|||
agentzh | TreyHarris: btw, for smartlinks, putting section name in quotes is okay. :) | 11:55 | |
11:55
chris2 joined
|
|||
agentzh | marstos: there's something wrong with the format of your last pugs blog post. i strongly recommend you to use pod to generate well-formed HTML. ;-) | 11:57 | |
*markstos | |||
11:58
ruoso joined
11:59
stennie left
12:04
plisk joined
12:05
iblechbot joined
|
|||
prism | is it normal for compile to take over 800 hours? | 12:11 | |
77337 root 1 128 0 26684K 25112K CPU0 0 792:26 99.22% ghc-6.4.2 | |||
well nearly 800 hours | |||
nothingmuch | 800 hours is about 1 month | ||
prism | maybe thats minutes | 12:12 | |
nothingmuch | *nod* | ||
prism | is it normal to take that long | ||
nothingmuch | in that case - maybe | ||
prism | its a fastish system | ||
dual amd athlon mp | |||
nothingmuch | hmm | ||
ghc 6.6 might improve the situation | |||
how much ram does it have? | |||
prism | 4gb | ||
nothingmuch | should be plenty | ||
prism | each chip is around 2Ghz | ||
nothingmuch | i'm afraid i can't help much more | ||
prism | and its using 100% of bot chips | 12:13 | |
both* | |||
nothingmuch | it doesn't sound normal | ||
chris2 | 13h seems a bit too much | ||
prism | hmm i think ill grab it from a package instead of using ports | ||
chris2 | even my slow ibook only needs ~8h, with a lot less ram | ||
gaal | prism: what file is the compilation on? | ||
prism | ../../../glafp-utils/mkdependC/mkdependC -f .depend -I. -Iinclude -I../../includes -- -O -I. -Iinclude -- cbits/directory.c cbits/rawSystem.c | ||
/usr/ports/lang/ghc/work/ghc-6.4.2-boot/bin/i386-unknown-freebsd/ghc-6.4.2 -M -optdep-f -optdep.depend -osuf o -optdep--exclude-module=System.Directory.Internals -H16m -O -I. -Iinclude -Rghc-timing -ignore-package Cabal -I../../../libraries -fglasgow-exts -no-recomp Compat/Directory.hs Compat/RawSystem.hs Distribution/Compat/FilePath.hs Distribution/Compat/ReadP.hs Distribution/Compiler.hs Distribution/GetOpt.hs Distribution/Install | |||
edPackageInfo.hs Distribution/License.hs Distribution/Package.hs Distribution/ParseUtils.hs Distribution/Version.hs Language/Haskell/Extension.hs | |||
err | |||
sorry for the mini flood | 12:14 | ||
didnt realize it was that big | |||
12:14
markstos joined
|
|||
gaal | er, what are you compiling? pugs or ghc? | 12:14 | |
prism | pugs | ||
nothingmuch | looks like it's bootstrapping ghc to do that | ||
prism | ghc must be a dep | ||
gaal | ouch | ||
nothingmuch | get a binary ghc | 12:15 | |
prism | permission for another mini flood? | ||
gaal | perlbot nopaste | ||
perlbot | Paste your code here and #<channel> will be able to view it: sial.org/pbot/<channel> | ||
pasteling | "prism" at 88.109.10.46 pasted "pugs" (7 lines, 584B) at sial.org/pbot/19486 | ||
gaal | pugs depends on freetype? | 12:16 | |
prism | according to ports it does | ||
gaal | that's.... interesting | ||
prism | its ok i grabbed it via pkg | 12:17 | |
its nearly installed now | |||
but that compile was worrying | |||
what is ghc anyway and why is it such a monster to compile | |||
gaal | prism: I don't know much about gentoo, but isn't is possible to get a binary ghc? | ||
nothingmuch | ghc is the glasgow haskell compiler | ||
gaal | ghc is the haskell compiler we use. | ||
nothingmuch | that's freebsd, not gentoo | ||
prism | gaal, i dont know much about gentoo either | ||
gaal | (and depend on) | ||
oops, sorry, don't know much about freebsd either :) | 12:18 | ||
prism | :) | ||
nothingmuch, hmm seems a big compile still.. its like compiling some of the big math programs for linear calculations | |||
i set them things going before i go on holiday | |||
lol | |||
nothingmuch | prism: same ballpark, methinks | ||
haskell is a tricky language to compile | 12:19 | ||
and ghc is a tricky project | |||
since ghc is written in haskell... | |||
gaal | prism: yes you generally don't want to build your own ghc unless you really need to. | ||
prism | fuck ghc depends on compat 4x | ||
yuck* | |||
sorry bad typoe their* | |||
nothingmuch | heh | ||
prism++ # cutet | 12:20 | ||
prism | :) | ||
nothingmuch | ack, your typos are infecting me | ||
gaal | what's compat 4x? | ||
prism | gaal, their are 4 primary releases so to speak of freebsd | ||
4 | |||
5 | |||
and the latest 6 | |||
current is 7 | |||
4 has been dropped its well in-efficiant | |||
gaal | ouch again. | ||
prism | dragonfly is based on 4 it uses a diffrent threading model | ||
5 was an improvement, to threading at least. | 12:21 | ||
6 was the improvement again of 5 | |||
and 7 is a big improvement over 6 | |||
but the changes where so large they could not be put into the same 'id' i.e. 6.1-release 6.2-release etc. | |||
so they had to up the entire 'id' | |||
well version is probably a more correct word | |||
12:22
Limbic_Region joined
|
|||
nothingmuch | prism: you might want to ask the freebsd folks on #haskell | 12:22 | |
they'll prollly know more | |||
prism | its ok i have the package now, I have never even seen a perl6 script im just goona install and fiddle around with it with google open, im mainly intrested in more sane if's | ||
nothingmuch | well, you can ask Juerd for an account on feather, the perl 6 devel box | 12:23 | |
so that you can toy around with a compiled pugs | |||
prism | if ($blah eq ($bleh || $test)) { .. } instead of: 'if (($blah eq $bleh) || ($blah eq $test)) { ... } | ||
nothingmuch | those are junctions | ||
if ( $blah eq ( $bleh | $test ) ) { } # one pipe | 12:24 | ||
gaal | on e| | ||
prism | junctions you say hmm sorry incorrect terminology i just know it would help me alot when i have 20 or 30 nested | ||
i have lines in standard perl that are so long it takes 5 minutes to get to the right coloum | |||
nothingmuch | if you have that many you should probably rely on polymorphism instead | 12:25 | |
some form of dispatch table | |||
like OO, or a hash of subs | |||
prism | hmmm also i would like to get to know perl6 for when it eventually takes over perl5 | ||
8) | |||
dont wanna be out in the cold | |||
nothingmuch | =) | 12:26 | |
prism | does perl6 have poe and others? | ||
nothingmuch | not yet... it has some modules | ||
but yoou can use perl5 modules in pugs | |||
prism | io::select etc? | ||
nothingmuch | hmm | 12:27 | |
i'm not sure if we have that yet | |||
prism | do we have cpan | ||
nothingmuch | a cpan like thing? | ||
prism | yes | ||
nothingmuch | not yet.. everyone commits to the pugs repo | ||
btw, do you have a commit bit? | 12:28 | ||
prism | ah i can find perl6 modules in ports | ||
no not yet | |||
nothingmuch | i doubt it | ||
prism | Port: p5-Perl6-Subs-0.05 | ||
Path: /usr/ports/lang/p5-Perl6-Subs | |||
Port: p5-Perl6-Form-0.04 | |||
Path: /usr/ports/devel/p5-Perl6-Form | |||
nothingmuch | they're not really used in production yet | ||
prism | Port: p5-Perl6-Export-0.07 | ||
Path: /usr/ports/devel/p5-Perl6-Export | |||
:) | |||
nothingmuch | that's a perl 5 module for perl 6 like things | ||
prism | oh | ||
ah of course p5- | |||
nothingmuch | s/that's a/those are/ | ||
/msg me or gaal or someone an email address | |||
you can say it out here, but this channel is logged on the web | 12:29 | ||
prism | paul@alchemy-networks.co.uk | ||
nothingmuch | and might be spam harvested | ||
prism | thats ok that email address is special | ||
ill need to know what email address you send from though | |||
nothingmuch | okies, you're going to get an invite in a sec | ||
hmm... | |||
prolly [email@hidden.address] | |||
but i'm not sure | |||
prism | ill just allow in openfoundry.org | ||
I block all emails that are not on a list for that address | 12:30 | ||
its for digests and the like | |||
nothingmuch | *nod* | ||
prism | wow its hot in england at the moment | ||
nothingmuch | UGHHHHHHH safari!! | 12:31 | |
run! | |||
okay, invite sent | 12:32 | ||
prism | ok hehe :) | ||
does perl6 depend on perl5 strictly for backwards compatability or can i mix and max modeules to | 12:33 | ||
nothingmuch | ? | ||
prism | include perl5 modules within a perl6 script that includes perl6 modules | 12:34 | |
do they integrate | |||
nothingmuch | ah | ||
yes, they integrate | |||
prism | neat | ||
nothingmuch | there are some examples | ||
prism | i have a poe spam detection program im planning to run on freenode be nice if i could half progarm it in perl6 (sort of a personal development project) | 12:35 | |
im also trying to port it to erlang but that is well never dealing with erlang, slighly daunting. | |||
nothingmuch 'd like to learn erlang some day | 12:36 | ||
prism | poe suffers slightly when your dealing with massive data structures, im just wondering if i should program my own sort of mini database instead of just using a 3 dimensional hash | ||
nothingmuch | BerkeleyDB? | ||
if you want performance you won't find it with pugs | |||
so far it's completely unoptimized | |||
and roughly an order of magnitude slower than perl 5 | 12:37 | ||
prism | --funrol-loops 8) | ||
j/k lol | |||
how does perl6 compare to perl5 | |||
equal or slower? | |||
i imagined it being based in haskell it would be alot quicker | |||
nothingmuch | perl 6 in theory? or right now? | ||
prism | right now, and the future | ||
nothingmuch | well, it's an unoptimized interpreter written in haskell | ||
vs an optimized interpreter written in C | 12:38 | ||
perl 5 is faster right now | |||
prism | thats suprising | ||
nothingmuch | otoh, perl 6 is not just an interpreted language | ||
12:38
kalven joined
|
|||
nothingmuch | it can be compiled, and it has static types | 12:38 | |
prism | thats good | ||
nothingmuch | and the ability to declare classes etc as closed | ||
prism | has it got the portability perl5 has yet | ||
nothingmuch | not yet | ||
prism | say if i was a masochist i might want to run something on win32, that wasnt a format command | ||
nothingmuch | gaal: do you run pugs on windows? | 12:39 | |
Limbic_Region | I do | ||
particle does | |||
I could dig up a few others if you forced me too | 12:40 | ||
prism | where can I checkout availible pugs packages | ||
Limbic_Region | by packages you mean modules? | ||
they are in the ext/ dir in the repo | |||
prism | is the location of the repository contained in this email | 12:41 | |
Limbic_Region | svn.openfoundry.org/pugs/ext/ | ||
lambdabot | Title: Revision 13063: /ext | ||
prism | thank you | ||
Limbic_Region | you can find just about everything Pugs related from the pugs homepage | ||
pugscode.org | |||
lambdabot | Title: Pugs - pugscode | ||
nothingmuch goes back to hacking | 12:42 | ||
Limbic_Region | if you find something pugs related that is not mentioned on the pugs homepage, please bring it to our attention so it can be rectified | ||
nothingmuch | prism: good luck with pugs =) | ||
hehhe, you said "rectified" </bevis & butthead> | |||
prism | if pugs does not have poe nro io::select can it handle multiple tasks in some kind of framework, such as multiple tcp connections or object manipulation | ||
s/nro/nor | |||
Limbic_Region | prism - just because the frameworks haven't been written doesn't mean it can't be done | 12:43 | |
prism | nothingmuch, also a note on erlang, the entire first part of the book is free online, it teachs you most of the basics, hang around in #erlang and the rest slots in pace :) | ||
place* | |||
Limbic_Region | you have to understand that the Perl 6 language specification is perpetually being updated | ||
prism | I can get you a link if you wish | ||
Limbic_Region, oh I know it can be done, I was just wondering if any frameworks have been written | 12:44 | ||
Limbic_Region | and the primary focus of pugs hackers are on getting the pugs internals to either implement spec'd features | ||
prism | Limbic_Region, anything is possible in any language :D | ||
Limbic_Region | or to keep up with the changing specs | ||
nothingmuch | prism: my big problem is timei ;-) | ||
Limbic_Region | or to boldly go where no one has gone before and suggest new specs | ||
so with the focus primarily on internals - examples and modules take a back seat | 12:45 | ||
there is a great deal of value however in volunteers writing examples and modules | |||
so please, step up | |||
prism | Limbic_Region, how about p6-star-trek, pkg-descy a module for perl6 that gives warp speed calculations | ||
Limbic_Region | we end up finding bugs in pugs | ||
prism | 8-) | ||
Limbic_Region | unimplemented features | ||
poor specs in corner cases, etc | |||
nothingmuch | or finding features and unimplemented bugs ;-) | ||
prism | nothingmuch, hehe not enough hours in the day | 12:46 | |
nothingmuch, I still have not received that email yet, | |||
Limbic_Region | prism - personally, I would rather the folks that can hack on Pugs internals (Haskell) continue to focus on the internals and leave the primarily perl 5 hackers to write examples and modules (perl 6) | 12:47 | |
prism | Limbic_Region, who are the pugs hackers | ||
Limbic_Region | we all are | ||
I guess you meant internal hackers | |||
prism | yes :)_ | ||
Limbic_Region | there really aren't that many but I don't know of a list specific to internals | 12:48 | |
prism | ok | ||
Limbic_Region | the AUTHORS file lists everyone who has contributed in some way to Pugs | ||
at least everyone who has allowed themselves to be identified | |||
prism | is their a projected estimate on the time pugs6 will become release | ||
Limbic_Region | prism - again, you have to understand that the Perl 6 language specification is a constantly changing target | 12:49 | |
it can't be release ready until the language is | |||
though | |||
audreyt does have a timeline/release plan | |||
prism | excellent, is it availible online | ||
Limbic_Region | that would allow for a "we pretty much have enough to let you chew on for a while" | ||
is what available online | 12:50 | ||
the Perl 6 language specification? | |||
yes | |||
prism | audreyt's plan | ||
Limbic_Region | oh, yes - also on the pugs homepage | ||
prism | thanks ill go check that out | ||
Limbic_Region | I believe it is at svn.perl.org/perl6/pugs/trunk/docs/...rview.html | ||
lambdabot | Title: Pugs Apocryphon 1, tinyurl.com/hnjwx | ||
prism | Ok | 12:51 | |
I have some reading to do, as the pkg for ghc/pugs is now installed | |||
thank you for your help Limbic_Region, nothingmuch :) | |||
Limbic_Region | no worries - welcome aboard | 12:53 | |
please remind us in a while if your email still hasn't arrived | |||
13:00
crem joined
|
|||
gaal | nothingmuch: rarely | 13:02 | |
13:08
crem_ joined
|
|||
svnbot6 | r13064 | agentz++ | [t/README] | 13:13 | |
r13064 | agentz++ | - added a sample for generic links without quotes. | |||
agentzh | hehe, prism was compiling ghc. so there's no wonder why the compilation took him *so much* time on a *so good* machine. | 13:14 | |
13:14
cjeris joined
13:31
rodi joined
13:41
prefiks joined
|
|||
rodi | ?eval my $a = sprintf("%b",1) | 13:41 | |
13:41
evalbot_r13059 is now known as evalbot_r13064
|
|||
evalbot_r13064 | pugs: Printf.printf: bad formatting char b | 13:41 | |
svnbot6 | r13065 | agentz++ | [t/closure_traits/init.t] | ||
r13065 | agentz++ | - added one more smartlink. | |||
r13065 | agentz++ | - cleaned up the comments. | |||
agentzh | yeah, i also noticed that a few days ago...while adding tests to sprintf.t | 13:42 | |
rodi | adding a few now :) | 13:43 | |
agentzh | not sure if it's a bug or not. | ||
since it's unspec'd | |||
rodi | It's spec'd: | ||
agentzh | so i held back. | ||
oh? | 13:44 | ||
rodi | Functions.pod | ||
errr... | |||
Synopsis 29 doesn't count, does it? | |||
agentzh | it says sprintf is like C's sprintf. | ||
it counts. | |||
rodi | Under "the directives are:" it lists b. | ||
agentzh | larry has blessed it as official more or less. | ||
rodi | oh, cool. | 13:45 | |
agentzh | great | ||
rodi: or you can even implement that except for writing tests. | 13:46 | ||
:) | |||
rodi | agentzh: you've been listening to audreyt too much :-D | ||
I actually spent the last week or so trying to get my head around Haskell, which I think | 13:47 | ||
I have accomplished except for Monads, which I still don't grok. | |||
agentzh | rodi: i'm serious though. in Prelude.pm, using Perl 6. :) | ||
but i'm not quite sure if it's better to implement that on Haskell land for efficiency reasons. | 13:48 | ||
agentzh is still in fear of haskell. | 13:49 | ||
gaal | agentzh: Haskell is great fun! the way to overcome fear of it is to persist enough in learning it until you get to refactor something -- then you first realize how great it is | 13:50 | |
rodi | but you still won't know what a Monad is... | ||
agentzh | gaal: i'm sure there's some day that i can grok pugs' haskell internals. thank you for your suggestions. :) | 13:51 | |
gaal | rodi: yes, they're not easy but you don't have to know everything before knowing something | 13:52 | |
Limbic_Region | audreyt - ping | 13:53 | |
gaal | (baby haskell is fine, just like baby perl) | 13:54 | |
Limbic_Region | perl5 embedding still doesn't work unless env variable is set PUGS_EMBED="perl5" | ||
gaal | the problem is that some basic things require monads, so it's a seemingly magical obstacle to voodoo around (=<< do >> <- fmap) until you get your cargo cult rites just so | 13:55 | |
the difference between Perl golf and Haskell golf is that (typically) to shorten Haskell code you employ a deep observation about your problem. In Perl golf you employ the visage of something from the abyss... | 13:59 | ||
svnbot6 | r13066 | rodi++ | added an eval_ok for sprintf() with "%b". | ||
rodi | Prelude.pm is actually not that daunting... | 14:03 | |
gaal | Oh I didn't mean to imply Perl's a horrible language. I rather like it. :) | 14:06 | |
I meant that the hardcore golfage usually relies on quirks of the implementation | |||
rodi | LOL, that wasn't meant as a followup- merely as an independent discovery that temporally coincided :) | 14:07 | |
I am looking for the right place to muck with sprintf() | |||
gaal | ah | ||
if you do it in Prelude.pm, all runcores benefit from it. | |||
so if one of them doesn't have a native sprintf to exploit, tada. | 14:08 | ||
nothingmuch likes to make the point that eveything should have at least a reference implementation, at least in principle, in pure Perl 6, and that the runtime chooses whether to override that with its own more efficient implementations. | 14:09 | ||
14:09
onsen joined
|
|||
gaal | but... I thought there already *was* some printfy code in the prelude? | 14:10 | |
rodi | there is. | ||
looks like someone forgot %b :) | |||
nope, I'm wrong. | |||
it's there. | 14:11 | ||
14:17
efunneko joined
14:18
christopher joined
14:22
ofer0 joined
|
|||
agentzh | Pugs::Internals::sprintf, hehe. | 14:23 | |
rodi | yeah, where /is/ that? | ||
agentzh | HS land? | ||
14:25
christopher_ joined,
gugod_ joined
|
|||
agentzh | grep has told me it's defined in src/Pugs/Prim.hs | 14:25 | |
14:25
gugod_ is now known as gugod
|
|||
rodi | yup, looking at it. | 14:25 | |
agentzh | src/Pugs/Prim.hs:op2 "Pugs::Internals::sprintf" = \x y -> do | ||
rodi | heh, | 14:26 | |
-- XXX printf should be wrapped in a catch so a mis-typed argument | |||
-- doesnt kill pugs with a runtime exception. | |||
agentzh | ?eval { START { say "hello" } } | 14:27 | |
14:27
evalbot_r13064 is now known as evalbot_r13066
|
|||
evalbot_r13066 | OUTPUT[hello ] \Bool::True | 14:27 | |
14:27
onsen_ joined
|
|||
agentzh | ?eval my $sub = { START { say "hello" } }; | 14:27 | |
evalbot_r13066 | \{Syn "block" {Syn "block" {Pad SState "$?START_RUN" := #<ref:0xb6e495dc> "$?START_RESULT" := #<ref:0xb6e49608> Syn "if" {App &postfix:++ (: Var "$?START_RUN"); Var "$?START_RESULT"; Syn "=" {Var "$?START_RESULT"; App (Syn "sub" {{Syn "block" {App &say (: | ||
agentzh | hey, could anyone tell me what's happening here? | 14:28 | |
gaal: is there a quick fix? | |||
agentzh doesn't want to wrap the START {} tests with eval_is or eval_ok. | 14:29 | ||
14:33
penk joined
|
|||
rodi | ?eval sprintf("%b",1) # where does the following error message come from? | 14:45 | |
evalbot_r13066 | pugs: Printf.printf: bad formatting char b | ||
14:46
gottreu joined
|
|||
rodi | aaaah, I see- Haskell land. | 14:47 | |
svnbot6 | r13067 | agentz++ | [t/syntax/POD.t] | ||
r13067 | agentz++ | - changed q(...) to q{...}. | |||
agentzh | START {} is behaving oddly in pugs. | 14:48 | |
oh, sorry, it's for's fault in fact... | 14:49 | ||
?eval for 1..2 { say } | |||
evalbot_r13066 | OUTPUT[ ] undef | ||
14:49
vel joined,
gottreu left
|
|||
agentzh | ?eval for 1..2 -> $_ { say } | 14:50 | |
evalbot_r13066 | OUTPUT[ ] undef | ||
agentzh | pugs-- | ||
rodi | ?eval for 1..2 { $_.say } | ||
gaal | agentzh: you're getting the AST of the block | ||
evalbot_r13066 | OUTPUT[1 2 ] undef | ||
gaal | and re -> $_ say, I don't think builtins default to say any more... | ||
you have to say ".say" | 14:51 | ||
rodi | So, it appears that pugs relies on Haskell's Printf, which appears to lack %b (at least in my '/usr/lib/hugs/libraries/Text/Printf.hs'). Am I probably missing some better Haskell library, or is this consistent with others' experience? | 14:52 | |
agentzh | ?eval for 1..2 { .say } | ||
evalbot_r13066 | OUTPUT[1 2 ] undef | ||
agentzh | ?eval for 1..2 { say $_ } | ||
14:52
evalbot_r13066 is now known as evalbot_r13067
|
|||
evalbot_r13067 | OUTPUT[1 2 ] undef | 14:52 | |
gaal | agentzh: remind me, what does START mean? | ||
agentzh: anyway (I don't know if this is correct or not, but) you're evaluating to the code block value itself, so that's being printed. *that* is correct. | 14:53 | ||
viz | |||
agentzh | gaal: please see L<S04/Closure traits> | ||
gaal | ?eval {say "hi"} | ||
evalbot_r13067 | OUTPUT[hi ] Bool::True | ||
gaal | heh. | 14:54 | |
?eval {say "hi"}.perl | |||
evalbot_r13067 | "\{Syn \"block\" \{App \&say (: \"hi\")}}" | ||
agentzh | gaal: okay, i know what you mean, but i think the value of START {} should be returned. | ||
START {} is the old FIRST {} | |||
gaal: currently i'm suffering from weird parsefail of one test for START {} | 14:55 | ||
gaal: i think it has relations with the for statement. | 14:56 | ||
gaal | huh, IRTR START is only parsed, not implemented at all? | ||
agentzh | gaal: it's perfectly implemented by luqui++. | ||
gaal | so that reduces to | ||
?eval { { say "moose" } } | 14:57 | ||
evalbot_r13067 | OUTPUT[moose ] Bool::True | ||
gaal | er. | ||
okay. | |||
:) | |||
agentzh | all tests for START {} are passing except that this one...err, i'd better paste it. | ||
14:57
rafl joined
|
|||
pasteling | "agentzh" at 210.22.200.67 pasted "A weird parsefail in a test for START {}" (29 lines, 495B) at sial.org/pbot/19491 | 14:58 | |
agentzh | that's a story about `for' or `$_', i'm afraid. | 14:59 | |
gaal: sorry, the previous outputs of evalbot are totally correct. | 15:00 | ||
gaal: the real problem is in the paste. | |||
gaal | ?eval my $x = { { say "moose" } }; | ||
evalbot_r13067 | \{Syn "block" {Syn "sub" {{Syn "block" {App &say (: "moose")}}}}} | ||
gaal | agentzh: yes, I agree | 15:01 | |
I don't know a fix off hand, sorry, and no tuits atm to look into it | |||
agentzh | gaal: it doesn't matter. :) | ||
?eval my $s; for 1..2 { START { $s ~= $_ } } | |||
evalbot_r13067 | Error: unexpected "}" expecting comment Closure traits take no formal parameters | ||
agentzh | that's it. | 15:02 | |
15:02
mako132 joined
|
|||
agentzh | audreyt: please look into this START {} bug when you're back from $work. ;-) | 15:02 | |
gaal | ok please commit this as a pugsbugs or whatever that's called this week :) | 15:03 | |
agentzh | gaal: i'd rather put it into t/statements/start.t and wrap the parsefail with eval_is. :) | 15:06 | |
sorry, t/closure_traits/start.t | |||
end of day for me & | 15:08 | ||
svnbot6 | r13068 | agentz++ | [t/closure_traits/start.t] | ||
r13068 | agentz++ | - moved all the old tests from first.t to this file due | |||
r13068 | agentz++ | to the recent FIRST {} renaming in the Synopses. | |||
r13068 | agentz++ | - added many more tests and smartlinks. | |||
r13068 | agentz++ | Status: | |||
r13068 | agentz++ | - only the first group of tests are mysteriously | |||
r13068 | agentz++ | failing. it's obviously a bug related to $_ or the | |||
r13068 | agentz++ | ``for'' statement. fixes under src/ are welcome. :) | |||
15:08
agentzh left
|
|||
svnbot6 | r13069 | malon++ | run-smoke, smokeserv-client: send both .html and .yml, allow multiple servers | 15:11 | |
15:19
weinig|zZz is now known as weinig|bbl
|
|||
Limbic_Region | particle ping | 15:20 | |
15:22
glasser left
|
|||
gaal | agentzh++ sure thing | 15:29 | |
15:35
marmic joined
15:40
weinig|bbl is now known as weinig
15:45
lichtkind joined
16:03
elmex joined
16:09
Psyche^ joined
16:19
[particle] joined
16:25
Psyche^ is now known as Patterner
|
|||
mugwump | audreyt: I'm told you've been doing recent work on 6pan. care to talk about it? | 16:37 | |
rodi | so, not saying I'd do this, but... | 16:45 | |
Limbic_Region waits to hear what rodi is volunteering to do | |||
rodi | should `sprintf(%b, $n)` be implemented in Perl, could I just put it into Prelude.pm? | 16:46 | |
It looks like pugs has enough bit operators (though bit.t is in bad shape- more on that later) to do it | |||
Limbic_Region: ;) | 16:47 | ||
16:47
kanru joined
16:48
araujo joined
|
|||
araujo | hi! | 16:49 | |
:-) | |||
rodi | araujo: hi! | 16:51 | |
16:56
mauke_ joined
|
|||
PerlJam | mugwump: ping | 17:02 | |
mugwump | hello | 17:03 | |
17:04
frederico joined
|
|||
mugwump aims for closer adherance to IRCMP RFC by saying PerlJam | 17:04 | ||
PerlJam | mugwump: I was just reading the CPAN6 and Pause6 paper and something occurred to me: Why doesn't CPAN store rpms or debs? | 17:05 | |
wouldn't that be in the spirit of "comprehensive"? | |||
17:05
bernhard joined
|
|||
mugwump | indeed, and we have dedicated much thought to this, too | 17:06 | |
PerlJam | mugwump: | 17:07 | |
mugwump: Well, I must say that I like what I'm reading | |||
araujo | hello rodi | ||
mugwump | excellent, well, please sign up to the list! :) | 17:08 | |
PerlJam | mugwump: I particulary like the idea of "distributed PAUSE" that you've got with scribes. (I was going to suggest it until I got to the part that described scribes :) | ||
rgs | mugwump: did you migrate accounts to older lists to pause6 and cpan6 ML ? | 17:10 | |
mugwump | rgs: like 6pan etc? | ||
rgs | yes | ||
17:11
mauke_ is now known as mauke
|
|||
mugwump | got a link handy, or can you help by e-mailing it to me? | 17:11 | |
rgs | mugwump: well, the fact is that I've been just subscribed to pause6 :) | 17:12 | |
so that's why I'm asking | |||
I was going to subcribe anyway | |||
mugwump | I invited a total of about 19 people | ||
svnbot6 | r13070 | malon++ | smokeserv - smartlinks-server.pl, refresh-smoked-synopses.pl added | ||
r13070 | malon++ | * First try at producing synopsis versions with inlined smoke, | |||
r13070 | malon++ | each time a smoke report is submitted | |||
r13070 | malon++ | * The synopses will be offered as a new link, to the right of the | |||
r13070 | malon++ | current Test::TAP::HTML link, on the smoke server index page. | |||
r13070 | malon++ | This might not be the nicest arrangement, but it's an easy first step. | |||
r13070 | malon++ | * Clients are already sending the necessary .yml smoke (since r13069) | |||
r13070 | malon++ | * smartlinks-server.pl is branched from, and intended to replace, | |||
r13070 | malon++ | smokeserv-server.pl. | |||
r13070 | malon++ | * Either smartlinks-server needs to be renamed, or the clients | |||
r13070 | malon++ | need to send the smokes to smartlinks-server.pl instead | |||
r13070 | malon++ | * Might not work yet; contributions and reformatting are encouraged | |||
mugwump | argh, did you get subscribed completely? I swore I selected "Invite", not "Subscribe" | 17:15 | |
17:18
buetow joined
17:21
onsen joined
|
|||
rgs | mugwump: I was subscribed to one, invited to another (to which I confirmed) | 17:23 | |
obra | mugwump: why not do this via perl.org lists? | ||
TreyHarris | where is the paper PerlJam speaks of? | ||
obra wonders what to do with his 6pan domains | |||
rgs | sell them on ebay ! | 17:24 | |
or at a yapc auction | |||
mugwump | obra: I'd be happy to move them to a perl.org mailserver, it was in my ability to set this up myself | 17:25 | |
obra | ok. how many lists do you need? | ||
mugwump | there are three main components; cpan6 (network), pause6 (administration), and the tools/clients. I didn't think separate cpan6/pause6 would be worthwhile initially | 17:26 | |
so, I made two lists | |||
TreyHarris: see cpan6.org | 17:27 | ||
PerlJam | TreyHarris: cpan6.org | ||
obra | mugwump: I suspect that right now, one list makes more sense. | ||
since I bet just about everybody will actually care about all three right now ;) | |||
Though the one thing I'd beg is "evolution, not reinvention" ;) | 17:28 | ||
TreyHarris | huh, was there an annoucement somewhere that i just managed to miss? | ||
[particle] | it was most likely at yapc::eu | ||
mugwump | correct | ||
I certainly see cpan6 as an evolutionary step forward, rather than competing or undermining cpan | 17:29 | ||
obra | I meant to actually evolve cpan ;) | ||
given the way the community is going (6on5, etc), I'm not much in favor of creating a brand new cpan for perl6. | 17:30 | ||
rgs concurs | |||
mugwump | we will distribute modules of all languages on cpan6 | ||
obra | oh. this is freepan | ||
PerlJam | freepan minus the subversion repositories | 17:31 | |
obra | ...that was freepan 1.0 ;) | ||
mugwump | yes, there are a couple of slides in the presentation that point out that cpan6 != Yet Another VCS | ||
PerlJam | Maybe call it CSAN if it's not to be perl-specific. Comprehensive Software Archive Network | 17:32 | |
nothingmuch | mooooosen | ||
obra | so, really, a perl6-cpan list (following the other perl6 lists) wouldn't be appropriate for your vision, Sam? | ||
[particle] | hey nm. what's moose with you? | ||
mugwump | the project is currently called cpan6, and it is different to cpan - but it will include and support cpan | 17:33 | |
Mark picked the name | |||
[particle] | it seems a misleading name | ||
P != Perl | |||
6 != Perl 6 | |||
rgs | c*anN | ||
mugwump | I'd rather we didn't bikeshed at this point, really. | 17:34 | |
[particle] | i agree with that. what's in a name? | ||
PerlJam | picking a good name isn't so much bikeshedding IMHO. | ||
obra | mugwump: this is not a bikeshed. It's not a question about the name. it's a question about the spirit and intent of the project | 17:35 | |
PerlJam | names are very important because you're modifiying the language people use to include this new thing you've created. | ||
obra | You've basically just defined freepan. | ||
and, well, you've chosen a name that, if this were business land, would be begging for a cease and desist order. | |||
mugwump | no, it's more flexible than the freepan design | ||
We asked Andreas first | 17:36 | ||
obra | it's the freepan vision I'm talking about. not ingy's implementation | ||
Did you ask jarkko? | |||
gaal | what happened to the effort by kane and others? | ||
j something | |||
mugwump | We sent early design documents to Jarkko, and AFAIK he hasn't responded yet | ||
obra | andreas is the PAUSE-master. Jarkko created and named CPAN. | ||
[particle] | gaal: jsan? | ||
gaal | no, I think it was something around .debs but I forget the name | 17:37 | |
[particle] | oh. good, cause jsan's a whole other ball of wax | ||
obra | mugwump: I, in my capacity as the P6PM would like to humbly request that you use a less confusingly similar name. | ||
gaal | JIB | ||
PerlJam resuggests CSAN :) | |||
[particle] | sounds like cpan6 would encompass freepan, cpan, jsan, and whatever else | 17:38 | |
gaal | it was called JIB, and it's in the pugs repo, or used to be | ||
obra | CSAN sounds great ;) | ||
. o O {"CTAN6"} | |||
[particle] | i like CSAR | ||
PerlJam | "R"? | ||
[particle] | one comprehensive software archive repository to rule them all | ||
mugwump | heh | 17:39 | |
I see the 6 as an exponent | |||
obra | mugwump: and everyone else on the planet sees it as "perl6" | ||
PerlJam | indeed | ||
mugwump | why don't we make this an opening discussion on the list? | ||
obra | Because the list is a closed forum of people you've specifically invited. | ||
mugwump | it's not closed | 17:40 | |
PerlJam | mugwump: because the list is poorly named too! ;-) | ||
17:40
weinig is now known as weinig|bbl
|
|||
obra | it's still composed of people you've invited who have accepted your invitation. | 17:40 | |
PerlJam | obra: I wasn't invited, but I've subscribed. | ||
obra | Why not bring it up on one of the existing perl6 mailing lists? | ||
I will note that this is something like the fourth project to try to recreate the cpan for perl6. | 17:41 | ||
[particle] | which... p6-users? | ||
obra | [particle]: I'd actually say p6-l. | ||
mugwump | I'm really not sure what your intent with all of this is, obra. Can we not just discuss the design, and once people have a better idea of what we're trying to do, then decide whether the name is wrong | ||
gaal | search.cpan.org/dist/Perl6-Bible/li...le/S22.pod | ||
lambdabot | Title: Synopsis_22 - CPAN [DRAFT] - search.cpan.org, tinyurl.com/gkufa | ||
obra | mugwump: because the thing you've described isn't CPAN and isn't focused on Perl6. | 17:43 | |
mugwump | I think the name is quite appropriate; it's an evolutionary step forward from cpan6, that will include cpan, and the idea came from the requirements of perl 6. | ||
er, s/6// :) | |||
PerlJam | Whatever it's called, I like the design that I've read so far. Whether it duplicates existing efforts or not. | 17:44 | |
obra | The fact that you didn't even get jarkko's blessing to use the name...somewhat disposes me against you. | ||
If jarkko gives it his blessing, I'll shut up | 17:45 | ||
17:45
dok left
|
|||
PerlJam | obra: what if he gets aevil to give her blessing? That's a tougher test than having Jarkko bless it even ;-) | 17:45 | |
jdv79 | once its up and running nobody will care about the name | ||
obra | PerlJam: but it's not her call. | 17:46 | |
PerlJam | jdv79: they will. | ||
jdv79 | i don't care what CPAN is named - i just know that's where you go to get all things perl5 | ||
PerlJam | jdv79: As soon as the name doesn't make sense; they will care. | ||
jdv79 | no, its doesn't matter - i go to 2 or 3 rpm repos - i dont care about the name - just whats in them and who's making then | 17:47 | |
them rather | |||
17:48
hexmode joined
|
|||
mugwump | you could make the same complaint about any other variant on the name "cpan" | 17:48 | |
17:49
ruz joined
|
|||
PerlJam | mugwump: anyway, regardless of the name (I too disagree with it, but I can put that aside for now), why bother with XML when you're using YAML? | 17:50 | |
mugwump | Because there exists standards for XML Schemata, and we want to encourage widespread adoption with other languages | 17:51 | |
[particle] wonders if there are yaml schemas | |||
mugwump | so, we will be transforming xml to yaml via a module of MarkOv's | ||
including the XMLSchema documents. So you shouldn't need to touch XML from an early on point | 17:52 | ||
kane-xs | gaal: it's .jib and the problem is with perl's way of stacking @INC :) | 18:06 | |
gaal: till we mentally figure out what to do with that, the focus is on core-ifying CPANPLUS | 18:07 | ||
mugwump: from what i heard via-via, jarkko was offering advise etc, but got ignored.. perhaps best ping him agian on this | 18:08 | ||
TreyHarris | i have a stupid question. why can't v6.pm be used to 6-ify the existing CPAN, and then CPAN is CPAN? (and surely for XS and other such things that can't be finessed like that, Makefile.PL's can take care of it). why do we need a separate Perl 6 CPAN? | ||
kane-xs | it's not 'CPAN.pm the code' taht's the problem currently :) | 18:09 | |
hurray for overloading terminology | |||
TreyHarris | kane-xs: sorry, i was referring to the archive, not the module. 6-ify the existing modules | ||
kane-xs | technically, perl5 is supposed to be able to run in perl6, no? | 18:10 | |
(just like p4 runs in p5) | |||
TreyHarris | why is a separate archive needed? | ||
kane-xs | so you wouldn't /have/ to touch the existing modules | ||
TreyHarris | kane-xs: right, that's my point, if we have forward and backwards compatibility, why a separate archive? | ||
mugwump | because, for instance, with perl 6, you can request any version of any module by any o^Hauthor | ||
kane-xs | the archive format has quite a few short-comings, from an 'admin' point of view | ||
Makefile.Pls are not the best way to convey information to installers, etc | 18:11 | ||
compare Makefile.PL to debians system forexample | |||
TreyHarris | mugwump: and it's a hard and fast limitation in the current cpan that can only be addressed by replacing the entire thing? | ||
18:11
iblechbot joined
|
|||
mugwump | not alone, no | 18:13 | |
mugwump has dinner with family while he is still in London & | 18:17 | ||
TreyHarris | i guess that's my question. CPAN is Perl's crown jewel. If it's going to be replaced--coming from a totally uninformed viewpoint, which is where 99% of CPAN's users will be coming from--I'd only switch to a different archive if it was a) painless, b) obvious to me why i was doing so, and c) i didn't feel like i was going out on a limb to do so, that i would still be in the bosom of the Perl community and be able to count on continuing support. it ... | ||
... sounds like the answers to those points at the moment are a) possible it could be painless, but very possible it won't, so who knows, b) i still don't understand the motivation--CPAN has too much momentum to be replaced just because it could be done better; c) it sounds like there's a great deal of controversy | |||
maybe these are just PR issues and not actual ones. but reading cpan6.org, i don't see answers for these simple questions. | 18:19 | ||
kane-xs | TreyHarris: fair questions.. sounds like something mugwump could answer, surely :) | 18:20 | |
TreyHarris | yeah, i was still typing when he left :-) | 18:21 | |
kane-xs | hehe | ||
he'll be back i'm sure | 18:22 | ||
rodi | I hate to bring this all back to mundanity, but... I'm still bit-munging, and have another (new!) question: | 18:26 | |
I have a Bool @array, and since: | |||
?eval say Bool::False | |||
18:26
evalbot_r13067 is now known as evalbot_r13070
|
|||
evalbot_r13070 | OUTPUT[ ] Bool::True | 18:26 | |
rodi | I want to coerce the elements of the array to Int context, comme ca: | ||
?eval say +Bool::False | 18:27 | ||
evalbot_r13070 | OUTPUT[0 ] Bool::True | ||
rodi | But I'm not sure how to do this to the whole array, to avoid: | ||
?eval my Bool @a = (?0,?1,?0,?1); @a.say | |||
evalbot_r13070 | OUTPUT[11 ] Bool::True | ||
rodi | Anyone know either the answer or the right place to look? | ||
[particle] | ?@array= 0,1,1; @array.*+.say; # wild guess | 18:29 | |
TreyHarris | rodi: do you need an answer today, or the canonical answer | ||
svnbot6 | r13071 | gaal++ | * Pugs.Parser - fix parsefail in closure traits referring to $_, | ||
r13071 | gaal++ | reported by agentzh++. t/closure_traits/start.t now passes all | |||
r13071 | gaal++ | tests. | |||
[particle] | nm, that's way wrong | ||
TreyHarris | +>>@a would numify all elements | ||
but hyperops on unaries doesn't work today | |||
rodi | w00t! | ||
hyperop.t, here we come! | |||
[particle] | :) | ||
TreyHarris | oh, wait | 18:30 | |
?eval my Bool @a = (?0,?1,?0,?1); +<<@a.say | |||
evalbot_r13070 | OUTPUT[11 ] Error: Hyper OP only works on lists | ||
TreyHarris | ?eval my Bool @a = (?0,?1,?0,?1); (+<<@a).say | ||
evalbot_r13070 | OUTPUT[0101 ] Bool::True | ||
Limbic_Region | particle - are you still having problems building with 6.4.1 with p5 embedding | ||
TreyHarris | there you go | ||
:-) | |||
rodi | TreyHarris: wow. | ||
thanks. | |||
[particle] | l_r: with and without perl5 embedding | 18:31 | |
i can't build pugs | |||
Limbic_Region | ok - I am in the same boat now | ||
[particle] | do you have a 6.6 workaround? | ||
Limbic_Region | at least at work, - will need to try from home tonight | ||
in may be a Win32 issue and not a ghc issue | |||
s/in/it/ | 18:32 | ||
[particle] | sure | ||
TreyHarris | oops, i think this is a bug | ||
?eval my @a = (Bool::True | Bool::False) x 12 | |||
evalbot_r13070 | [("" | "111111111111"),] | ||
TreyHarris | anyone want to argue it's not? | ||
(i think i should get 12 true/false junctions) | 18:33 | ||
[particle] | why is that a bug? | ||
oh, right, junction | |||
gaal | false is "" in stringy context | ||
"" x 12 is "" | 18:34 | ||
[particle] suspects gaal++ is right | |||
TreyHarris | gaal: yes, i know. so how to i construct a list of 12 elements, each (Bool::True|Bool::False)? | ||
gaal | if you want 12 junctions, say xx | ||
?eval (True|False) xx 12 | |||
evalbot_r13070 | ((Bool::False, Bool::False, Bool::False, Bool::False, Bool::False, Bool::False, Bool::False, Bool::False, Bool::False, Bool::False, Bool::False, Bool::False) | (Bool::True, Bool::True, Bool::True, Bool::True, Bool::True, Bool::True, Bool::True, Bool::True, Bool::True, Bool::True, Bool::True, Bool::True)) | ||
gaal | whee. | ||
TreyHarris | oh dear. | ||
i thought i *did* use xx | |||
thanks gaal :-) | 18:35 | ||
gaal | that's not very right though. | ||
TreyHarris | no, it's the list of 12 falses or the list of 12 trues | ||
i want the list of 12 false-or-trues | |||
gaal | ?eval [True|False] xx 3 # I assume 3 is as good as 12 here | ||
18:35
evalbot_r13070 is now known as evalbot_r13071
|
|||
evalbot_r13071 | ((Bool::False | Bool::True), (Bool::False | Bool::True), (Bool::False | Bool::True)) | 18:35 | |
gaal | better. | ||
TreyHarris | when did True andd False show up? i must have missed that diff | 18:36 | |
[particle] | why is false coming first? (not that it matters, really) | ||
TreyHarris | [particle]: junctions are definitionally unordered | ||
[particle] | ok | ||
TreyHarris | well, except when you compose one with any() and immediately use it in selective list context ;-) | 18:37 | |
then it's guaranteed to maintain the original order of the leftmost any() :-) | |||
18:38
frederico joined
|
|||
gaal proposes True be renamed to TrUe or something more annoying to type, to prevent code like "if ($the_value_to_check == TRUE)" | 18:39 | ||
TreyHarris | lol | ||
gaal | bad code is only funny when you don't have to maintain it yourself | 18:40 | |
[particle] | why not have a smart compiler that warns on TRUE/true ? | ||
TreyHarris | gaal: yes, i know people who would loudly maintain that 'if ($the_vaule_to_check == TRUE)' is far more clear and maintainable than 'if $the_value_to_check'. | ||
gaal | supposedly these people think "if (($the_vaule_to_check == TRUE) == TRUE)" is exquisite. | 18:41 | |
[particle] | true true | 18:42 | |
TreyHarris | it's the 'verbosity, that is to say, a great, almost, but not quite to the point of, excessive circumlocutory utterance, promotes clarity" school of style ;-) | ||
mugwump | TreyHarris: you are asking good questions, and I hope as you read the design documents that you will see we are actually on the same page on those questions. | 18:43 | |
TreyHarris | mugwump: you expect all CPAN users to read those documents? | ||
mugwump | no | ||
they won't need to | |||
TreyHarris | mugwump: you should be able to answer in one sentence all my worries. | ||
otherwise, you're not going to get uptake. cpan is *huge*. | 18:44 | ||
mugwump | how about "cpan6 is distributed cpan, updated for security and multiple programming languages" | 18:45 | |
rodi | take that! Stephen Wolfram, all your pretty pictures are belong to Perl 6! | ||
TreyHarris | "meh. i only use it for Perl, and i've never had a security issue with my CPAN modules. I'll stick with CPAN." | ||
mugwump | and of course you'll be able to! | ||
TreyHarris | and if everyone does so--or just those set who only use CPAN for Perl (100%) and haven't had a security issue with CPAN (>90% i'm sure), CPAN6 can still be a success? | 18:47 | |
lumi | Just show how the cpan6 tools will make uploading a package 4 characters less | ||
18:47
weinig|bbl is now known as weinig
|
|||
mugwump | actually most people use CPAN for Perl and XS | 18:48 | |
svnbot6 | r13072 | gaal++ | remove debug print | 18:49 | |
mugwump | that's two languages | ||
then there's also pir, pasm, pbc, etc | |||
TreyHarris | mugwump: i think that's sophistry. XS is Perl, for a wider definitition of Perl, as are the rest of those. | 18:50 | |
mugwump | right, so can you upload and fetch pir modules using cpan? | ||
or perl6? | 18:51 | ||
TreyHarris | mugwump: ok. so there's your PR line then: "CPAN will stop working once you move to Perl 6. Use this instead." | ||
That rather unfortunately kills one of the promises made by Perl 6's designers... but... | 18:52 | ||
rodi | anyone have a feeling about where in examples/ I should put a script to output wolfram-style cellular automata? | 18:53 | |
mugwump | a good thing thats not he only pr line, that we have a comprehensive set of documents outlining the problems we are solving. | ||
kane-xs | mugwump: is there a quick faq one could point people at with 1 line problem, 1 line solution + link to more reading? | 18:54 | |
mugwump | not established yet | ||
TreyHarris | mugwump: my point is that mere incremental technical prowess never caused any technology to overtake a very-well-entrenched one. | 18:55 | |
mugwump | and a good point that is. I would value your continued input in this process. | 18:56 | |
TreyHarris | just take a look at how many better keyboards have come out since qwerty :-) | ||
18:56
rindolf joined
|
|||
TreyHarris | clearly their inventors didn't write enough technical documents for people to understand what problems they were solving :-) | 18:56 | |
mugwump | I think in that case, it's just that the problems weren't big enough | 18:58 | |
svnbot6 | r13073 | rodi++ | Example script (ported from an earlier Perl 5 version) to output | 19:01 | |
r13073 | rodi++ | Wolfram-style cellular automata in a terminal. | |||
rodi | the silence must be everyone rushing off to try my shiny, new script! | 19:18 | |
any objection to my any("removal","replacement") of >> and << from t/operators/bit.t? | 19:20 | ||
19:20
frederico joined
|
|||
TreyHarris | rodi: i'm sorry? i can't see any recent changes to t/operators/bit.t | 19:25 | |
rodi | TreyHarris: I'm making changes, just wondering if there's any reason >> and << are still in there, since they're not part of Perl 6, AFAIK | ||
Limbic_Region | no, that's a question in advance TreyHarris | ||
rodi - what did they get replaced by? | 19:26 | ||
rodi | ?>, +>, etc. | ||
lambdabot | Maybe you meant: . bf id pl v wn | ||
rodi | LOL | ||
sorry, lambdabot | |||
Limbic_Region | rodi - I think I am confused - which Synopsis is this from | ||
TreyHarris | rodi: ah... yes. the lack of smartlinks and the "mostly copied fro perl 5.8.4" is a giveaway :-) | 19:27 | |
rodi | Limbic_Region: Synopsis 3 | ||
TreyHarris | S02 | ||
3 | |||
typo | |||
Limbic_Region | ok | ||
rodi | TreyHarris: hehe, I "needed" some of those operators in my recently committed script, along with sprintf("%b",$i), but worked around it for now, | 19:28 | |
just want to add my tests in, figured I'd clean up while I was there. | |||
TreyHarris | Limbic_Region: L<S02/Changes to Perl 5 operators/Bitwise operators get a data type prefix> ;-) | ||
rodi copies into bit.t | 19:29 | ||
Limbic_Region | yes, but the >> and << operators still exist | ||
that's my confusion | |||
TreyHarris | oh dear | ||
Limbic_Region | they just serve a different purpose | ||
TreyHarris | oh | ||
Limbic_Region | hyperoperators | ||
rodi | Ahh, hyperops. | ||
TreyHarris | lol | ||
Limbic_Region | though they are technically unicode | ||
TreyHarris | they're different operators, then. they're just isolexographic | ||
rodi | LOL | 19:30 | |
Limbic_Region | actually, all unicode chars have reg ascii counterparts AFAIK, they just usually require more typing | ||
The Unicode characters Ā» (\x[BB]) and Ā« (\x[AB]) and their ASCII digraphs >> and << are used to denote | |||
TreyHarris | yes. >>, Y... what else? | ||
Limbic_Region | that's quoted from S03 | ||
TreyHarris - I am not keeping a list | 19:31 | ||
I was just confused when I saw "should I remove >> and << as they are no longer part of Perl 6" | |||
I guess I should have looked at the test name to see that it was for bit operations | |||
TreyHarris | ?eval 'a'..'d' Y 1..4 | 19:32 | |
19:32
evalbot_r13071 is now known as evalbot_r13073
|
|||
evalbot_r13073 | (("a", 1), ("b", 2), ("c", 3), ("d", 4)) | 19:32 | |
PerlJam | It's the Y combinator! | ||
;) | |||
TreyHarris | no, the Y combinator is spelled &?BLOCK ;-) | ||
rodi | while I'm at it... what do other folks here use for Unicode input in KDE? | 19:33 | |
Limbic_Region | PerlJam - did you read aristotle's use.perl journal entry on the Y combinator | ||
PerlJam | rodi: << and >> have gone away as bit shifters, but they've been replaced by +> and +< I do believe | ||
Limbic_Region: I did indeed. | |||
Limbic_Region still can't think of a good use for it in perl | |||
PerlJam - yes yes - just not the way I interpreted rodi's original comment | 19:34 | ||
19:34
[particle] joined
|
|||
PerlJam | Limbic_Region: the Ycomb is useful in perl when you want to live in a restricted universe of pure functional programming. | 19:34 | |
TreyHarris | perl is an imperative language at its core style, no matter how many oo and functional and whotheheckknows what else gets poked onto it. the Y combinator seems rather odd... | 19:35 | |
== PerlJam. much more succinctly than i was going ;-) | |||
PerlJam | Think of it as validation. Perl can do the Ycomb, ergo it's got all the same nifty magic that makes other languages important ;-) | 19:36 | |
Limbic_Region | PerlJam - I suppose. Perl's main paradigm is definately imperative but it allows you to do both OO and Functional to a certain degree. I just see no need not to put perl's flair on things | ||
IOW - A good Fortran programmer may be able to write Fortran in any language but that doesn't mean they should | 19:37 | ||
Just because I have the Y combinator doesn't mean I should use it when plenty of other tools will suffice | |||
Juerd | I try to write Perl in every language. | ||
PerlJam | Juerd++ me too | 19:38 | |
And that's why it takes me a while to shift gears when I write C code :) | |||
TreyHarris | Juerd: I try too, and alas, the language often doesn't let me :-) | ||
PerlJam | PIR is perly enough that I can write it easily. | 19:39 | |
Limbic_Region | Oh, I didn't see stvn's reply to how it will look in Perl 6 | ||
PerlJam | there were no replies when I read it .... /me looks | ||
TreyHarris | Limbic_Region: URL? i didn't either | ||
Limbic_Region | sub ($n) { return 1 if $n < 2; return $n * $?SUB.($n - 1); } | ||
no need for URL | |||
PerlJam | hrm. use.perl.org is bizarro for me right now. | 19:40 | |
Limbic_Region | I can see use for Perl 6's ability to anonymously refer to the current code block while in that block without having to predeclare it | 19:41 | |
TreyHarris | i thought it was &?BLOCK, not $?SUB | ||
Limbic_Region | though I think they are mostly evil | ||
TreyHarris - stvn didn't claim the syntax was 100% correct | |||
TreyHarris | oh... $?SUB is the current lexical *named* sub. &?BLOCK is the current runtime block | 19:42 | |
S02 and S06 do not seem to be entirely consistent on these points. but maybe i need another reading | 19:43 | ||
TreyHarris needs a Perl 6 rabbi | |||
nothingmuch | TreyHarris: it's both | ||
but with a & sigil | |||
block is the current block | 19:44 | ||
(Which is also a sub) | |||
&?SUB is the current declared sub | |||
which might be anon | |||
i think | |||
if it's only named there's no point in having it | |||
TreyHarris | oops. yes, i meant declared, not named. thanks. | 19:45 | |
thinko | |||
but this business of some things being named by their sigilless forms and some named by their sigilfull forms is starting to get to me | |||
19:46
weinig joined
|
|||
Limbic_Region | ?eval my @foo = 1..10; @foo>>++; ~@foo | 19:46 | |
evalbot_r13073 | Error: Can't modify constant item: VInt 1 | ||
TreyHarris | @a and $a, different vars. @.a and $.a, same attribute. &?BLOCK and $?BLOCK, same var. @?INC and %?INC, different var | ||
lambdabot | Maybe you meant: all-dicts arr ask . v | ||
Limbic_Region | hmm - shouldn't that work? | ||
TreyHarris | Limbic_Region: markstos added a test for this just a couple days ago IIRC | 19:47 | |
TreyHarris must run, back soonish. & | |||
Limbic_Region | okie dokie | ||
Patterner | hmm.... <quote> Warning: retaining unknown function `Pugs_trap_exit' in output from C compiler </> | 19:48 | |
Limbic_Region | ?eval my @foo = 1..3; @foo.>>say | ||
evalbot_r13073 | Error: unexpected ">" expecting ".", subroutine name, variable name, array subscript, hash subscript or code subscript | ||
Limbic_Region | ?eval my @foo = 1..3; @foo>>say | ||
evalbot_r13073 | Error: unexpected ">" expecting "::", term postfix, comment, operator, postfix conditional, postfix loop, postfix iteration, ";" or end of input | ||
svnbot6 | r13074 | gaal++ | * cleanups to parameter and signature parsers. also caught a bug | 19:55 | |
r13074 | gaal++ | that would have parsed :( :($moose) ) as a named param with no | |||
r13074 | gaal++ | explicit label. | |||
19:55
[particle] joined
20:06
efunneko_ joined
|
|||
rodi | Should ?| and ?& be thought of as bitwise operators? | 20:07 | |
gaal | no, | ||
^| and ^& are. | |||
rodi | They're in L<S02/Changes to Perl 5 operators/Bitwise operators get a data type prefix> | 20:08 | |
Juerd | rodi: + is for numeric bitwise | ||
rodi: ~ is for stringy bitwise | |||
rodi: ? is for boolean "bitwise", but forget the bitwise part there. | 20:09 | ||
rodi | Juerd: yep, writing tests in t/operators/bit.t now, and they're all in S03 together, | ||
Patterner | "segmentation fault ./pugs ./examples/ca_wolfram.pl" | ||
rodi | trying to decide whether to put tests in there. | ||
Patterner: wha! | |||
Juerd | gaal: Mhat's ^ in that? | ||
gaal | er, meant +| | ||
Patterner | rodi: sorry | ||
rodi | I think gaal meant ~^, etc. | ||
Patterner: that makes me so sad! runs great for me. Which pugs version you got? | 20:10 | ||
gaal | I think gaal meant +^ etc but I have insider information :) | ||
rodi | LOL | ||
Patterner | Version: 6.2.12 (r13073) | ||
it said ".............................x" and "............................xx", then died... | |||
rodi | Patterner: any error message? | 20:12 | |
Patterner | nope | ||
rodi | and the other scripts in that dir work fine? | ||
Patterner | 0x00002b556679ebb8 in Parrot_FixedPMCArray_destroy () from ../parrot/blib/lib/libparrot.so.0.4.6 | 20:13 | |
TreyHarris | Patterner: try it again? | 20:14 | |
gaal | z& | 20:15 | |
TreyHarris | I get semi-random segfaults from pugs, and 9 times out of 10 just running again fixes it. I can't explain this. | ||
Juerd | gaal: zoolean? :) | ||
rodi | Juerd: nice, I'm adding that to t/operators/bit.t now... | ||
20:15
penk joined
|
|||
Patterner | well, i got 5 seg faults out of 5 tries... | 20:15 | |
TreyHarris | ah. | 20:16 | |
03:03 < TreyHarris> audreyt: i ran ext/libwww-perl/t/live.t five times in a row, and three of those times I got sigbus, "illegal hardware instruction", once i got...oh, it scrolled off but it told me to report a compiler error to GHC, and once all tests passed :-) | |||
so i've seen some weird behavior before :-) | |||
Patterner | sendmoremoney => No compatible subroutine found: "&collapse" | ||
rodi | wow, that's fun. Patterner: I'm recompiling 13074, see if it wfm. | 20:17 | |
TreyHarris | it just ran start-to-finish fine for me | ||
at r13059 | |||
Patterner | running test for 13074 now... | 20:19 | |
svnbot6 | r13075 | fglock++ | Pugs-Compiler-Rule - inner loop optimizations; makes v6.pm another 7% faster | 20:31 | |
20:36
Eimi joined
20:38
polettix joined
20:44
Eimi joined
|
|||
svnbot6 | r13076 | rodi++ | Names for all tests, linkbacks to S03, additional tests for bitwise and | 20:59 | |
r13076 | rodi++ | shift operators, removed Perl 5 cruft. Left some commented-out tests | |||
r13076 | rodi++ | that are not valid for one reason or another. | |||
21:06
Limbic_Region joined
|
|||
rodi | Patterner: I just recompiled w/revision 13074, and can still run ca_wolfram.pl fine... not sure what's going on :( | 21:07 | |
Limbic_Region | ok - for sure, pugs is b0rk on Win32 | 21:13 | |
pasteling | "Limbic_Region" at 24.35.57.240 pasted "Win32 problem with embedding Perl 5 (header issues apparently) - setting PUGS_EMBED="!perl5" of no help" (432 lines, 13.5K) at sial.org/pbot/19498 | 21:15 | |
Limbic_Region | fwiw - this started happening in the last day or so and is a problem regardless of GHC versoin | 21:17 | |
version even | |||
audreyt ping # if you backlog, see the Win32 issue nopasted above | 21:18 | ||
obra | What's the current status of Pugs on Javascript? | 21:27 | |
Limbic_Region | obra - have you checked the smoke status? | 21:28 | |
obra | yes | ||
they show no tests passing on JS since um. january | 21:29 | ||
Limbic_Region | apparently 0% | ||
yeah | |||
not good | |||
rodi | ironpugs++ | ||
Limbic_Region | Pugs 6.2.12 18 Aug 2006 16:05 Fri 152.60 min 0.00 % ok | ||
the interesting thing is - it took 2.5 hours to come up with the goose egg | 21:30 | ||
TreyHarris | hmmm... i didn't even smoke javascript | ||
looks like make smoke doesn't do so by default? | |||
Limbic_Region | no | ||
smokeall would test all backends | |||
smoke just does the Perl 6 on GHC IIRC | |||
rodi | I heard smoking javascript causes cancer anyway... | 21:31 | |
obra | the pugs smokes need a serious cleanout | ||
TreyHarris | ah. given that make smoke takes 12 hours for me, i think i'll pass on the smokeall :-) | ||
oh, not 12 hours. 4. | 21:32 | ||
Limbic_Region | well, there should be a way to smoke JS individually too | ||
TreyHarris | "jssmoke", according to the makefile | 21:33 | |
i'm trying it | |||
Limbic_Region | for a time - all the hackery was focused on the alternate backends | ||
that appears to have died off though | |||
TreyHarris | but of course it's recompiling pugs first. *sigh* am i the only one who gets recompilation even when no sources have changed? | 21:34 | |
Limbic_Region | that was supposed to have been fixed | ||
wait is it actually compiling anything or is it just going through the motions to see if anything needs to be compiled | 21:35 | ||
TreyHarris | ah. if that were fixed, then my "sudo make install" littering root-owned files in my working copy would go away | ||
Limbic_Region | I can't confirm/deny ATM without reverting pugs as the current rev doesn't compile on Win32 | ||
TreyHarris | perhaps it just "goes through the motions", but: | 21:36 | |
% TZ=UTC ls -l pugs | |||
-rwxr-xr-x 1 trey admin 37802496 Sep 6 21:35 pugs | |||
it is creating a new pugs | |||
Limbic_Region | hrm - I really did think that was fixed | 21:38 | |
rodi | thanks, everyone, for the help with bitmunging today. | 21:39 | |
TreyHarris | hmm. every single test is saying "Error: Precompiled Prelude ("...perl5/PIL2JS/pil2js.pl") does not exist... Can't bless non-reference value at "...pil2js.pl line 77" | 21:40 | |
which would explain 0% success :-) | |||
i cancelled the smoke. no point I think :-) | 21:42 | ||
Limbic_Region | nope | 21:45 | |
Limbic_Region saw obra volunteer to clean this all up though | 21:47 | ||
obra | Not a chance in hell | 21:48 | |
"I'm just the project manager" ;) | |||
TreyHarris | how do you smoke v6.pm? | ||
Limbic_Region pulls out his glock and asks TreyHarris to hold the wiggly bugger above his head | 21:55 | ||
22:02
jon_ joined
|
|||
jon_ | ?eval @x=<1 2 3>;print "@x"; | 22:05 | |
22:05
evalbot_r13073 is now known as evalbot_r13076
|
|||
evalbot_r13076 | Error: Undeclared variable: "@x" | 22:05 | |
jon_ | ?eval my @x=<1 2 3>;print "@x"; | ||
evalbot_r13076 | OUTPUT[@x] Bool::True | ||
mauke | ?eval my @x=<1 2 3>;print "@x[]" | 22:07 | |
evalbot_r13076 | OUTPUT[1 2 3] Bool::True | ||
statico | ?eval gerbils | 22:08 | |
evalbot_r13076 | Error: No compatible subroutine found: "&gerbils" | ||
jon_ | thank you mauke | 22:09 | |
TreyHarris | or ?eval my @x=1..3; print "{@x}" | 22:14 | |
?eval my @x=1..3; print "{@x}" | |||
evalbot_r13076 | OUTPUT[1 2 3] Bool::True | ||
TreyHarris | or, if you're feeling particularly oo-ish: | 22:15 | |
?eval my @x=1..3; @x.join(" ").print | |||
evalbot_r13076 | OUTPUT[1 2 3] Bool::True | ||
TreyHarris | (of course, you probably want C<say>, not C<print>....) | ||
22:22
plisk joined
22:23
plisk left
|
|||
jon_ | thanks TreyHarris, but while I like OO where it makes sense, I prefer things like say "@x[]" or say "{@x}" | 22:23 | |
TreyHarris | well, those are just exactly "@[]".say ;-) | 22:24 | |
jon_ | I know... it's just the aesthetics | 22:25 | |
TreyHarris | which becomes $*OUT.say("@[]") | ||
yep, i understand and agree :-) | |||
jon_ | cool... someone shares my quirks/foibles :) | 22:26 | |
TreyHarris | now, let's not go too far ;-) | 22:27 | |
22:28
lisppaste3 joined
|
|||
TreyHarris | I can't tell you how many times I've written 'print $fh: "blah blah"' in the past few weeks though when writing perl 5 code | 22:28 | |
indirect-object syntax without a colon just looks SO WRONG to me now. | 22:29 | ||
avar | haha:) | 22:37 | |
when you do "@[]".say what's the delimiter? S28 says $" is gone in place of @x.join, so what's { local $" = $str; print "@_\n"; } in Perl 6? | 22:41 | ||
S28 draft that is | |||
22:43
weinig is now known as weinig|bbl
22:44
jferrero joined
22:47
markstos joined
|
|||
avar | b.t.w. has noone started writing the equivalent of perldoc in p5 for p6? The synopsis are really replacements for the Camel Book more for anything like that | 22:47 | |
22:49
lollan joined
|
|||
obra | do you mean perldoc the command, perldoc the format or "the docs for perl"? | 22:49 | |
avar | *more than ... | ||
I mean stuff like perlvar, perlre etc. | |||
obra | nod | 22:50 | |
avar | i.e. the actualy document shipped with the language for core functions et al. | ||
obra | I belive that the intent is to morph the synopses into that | ||
TreyHarris | ?eval my @a = 1..4; say "{@a.join(":")}" | 22:55 | |
evalbot_r13076 | OUTPUT[1:2:3:4 ] Bool::True | ||
markstos | I started a new wiki page so we can help each other figure what some of less intuitive Pugs error messages mean: | ||
TreyHarris | avar: I think the above is the replacement | ||
markstos | rakudo.org/perl6/index.cgi?pugs_diagnostics | 22:56 | |
avar | TreyHarris: So no, you can't do that:) | ||
TreyHarris | the idea being that spooky-action-at-a-distance vars, even localized, or being eschewed | ||
avar: why can't you? | |||
avar | TreyHarris: I'm not displeased with that, just wondering what the default delimiter was | ||
markstos | I'm currently trying to figure out this one out: | ||
Can't modify constant item: VUndef | |||
avar | TreyHarris: I mean you can't define custom stringification delimiters with syntax sugar anymore:) | ||
"{@a.join(":")}" not $"=":";"@a" | 22:57 | ||
TreyHarris | avar: ah. well, not implemented this way yet, but I would assume that there's a multi method Array::as (Str) { self.join($mumble) }, and you'd change $mumble | 22:58 | |
and if $mumble were a package var or a class attribute, you could localize it | 22:59 | ||
but if seriously $" is gone gone, it would be a private lexical or a constant, so you couldn't. | |||
avar | Yeah, but not really friendly:) | ||
TreyHarris | I dunno. { temp Str.delimiter = ":"; say "@_" } seems friendlier to me... | 23:00 | |
avar | "@_[]" :) | 23:01 | |
TreyHarris | right. :-) | 23:02 | |
23:11
cjeris left
|
|||
markstos | design question: If I have an object that want to serialize as YAML, but the YAML is /different/ than what a ".yaml" would normally produce, should I: 1. override ".yaml" to use a custom format for that object or 2. avoid the conflict and choose another name like ".as_yaml" ? | 23:12 | |
avar | different how? | 23:14 | |
Is it invalid YAML or is the YAML module broken? | |||
markstos | This is for CGI.pm P6. It's useful to dump out the name/values of the params as YAML, but that's different than what you get if you just do $q.yaml | 23:15 | |
It's probably better to avoid confusion by not using the builtin name. | 23:16 | ||
avar | ah, sorry | ||
Well on the other hand, if it's compatable yaml I don't see why not | 23:17 | ||
it could still be unserialized when needed by other yaml libs | |||
23:17
mako132_ joined
|
|||
markstos | I guess if people want the regular yaml, they could do something like $q.perl.yaml, which get the raw Perl, and then the raw yaml. | 23:18 | |
23:19
jferrero joined
23:43
[particle] joined
|
|||
markstos | The follow creates an infinite loop, and I think it's a bug: | 23:53 | |
class Foo { method yaml { my %s; return %s.yaml } } Foo.new.yaml; | |||
The bug is that %s.yaml calls "yaml" in the Foo class, even though %s is not a Foo object. | 23:54 | ||
Thus, a loop is created. | |||
Agreed ? I can create a test case if so. My test case will include a clause for stopping after a couple of loops. :) | 23:55 |