Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2006-01-19

Perl 6 | Reference Documentation | Rakudo

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

All times shown according to UTC.

Time Nick Message
00:05 pfenwick joined perl6
00:09 Debolaz joined perl6
00:13 * Juerd & sleep 28800; fg
00:15 Cryptic_K joined perl6
00:21 aufrank joined perl6
00:21 aufrank hi all
00:28 bsb night all
00:28 bsb left perl6
00:32 scook0 joined perl6
01:19 Amnesiac joined perl6
01:55 Debolaz joined perl6
02:21 eddddddddddddddd joined perl6
02:40 Cryptic_K joined perl6
02:44 SamB joined perl6
03:31 bcornett joined perl6
03:42 meppl joined perl6
03:47 justatheory joined perl6
04:05 feng joined perl6
04:05 imperator evenin'
04:25 Jooon_ joined perl6
04:37 imperator left perl6
04:54 svnbot6 r8753 | aufrank++ | parrot no longer uses $PARROT_PATH/lib/blib/lib/libparrot.a
04:54 svnbot6 r8753 | aufrank++ | it now uses $PARROT_PATH/blib/lib/libparrot.a
04:54 svnbot6 r8753 | aufrank++ | changed Makefile.PL to reflect new location of libparrot.a
05:02 kcwu_ is now known as kcwu
05:02 aufrank joined perl6
05:02 aufrank hey folks
05:04 aufrank question about Makefile.PL
05:04 aufrank why do we insert the string 'optc' into some of the flags?
05:05 aufrank regardless of the answer, as it's written in Makefile.PL it doesn't always work
05:05 aufrank my include flag went from parrot-local to parrot-optc-local
05:07 aufrank the problem's on line 326... s/-/-optc-/g
05:12 aufrank actually, any of those substitutions in the optc section would foul up my path
05:12 aufrank my parrot checkout doesn't have any optc directories in it-- why is that section in there?
05:16 aufrank if I knew what that section was supposed to do I would change it myself
05:16 aufrank but I don't
05:16 aufrank so instead I'm off to bed
05:17 aufrank joined perl6
05:36 scook0 joined perl6
05:42 putter joined perl6
05:42 putter aufrank: ping?
05:49 putter aufrank: -optc and -optl are ghc "meta"?options which determine which compilation phase the attached option gets applied to.  -optc-foo gives the C compiler -foo, -optl-foo gives the linker -foo.  The modification regexp apparently assumes "-"'s are not in the middle of things.  I'll make it more picky.  Thanks for the catch.
05:49 putter aufrank++
05:54 brain` joined perl6
05:55 Medvekoma joined perl6
05:57 vel__ joined perl6
06:04 elmex joined perl6
06:16 vel__ left perl6
06:25 svnbot6 r8754 | putter++ | Makefile.PL - C compiler and linker options are passed through ghc by prepending -optc and -optl.  The s/// which does this is now more careful.  Options (eg paths) with embedded dashes ("-"), should now work.  Options with embedded spaces will still not.  aufrank++
06:30 putter &
06:56 GeJ joined perl6
06:59 tewk make smoke seem to be hanging in ./ext/Span/t/span.t
07:00 GeJ greetings all
07:00 nothingmuch joined perl6
07:06 nothingmuch morning
07:08 petdance joined perl6
07:09 petdance left perl6
07:14 GeJ morning nm
07:24 nothingmuch -hola
07:25 nothingmuch http://en.wikipedia.org/wi​ki/Horus#Conquerer_of_Set
07:25 nothingmuch egyptian porno
07:25 nothingmuch my conclusion:
07:25 nothingmuch if you masturbate on food you are a dominant god
07:26 nothingmuch oh, and that semen can talk
07:26 rantanplan_ joined perl6
07:33 dduncan I've been reading some good stuff, and apparently the word "parameter" and "argument" mean 2 distinct things, while people often think them synonyms
07:34 dduncan I'll have a look through some of our documentation in case it isn't using the correct terms
07:34 nothingmuch parameter is a noun
07:34 nothingmuch argument is an adjective
07:34 nothingmuch but sometimes for some people parameter isa argument
07:34 dduncan in the context I refer to, they are both nouns
07:35 kane_ joined perl6
07:35 nothingmuch please explain then =)
07:35 dduncan the parameter is what an operator is defined in terms of, and an argument is the value you provide when you invoke that operator
07:36 dduncan eg, with "method foo ($bar) { ... }
07:36 dduncan $bar is a parameter
07:36 nothingmuch oh
07:36 dduncan when you invoke that, like with $result = foo(3)
07:36 dduncan then the '3' is an argument
07:36 nothingmuch declaration vs runtime
07:36 nothingmuch aye
07:37 dduncan declaration vs invocation
07:37 nothingmuch well, saying "has two parameters" or "receives two arguments" is synonimous, IMHO
07:37 nothingmuch or at least synonymous enough that I'm happy
07:37 nothingmuch because both talk about the function's prototype
07:37 dduncan they are connected, but it wouldn't hurt to use the right words in the right places
07:37 nothingmuch saying that a function "has two arguments" is kinda silly though
07:37 dduncan in particular, the Perl 6 synopsis, the official design documents, should use the correct terms, if they aren't already
07:38 iblechbot joined perl6
07:38 dduncan I'm going to look up S4, for example ...
07:58 svnbot6 r8755 | putter++ | Improved testing for let() and temp() on array and hash elements.
07:58 svnbot6 r8755 | putter++ | t/var/let.t: Uncommented test.
07:58 svnbot6 r8755 | putter++ | t/var/temp.t: Rewrapped the parsefail eval()s as it was unclear they could ever work (ie, if eval()s are a scope for temp()).  The tests now show up as skips instead of as :todo<feature>s.
07:58 svnbot6 r8755 | putter++ | * Todo: additional tests for let() - exception, successful block exit, etc.  Just copy the scalar cases.
07:59 Medvekoma joined perl6
08:19 dduncan joined perl6
08:20 pfenwick left perl6
08:20 svnbot6 r8756 | putter++ | t/rules/from_perl6_rules/subrule.t - Un:todo<>ed 4 working tests.
08:20 svnbot6 r8756 | putter++ | * Todo: There are 15 more in t/rules/from_perl6_rules/capture.t.  Easy pickings for someone! :)  Just  ./pugs -Iblib6/lib t/rules/from_perl6_rules/capture.t , then remove the :todo<>s from tests which are now  ok .
08:20 dduncan following what I said shortly ago, it appears S6 (I said S4 by mistake) is using the terms 'parameter' and 'argument' correctly, and making the distinctions
08:21 dduncan the synopsis are the most important documents to get this right
08:24 bsb joined perl6
08:26 * lypanov wakes up
08:27 dduncan I'm going to do the opposite soon
08:27 dduncan half-past midnight here
08:40 r0nny joined perl6
08:41 elmex joined perl6
08:52 nnunley joined perl6
08:54 scook0 dduncan: btw, I've also heard "actual parameter" as a synonym for "argument", with "parameter" being refined to "formal parameter"
08:54 scook0 but I prefer argument/parameter myself
08:54 theorbtwo I prefer just not worrying; most of the time it's perfectly clear what you mean when you say it.
08:57 scook0 theorbtwo: I agree that most of the time it doesn't matter, but for written documentation you might as well take the time to be pedantic
08:59 scook0 (a minor mistake spoken aloud rarely causes harm, because few will even notice -- whereas a minor mistake written down may be read many times)
09:05 myren joined perl6
09:06 myren where is the parrot channel?  #parrot has one person, and they're not even an op
09:06 wolverian myren, it's on the magnet network, irc.perl.org
09:08 myren alright, thanks
09:09 putter joined perl6
09:10 putter New smoke is up.  r8754 under repository / linux.  http://m19s28.vlinux.de/iblech/stuff/pugs-s​mokes/pugs-smoke-6.2.10-r8754-linux-normal-​-1137661693-4843--11381-9880-1501-1516-943-​21--e8261e01901b56f49e59cb930de19dc9.html
09:10 clkao so jsperl5 smoke coming... at rules/ now
09:10 clkao s/so/new
09:11 putter Completely random observation: it looks like try/fails take about 1 ms.
09:11 putter clkao++
09:11 putter Good hunting, and good night. &
09:14 putter joined perl6
09:14 putter btw - i suspect t/pir/ should be moved to t_disabled.  it's all failing, and that's for the next release anyway.
09:16 putter We dont have any kind of release prep doc.  Irc is our blackboard.  So if you look at something, even if you get stuck, you can mention whatever you learned.  Thus benefiting from each otehrs work, sense of activity, etc.
09:16 putter wee hours of the morn.  'night &
09:20 bsb left perl6
09:26 kanru joined perl6
09:36 \xe6var joined perl6
09:38 gaal putter: it fails because there's no pil exe in your pugs root; I was fixing that but ran into weird problems with scope of sub rebinding.
09:38 myren left perl6
09:38 gaal actually thanks for reminding me; unless I'm doing something wrong this may be indicative of a bug.
09:39 gaal audrey: when you have a cycle, let's revisit that?    http://sial.org/pbot/15479
09:51 svnbot6 r8757 | Darren_Duncan++ |  r2080@Darren-Duncans-Computer:  darrenduncan | 2006-01-19 01:47:45 -0800
09:51 svnbot6 r8757 | Darren_Duncan++ |  /ext/Rosetta : updated the DESCRIPTION pod of [Rosetta.pm, Model.pm, Language.pod] to mention Tutorial D and otherwise be better clarified
09:51 dduncan I also have another commit to make that will correct usage of 'parameter' vs 'argument', which I'll do tomorrow
09:59 christo joined perl6
09:59 \xe6var joined perl6
10:04 ingy hcchien: hola
10:04 hcchien ingy: will you be available to attend the osdc.tw?
10:05 ingy when is it?
10:05 hcchien april 8-9, after yapc.asia
10:05 ingy yes, I'll be there
10:06 hcchien ha, great.
10:06 ingy :)
10:07 hcchien members of chupei.pm
10:24 elmex joined perl6
10:38 iblechbot joined perl6
10:40 nothingmuch joined perl6
10:40 nothingmuch see you guys in 5 days
10:41 * nothingmuch is going hiking in an hour
10:43 bsb joined perl6
10:49 G2 joined perl6
11:00 ingy nothingmuch!
11:01 nothingmuch ingy: !
11:02 nothingmuch how was playing with me yesterday?
11:02 nothingmuch http://www.defectiveyeti.com/archives/001561.html
11:02 ingy you are going hiking for 5 days?
11:29 knewt_ is now known as knewt
11:38 christo_ joined perl6
11:51 audreyt greetings λ.camel :)
11:51 audreyt hm, that \ sign seems to not get through for some reason
11:52 audreyt ah, it did, it's just my display charset.
11:52 audreyt putter++ # releng
11:56 xinming greetings, audreyt  :-)
11:56 xinming audreyt: hmm, Is Chinese new year coming soon in TaiWan?
11:57 audreyt xinming: yup :)
11:58 svnbot6 r8758 | audreyt++ | * correct t/oo/roles/conflicts.t syntax so it now passes properly.
12:03 nothingmuch ingy: yes
12:03 nothingmuch audreyt: i saw it too
12:03 nothingmuch perhaps screen is not under -U?
12:05 audreyt nod
12:06 nothingmuch where is my ride =(
12:06 iblechbot joined perl6
12:23 christo_ left perl6
12:25 chris2 joined perl6
12:30 nothingmuch will be back on tuesday &
12:52 penk joined perl6
13:24 kolibrie joined perl6
13:27 elmex joined perl6
13:54 hcarty joined perl6
14:00 mkirank joined perl6
14:07 Limbic_Region joined perl6
14:07 nnunley joined perl6
14:22 mkirank What will be the perl6 equivalent code for the following Java code
14:22 mkirank String keyString = "0123456789ABCDEF0123456789ABCDEF"; byte key[] = new BigInteger(keyString, 16).toByteArray();
14:23 mncharity joined perl6
14:23 mncharity is now known as putter
14:25 hcarty left perl6
14:26 pasteling "putter" at 66.30.119.55 pasted "A strace -v -f -F tale of the the last moments ./pugs -e '"a" ~~ /a/' (embedded, FC3, amd64)" (15 lines, 1.2K) at http://sial.org/pbot/15518
14:29 arguile joined perl6
14:35 putter mkirank: perhaps something like  byte @key = :16<0123456789ABCDEF012345​6789ABCDEF>.unpack("C*");
14:36 meppl gugu
14:36 rafl leo_: Plan B results in various test failures :-(
14:37 rafl Hm.. wrong channel, but leo_ is here anyway.. :-)
14:39 leo_ yup
14:40 rafl leo_: When can we expect mmd stuff to be rewritten?
14:40 leo_ depends very much on acceptance of interfaces.pod
14:43 rafl leo_: Where can I find that document?
14:44 leo_ on feather ~lt/dev-doc
14:45 rafl OK, reading. Why isn't it in the parrot repo?
14:46 aufrank putter++ for fixing the bug I found last night
14:46 leo_ I'm waiting for chip to approve it
14:48 putter audreyt: re rules, with PGE coming along, aside from getting the pugs-side rules namespace working, I wondered if the next big push could be "the real thing"?  Eg, "a|\s" --> a|<rxbackslash:<w>> --> rxmetachar:<|>(rxmumble('a'),..) --> try{ $/.next eq 'a' ...   Ie, pattern parsed to ast, ast emits p6, p6 does normal macro expansion.  4. Profit! ;)
14:48 putter aufrank: :)
14:48 aufrank I woulda done it but I don't know much about ghc compilation
14:49 aufrank I could tell what was wrong, but didn't know what was write :[
14:49 aufrank s/write/right/
14:51 putter aufrank: I was actually there (at those lines) within the last few days (adding rpath).  I did a more picky regex for that, and considered modifying the others, but thought it might break things, so didnt.  :(
14:53 * putter really wants a development environment where annotations show up next too the source file.  So one can flag some lines in passing "err, is this quite right?", flagging it for someone else to look at.  Or to share design motivation, etc, without cluttering the code itself.
14:53 rodi joined perl6
14:55 aufrank big day today-- our department is hiring new faculty and today's the first candidate's job talk
14:55 aufrank exciting stuff
14:56 * Debolaz hopes perl 6 gets a more consistent module framework than perl 5 had.
14:56 putter audreyt: I agree a rules-ish regex library would be a nice improvement on the ones currently just doing p5 behavior.  But perhaps one doesn't want to use it for pugs itself - much of the neatness of p6 rules is how seamlessly it integrates with the rest of p6.
14:58 putter Rules basically seem to be the first specced p6 embedded domain-specific sub language.  (is there cleaner jargon for that?)  I'd appreciate your thoughts. ;)
15:01 putter aufrank: does your institution have a tradition of "asking the hard questions", ie, of being polite, but no holds barred?  Or the usual "the audience things the speaker is missing the point, but is too "polite" to say anything"?  ;)  The first way is a lot more fun.
15:02 lisppaste3 joined perl6
15:04 putter <speaker gives a talk on mondo analysis of C code>  someone asks "so, the result of all these man years of effort and insights, is to almost, but not quite, compensate for C having a lousy type system?"  <speaker pauses, looks a bit taken aback, smiles> "yes".  :)
15:05 Juerd Simple questions are usually the hardest questions.
15:05 Juerd Complex questions usually turn out to be easy.
15:05 putter (maybe it was "C not having a real type system"...)
15:06 Juerd "Why?" Is a very simple question, but terrible to have to answer :)
15:08 aufrank putter: I don't know yet.  I'm a second year grad student, so this is my first time seeing a high-stakes talk
15:09 aufrank in other talks, I've seen it go both ways
15:10 putter Juerd: Well, I'll agree with the first half anyway. :)  The question "what #rgb should I use to color in these circles representing stars?" ended up requiring primary research.  The usual astronomy text/professor answers were not just missing, but wrong.  2 year old describes a ball - size and color.  Nice to know astronomy as a field was working towards getting 1/2 credit on a toddler's question.  Sigh.
15:10 aufrank actually, the worst is when someone thinks there's a point the speaker should make, and asks leading questions to try to get them to realize the correctness of that point and make it for themselves
15:11 Juerd putter: RGB, color, circles, stars, representation
15:11 Juerd putter: That's a rather complex question.
15:12 putter Juerd: re "Why?", aww, I always loved those.  ;)  A prompting to do deep analysis of something you usually dont pay attention to.
15:12 Juerd putter: A complex question usually has a detailed specification of the expected answer. Here: a colour, expressed in #RGB.
15:12 * Limbic_Region believes it is likely an urban legend but heard a story about this notrious difficult philosophy professor who seldom gave good marks handed out the final exam with a single question "Why?" where the only student to get an A wrote a 2 word answer "Why not"
15:12 putter aufrank: ah.  eeps, I haven't seen that one.
15:13 putter LR: lol
15:14 putter Juerd: hmm, ok.  I was thinking of the simple question as "What colour are stars?".
15:14 putter The errors were on a scale of "yellow" vs "white", rather than in the details of particular pixel values.
15:17 BakedB_ joined perl6
15:19 joepurl joined perl6
15:26 putter Ahem.  Can I have everyone's attention please.  <quite descends, audience attentive>
15:26 putter We are trying to get a release out the door.  Among other things, this will let us start the switch to the new piln runcore.
15:26 putter But first we need to get the release out the door!
15:26 putter Some errors look to require lambda folk and haskell work.
15:26 putter But others clearly require only a keyboard, sed, and a primate.
15:26 putter capturet comes to mind.
15:26 putter My I have a primate volunteer from the audience please?
15:26 putter Thank you!
15:27 putter s|capturet|t/rules/from_perl6_rules/capture.t|
15:27 putter :)
15:29 tewk putter: I'm a primate volunteer
15:29 tewk paste?
15:30 * putter heart is gladdened
15:30 putter tewk: paste?  do you have commit bits yet?
15:31 * putter smile is edged with confusion
15:31 putter Just  ./pugs -Iblib6/lib t/rules/from_perl6_rules/capture.t , then remove the :todo<>s from tests which are now  ok .
15:31 pasteling "tewk" at 71.32.238.88 pasted "Dual G5 2Gig RAM config, build and smoke times" (26 lines, 391B) at http://sial.org/pbot/15521
15:31 aufrank putter: I could show my simian side
15:32 aufrank I might still need hand-holding in some cases, though
15:32 tewk putter: tewk has a commit bit
15:33 * aufrank too
15:33 Juerd Is there anyone here without committer bit? ;)
15:33 * putter craves tewk's machine.  <invoke Homer-esqe drool> "oohhh, commutes... ahhhhh"
15:34 tewk putter: well I finally got the env set up so, I can run more time test / profiling
15:35 tewk Juerd: Pretty much if you show up twice your in :)
15:35 putter doh.  s/commutes/computes/. ;)   bit commuting: memory to cache to registers to cache to registers to cache to memory to... "it's just a rat race, always the same old thing" - 0xDeadBeef
15:35 Juerd tewk: s/your/you're/
15:38 aufrank ok, I'm off to the office
15:38 aufrank commutes &
15:39 putter twek: do you know what the longest running test is?  I was unsure what to set my  ulimit -St to.  Used 1000 (15+ minutes), but that looks like a waste.  (ulimit is a bash command which limits all child processes' cpu use, catching those ext/ runaways.  so ulimit, and then make smoke.)
15:39 gaal putter: check your tests.yml
15:39 typester joined perl6
15:40 putter aufrank: &  I'm sure the smoke will have something bannana-ish.  Will look for low hanging fruit.
15:40 gaal (and rehi.)
15:40 Eimi joined perl6
15:40 putter Todo: * find low hanging smoked bananas for the primate volunteers.
15:40 tewk PUGS_SMOKE_EXCLUDE_EXT="1"
15:41 tewk 23:50 < tewk> make smoke seem to be hanging in ./ext/Span/t/span.t
15:41 tewk http://pugs.blogs.com/pugs/​2006/01/random_recaps.html
15:44 rantanplan_ joined perl6
15:45 tewk putter: ./ext/Span/t/span.t never seems to finish
15:46 putter PUGS_SMOKE_EXCLUDE_EXT++   thanks.  though sometimes you want to run the whole thing, but without worrying about watching and hand killing processes.  ulimit is great then.
15:49 putter gaal: why am I looking at my tests.yml?
15:49 gaal putter: it has timing information for test cases.
15:49 gaal "time" is either time started or time ended, I forget :)
15:50 putter tewk: I was thinking of the "longest running self-terminating" test. ;)  yes, span.t needs to be looked at...
15:51 putter gaal: I didnt see per-test info, just an aggregate time.  Am I missing it?
15:51 gaal it's a timestamp
15:51 gaal sec brb
15:54 * putter looks in the smoke room for bananas...
15:59 putter but first, using the nice new(?) CPU lines in the make smoke log output, it looks like t/rules/from_perl6_rules/stdrules.t is the longest running test.  It and t/pugsrun/09-dash-uppercase-c.t are 2x+ outliers.  With ext/Span/t/span.t of course non-terminating.
16:00 putter Upshot is, you just time t/rules/from_perl6_rules/stdrules.t, add margin, and you have a cpu seconds resource limit for make smoke.  :)
16:01 tewk putter: where is the smoke log?
16:01 putter make smoke > log_4smoke 2>&1 ;)
16:01 putter grep CPU log_4smoke |perl -ne '/(\d+\.\d+) CPU/;print $1,"\n"'|sort -n
16:08 stevan_ joined perl6
16:09 putter Ok, looking at smoke http://m19s28.vlinux.de/iblech/stuff/pugs-s​mokes/pugs-smoke-6.2.10-r8754-linux-normal-​-1137661693-4843--11381-9880-1501-1516-943-​21--e8261e01901b56f49e59cb930de19dc9.html , or grep succeed in the make test output,
16:10 vel__ joined perl6
16:10 putter the unexpected successes, tender smoked bananas, are light orange,
16:12 tewk t/rules/from_perl6_rules/capture.t is segfaulting on me, in parrot.  Should I remove embedded support for parrot or rebuild parrot clean?
16:13 putter the bananas in subrule.t have been eaten already, there are ~15 in capture.t, and one each in perl.t and conflicts.t.  happy browsing.  once tempted, please note some of the red fruit is also probably edible.
16:13 Limbic_Region tewk - remember that pugs targets the latest release of parrot and not necessarily the latest in the source tree
16:13 Limbic_Region it may be that your Parrot is too new
16:13 putter or too old, or... just not working embedded (like mine)
16:14 tewk my parrot is up to date as of minutes ago.
16:15 putter ah, see LR's "may be too new".  you might try the release (0.4.1).  but note that's segfaulting on me.  "a" ~~ /a/, boom.  strace pasted above for anyone who would like to pursue.
16:16 putter this may be a "embedding is perhaps not a good idea" pugs release.
16:17 tewk putter: will the tests run without embedding, I assume so.
16:17 putter yes
16:17 * tewk removes embedding support
16:20 * putter looks at builtins and datatypes first, as failures there tend to be the source of other failures as well...
16:23 putter the elems.t failures are caused by something being wrong with the type system.  Prim's are not obeying the argument type restrictions given at the bottom of Prim.hs.  The elems failures themselves are unlikely to cause problems elsewhere.  Though perhaps type-based dispatch is more extensively broken?  Skipping...
16:23 putter splice.t is the same.
16:26 bsb_ joined perl6
16:27 eric256 joined perl6
16:27 putter my.t suggest my parsing and scope restrictions are broken.   "my, something broke my my :(".  looking at it...  anyone been here before?  comments?
16:28 bernhard joined perl6
16:29 putter gaal: it might be worth knocking off some of the non-pil test failures first, as they may perhaps be related to the pil problems?
16:29 eric256 left perl6
16:31 aufrank joined perl6
16:31 * putter wants video of audreyt debugging pugs.  opportunity to see more efficient ways of doing things.
16:31 aufrank fg
16:32 justatheory joined perl6
16:33 gaal hi again -- sorry, putter, something's come up and I have to punt for now :(
16:34 aufrank what was gaal's job?
16:34 svnbot6 r8759 | audreyt++ | * arrays/elems.t: :todo<bug> the $scalar.elems case for now.
16:35 aufrank maybe I can do it
16:36 putter gaal: np :/
16:37 tewk I assume I need to rebuild clean after removin support for parrot embedding.  22 minutes :(
16:37 putter aufrank: gaal was looking into the pil failures, but I think that's likely too familiarity intensive to hand off. let's see...
16:39 * tewk heads to the shower while pugs rebuilds
16:39 svnbot6 r8760 | audreyt++ | * builtins/perl.t: Remove a passed TODO test.
16:40 putter oh my, the t/syntax/parsing/numbers.t :2<101010> tests were added by lwall.  Hmm, ok, maybe implement rather than :todo'ing.
16:41 putter ?
16:41 putter aufrank: what is your haskell/p6/p5 skill profile look like?
16:42 * audreyt goes to sleep and reminds herself that she only has to survive another one $job day
16:42 svnbot6 r8761 | audreyt++ | * Get smoke running again by disabling t/span.t temporarily.
16:42 putter tewk: I'm never sure when I need to rebuild from scratch or not.  I tend to keep an extra build or two, built in background, so I have something to break attempting the "or not".
16:43 putter Wish this kind of info was in the hacking pod.
16:43 putter (may be, been a while since I looked)
16:44 putter good night audreyt &
16:46 tewk putter: hacking.pod, can't find it in svn.
16:46 tewk I seem to remember something like that on the web
16:46 aufrank putter: haskell--/p6++/p5++
16:47 putter anyone with some haskell-fu but not necessarily much knowledge of pugs want to add a... ruleAdverbialNumber say, to Parser.hs, to handle larry's :2<1010> etc cases in t/syntax/parsing/numbers.t ?
16:48 putter aufrank: :)
16:51 aufrank oh my, 15 new messages in p6l!  are any of them larry on partial instantiation?
16:51 putter gaal's long standing "can do embedded on MW C" sounds like a Makefile.PL issue, but non-essential Makefile.PL fiddling should probably wait until after the release.  The release-specific testing isnt robust enough to casually discard "its been working for n weeks".
16:52 putter ooo... (putter shakes head, goes back to releng...)
16:56 putter aufrank: re p6++, there is always docs work.  I know docs/quickref/namespace went obsolete and could be updated.  but that's not releng... hmm...
16:58 putter oh, it would be nice if S29draft.pod could be sanity checked.  Some of the signatures and implementations had bugs.  Could eyeball, and/or check against p6l.  Hmm, but that's a just-post-release task.  hmm...
16:58 * putter notes again the absence of a TASKS list....
17:00 Lartuv joined perl6
17:00 * putter thinks, actually, better address the pair.t failures before messing with a new form of adverbs...
17:02 putter aufrank: eyeball the ext/ failures?  see if any are the result of changes?  http://rt.openfoundry.org/Foundry/Proj​ect/Source/index.html/pugs/browse/ext/  .  "history of this directory" is useful.
17:03 putter my fuzzy and no doubt hole-y impression is that the release is coming down to haskell problems...  could be wrong though...
17:06 petdance joined perl6
17:07 petdance left perl6
17:12 putter gaal: re commit note on pairs.t ("27 tests unexpectedly succeeded. Expect more of them.")... when? ;)
17:13 * putter reads up on the change in named parameter (almost said argument dduncan++:) syntax http://www.nntp.perl.org/gro​up/perl.perl6.language/23820  iblech++
17:15 putter iblech: did the VCode changes occur?  ie, is this all known to be broken, or was it working and something happend since?
17:17 hexmode joined perl6
17:24 putter http://dev.perl.org/perl6/doc/design/syn/S06.html
17:27 tewk putter: ok I can run t/rules/from_perl6_rules/capture.t now what, I don't see any unexpected Passes
17:31 Juerd There's a release-y/real easy athmosphere around here :)
17:32 marmic joined perl6
17:33 putter it would be interesting to know from a scan of ext/ whether/howmuch they result from known problems.  ie, passing pairs and named arguments, my escapes from scope, perhaps binding scalars (though that may also be a pair/sub problem), imports (which was flakey, may be fixed), similarly binding attributes,
17:33 putter tewk: no lines with both ok and TODO towards the top?
17:34 putter Juerd: :)
17:34 bsb_ left perl6
17:35 bsb_ joined perl6
17:35 * putter wants piln.  putter has been waiting for piln since... May?  June?  so close I can taste it.  release, then piln.  joy. ;)
17:35 tewk putter: got it, fixing
17:36 putter s/piln/pil2/  but same motivation
17:36 putter k
17:37 putter tewk: I dont know why those dont stand out.  Earlier I looked back and forth through the output, knowing they had to be there, and only found them by grep'ing for them.
17:38 tewk I didn't know what it look for, grep is my friend.
17:41 putter One task for p6++ folks is to look at the smoke, mouse over and find tests, especially failing ones, which have only [stub] for a documentation string, and write one.
17:43 theorbtwo Is there a current smoke on the web somewhere?
17:43 putter The tests at the bottom of t/builtins/undef.t , "tests due to apparent bugs", should all be :todo<bug>ed I think.
17:45 putter oh, never mind!  I'm confused.  undef.t is exploding.  need to find out why.
17:45 putter (bottom of test output != bottom of test file)
17:47 putter Could someone look at undef.t and see what's going boom?  tnx
17:48 tewk Why si svn ci so slow?
17:50 Ovid joined perl6
17:51 putter rt.openfoundry.org is sometimes slowish
17:53 putter is an empty {} a hash or a block?
17:53 svnbot6 r8762 | tewk++ | t/rules/from_perl6_rules/capture.t - Removed TODOS on passing tests.
17:54 putter tewk++ :)
17:54 putter anyone around who can give an authoritative answer?
17:55 theorbtwo putter: I'd expect a hash, since it's more useful.
17:55 tewk putter: that was really pretty simple once I got embedded parrot out of the way.
17:55 theorbtwo ...at least unless the want is otherwise, perhaps...
17:56 putter If not, that's another todo task - google (Snn?  p6l?) to find out.   eh, I guess default is the test is right.  I'll edit Parser.hs.
17:56 theorbtwo The test says Hash?
17:58 putter The test expects Block.  Is getting Hash.  The Parser.hs code which was saying "is this Hash-like" was completely broken, and the repair may have changed its behavior (which was sensitive to where annotations happened to be applied).  So...  an authoritative answer would be great.
17:58 robkinyon putter: Doesn't that depend on context?
17:59 putter thought I remembered something about {;}
18:00 putter robkinyon:  dont think so.  the implementation is "parse it as a block, look at the resulting ast, and if that can be interpreted as a hash, do so".  someone said something like this is the spec approach, rather than mere implementation.
18:01 theorbtwo I think that if, as a block, it starts with a pair or a list of pairs, then it's a hash.
18:01 putter thus the {;} for empty block.  which seems the right huffman too.  and {,} wouldn't work to go the other way, so...  I'm wondering if the test needs to be overruled
18:01 robkinyon so blocks can be interpreted as a hash?
18:02 putter err, syntax wise.
18:02 theorbtwo ...but I'd really prefer {} be a hash.  It's a pretty common idiom.
18:02 robkinyon I think that {} => Hash and {;} for Block is nice;
18:02 robkinyon {;} is even not that bad to type.
18:02 theorbtwo ...and an empty hash is, I think, /far/ more common then an empty Block.
18:02 putter I don't disagree.  but need spec to overrule test.  would be nice if someone looked... ;)
18:02 theorbtwo I think it needs to be p6l'd.
18:03 robkinyon I'm not making a statement re: the current discussion, but I think a method needs to be added to Hash -> Hash.empty() and Block.empty() (assuming that Block is a class)
18:03 SamB {;} is what you say when you want to talk about Haskell code that uses braces and semicolons rather than the layout rule ;-)
18:04 putter lol
18:04 theorbtwo sub {} is much clearer then {;}, I think... and easier to type, because there's not an unshifted char between two shifted ones.
18:04 putter robkinyon: neat idea.  though .new may be the equivalent
18:05 putter ohhh.  sorry theorbtwo...
18:05 putter I was thinking context as in Cxt, singular vs plural, etc.
18:05 robkinyon .empty may be appropriate for an alias to .new that takes no params
18:06 putter yes, the  sub {}  is fine.  its only in places where both can occur that there is a disambiguation issue.  sorry.
18:06 * putter pauses to picture what p6 code would look like using layout...
18:07 theorbtwo It's not uncommon that both are possible.  my $x = {}
18:07 putter yes.  and that's exactly the test case at hand. ;)
18:08 putter t/builtins/ref.t expects Block
18:08 G2 joined perl6
18:08 theorbtwo I think it agrees with spec, and spec is wrong.
18:10 SamB putter: you *don't* want the layout rule
18:10 * putter focuses on {} because it seems bitesized.  fixing argument lists + named arguments + pair passing may be out of my envelope...
18:10 SamB part of the the rule is "when there would otherwise be a parse error,"
18:10 putter LOL :)
18:11 theorbtwo SamB: Do you know that the probability of a random string of bytes being a valid perl program increases with length?
18:14 putter Ok, it looks like there is one big cluster of failure, and then some little bits.  Big chunk is argument passing, especially wrt named parameters, pair arguments (dduncan++), and first class argument lists.  Bits include my variables escaping from scope, and ...
18:17 \xe6var joined perl6
18:22 bsb_ left perl6
18:27 putter Ha! S06  {...} is always a block. However, if it is completely empty or consists of a single list, the first element of which is either a hash or a pair, it is executed immediately to compose a hash reference.
18:27 putter emphasis on _empty_
18:27 theorbtwo Well done!
18:28 SamB theorbtwo: yes!
18:28 SamB theorbtwo: I read some page about that once
18:33 svnbot6 r8763 | putter++ | t/builtins/ref.t  Corrected test. $x = {}; is now a Hash, per S06.
18:33 putter so I was wrong.  that was a fix which simply required looking at the test file, which pointed to S06 (a now non-existent section), skimming S06, and updating the test.  No haskell-fu required at all.
18:33 putter :)
18:35 putter SamB: apropos the, if you have a foo:<> with an empty name, it becomes a default for that category (sort of like a multi, but with declaration order sensitivity... hmm, that's something to think more about..).  soo....
18:36 putter In p6, a parse error is just a way of calling something:<> ! :)
18:40 tewk putter: $<matches><a> is the undef.t problem. what is that suppose to mean?
18:41 tewk $<matches><a> that is
18:43 Jooon_ is now known as Jooon
18:46 putter $<matches> is an alias for $/<matches> . my fuzzy recollection is it has magic meaning, rather
18:46 putter than being just $/<foo>  from a /<foo>/ match.  But I could be wrong.
18:46 putter hmm... looking...
18:47 * putter thinks is so nice when reading p6l to see larry saying so many things I agree with...  warm fuzzies.
18:50 theorbtwo BTW: foo:<> being a default for the foo parse state isn't random, it comes out of the longest-token rule.
18:50 putter tewk: if you run  "a=b\nc=d\n" ~~ / $<matches> := [ (\w) = \N+ ]* /  you get a match object which doesnt have a <matches> entry.  (So, <matches> isnt magic, just something set above in the regexp).  That obviously isnt what the code is expecting.  And the mess of ),),),  make me wonder if this is another pairs issue...
18:50 putter ?eval 3
18:51 theorbtwo foo:<> will always match, but is also always shortest and thus lowest-priority.
18:51 evalbot_8745 is now known as evalbot_8763
18:51 evalbot_8763 3
18:51 putter ?eval "a" ~~ /a/
18:51 Juerd I find it scary when Larry says things and I agree. It usually means he has convinced me, and that could be a personal weakness of me :)
18:51 evalbot_8763 Match.new(   ok => bool::true,    from => 0,    to => 1,    str => "a",    sub_pos => (),    sub_named => {} )
18:51 theorbtwo I find it scary when I suggest something and Larry takes it up.
18:51 tewk putter: I'll keep looking, that helps
18:51 theorbtwo Larry's supposed to be smarter then me!
18:52 putter ?eval "a" ~~ /$<x> := (a)/
18:52 Juerd theorbtwo: I don't think he is, though.
18:52 tewk I got this test passing ->  is eval(':10<99>'), 99, "Adverbial string form of dec number works";
18:52 evalbot_8763 Match.new(   ok => bool::true,    from => 0,    to => 1,    str => "a",    sub_pos =>     (Match.new(        ok => bool::true,         from => 0,         to => 1,         str => "a",         sub_pos => (),         sub_named => {}      ),),    sub_named => {} )
18:52 putter yeah, that's just wrong.
18:52 Juerd theorbtwo: He's a genius, that's for sure, but it only means he has the right balance between creativity and intelligence :)
18:52 putter let's see...
18:52 Juerd theorbtwo: It's not only about smartness.
18:53 putter ?eval  rule x { a } "a" ~~ /<x>/
18:53 evalbot_8763 Match.new(   ok => bool::true,    from => 0,    to => 1,    str => "a",    sub_pos => (),    sub_named =>     { "x" =>         Match.new(           ok => bool::true,            from => 0,            to => 1,            str => "a",            sub_pos => (),            sub_named => {}         )     } )
18:54 putter so... I forget what it's called... binding capture (not!)  isnt working, but subrule capture is.
18:54 * theorbtwo grrs at nntp.x.perl.org.
18:54 theorbtwo Work!
18:55 putter Juerd, theorbtwo: taste is also a big one.
18:55 Juerd putter: I disagree.
18:55 Juerd Perl by itself is a taste group we're all in :)
18:55 Juerd There's little further taste to specify.
18:55 putter This particular ...  disagree, really, how?
18:55 theorbtwo I disagree with your disagreement.
18:55 Juerd It's hard to express
18:56 theorbtwo There's lots of different sorts of perl programmer -- there's more then one way to be it.
18:56 Juerd I've had a feeling the last few years that the current group of people who love Perl and Perl 6 have a sense of taste, a sense of good design, that just fits the way humans think. And that many others, typically people who don't like perl and perl 6, have very different taste.
18:56 theorbtwo Hm, I didn't know develooper did the ntp pool.
19:00 gaal rehi (sorta)
19:01 gaal tewk: fwiw, you could have deleted a few objects from dist/build and Parrot.hs; that would have triggered a rebuild from Parrot.hsc and saved you the full rebuild
19:01 gaal putter: by "Expect more of them" I meant don't expect them to fail :)
19:03 tewk gaal: Someday I will know enough to be able to know what those few objects would be :)
19:04 gaal == today! :-)      dist/build/src/Pugs/Embed* and dist/build/src/Pugs/Embed/*
19:04 gaal but yeah, sorting out build stuff takes low blood levels in the coffee
19:07 putter I agree perl has a distinct flavor.  Low hanging smoked bananas aside.  (And yes, I'll have you know the US Supreme Court has ruled that bananas are a fruit.  Or was it a vegetable?  One or the other.  That was the issue of the case.)  Anyway...
19:07 putter But even within that flavor, you'll have to admit some apply it with notable taste, others with notable lack thereof, and the great spread in between.  no?
19:07 putter I'm not saying perl, especially at its best, isn't an acquired taste.  Just that taste is always an important part of system design.
19:07 putter Anyway, my particular happiness a moment ago was seeing Larry both well aware of the embedded language potential of p6, and thinking about / designing for  the social difficulties which may occur.
19:07 putter tewk: ./parrot compilers/pge/demo.pir  doesnt seem to know about := .  So there may be hoop jumping pugs-side.  Keep open the posibility of "punt to audreyt".  As -Ofun may require frustration avoidance.
19:07 putter It's quiet, too quiet.  I wonder if I still have connectivity...
19:07 gaal putter: moose!
19:08 tewk Ok given :10<8888>  I need to be able to parse digits, Parser/Number.hs uses a function    decimalLiteral = number 10 digit,   should I export that and use it in Parser.h?  I'm going to get bases 2,8,10,16 working first, before moving on to larrys :(pick some number between 11 and 10 + 26)<11>
19:09 putter hi gaal!
19:10 putter gaal: re more of them, there is still brokeness, so I was wondering whether it was "known and going away".  guess not :)
19:10 theorbtwo I'm not sure that doing bases 2,8,10,16 first will actually make arbitrary bases any easier.
19:10 gaal putter: sorry for the misleading moosage :)
19:10 tewk I'm using putter going to TODO the undef.t one for now Ok ?
19:10 Juerd putter: Yes, but I think those with lack thereof aren't in the Perl 6 community much.
19:10 Juerd putter: Which is good for the final result.
19:11 * putter is still confused by gaal's first herbavor reference... not sure moosage clears it up or not...:)
19:11 gaal tewk: doesn't haskell have a base conversion function in the prelude? it might!
19:11 Juerd putter: Re the quiet - I'm backlogging for $job. Status reports are as hard as changelogs, when not maintained.
19:12 gaal do we have a learning bot here?
19:12 theorbtwo Anyway, base 2/8/10/16 have simpiler ways to do that: 0b... 0o.... 0d.... 0x.....
19:12 Juerd And since I always write detailed status reports...
19:12 gaal is there :$b<$str> ? :)
19:13 Juerd theorbtwo: I wonder, though, do we get 0n($foo)123 too?
19:13 putter tewk: hmm... or parse it base 32 and and then validate the character set as a separate step... hmm...
19:13 Juerd gaal: Hm, same thing, different syntax.
19:13 Juerd gaal: My syntax is based on regex :nth()
19:13 putter tewk: todo bug sounds good
19:13 theorbtwo You can certianly do that with an eval STRING, but I don't think you can do that generally.
19:14 putter gaal: maybe a  make clean_enough_for_embedding_change  target?  ;)
19:15 Juerd m&m's taste bad when they have been frozen.
19:15 Juerd Memo to self: don't leave candy in the car.
19:15 gaal putter: yes! more targets will no doubt help thing! :)
19:15 gaal *things
19:16 Juerd putter: It's time for make wim.
19:16 gaal wow, leaving things in cars around here fries, not freezes them
19:16 Juerd Or make wiw.
19:16 tewk No, if a rerun of Makefile.PL doesn't have a parrot in PERL6_EMBED it should just rm the old objects from dist/build so it doesn't get linked in
19:16 gaal make $$$ fast
19:16 theorbtwo make win
19:16 theorbtwo Hm, I like frozen M&Ms.
19:17 gaal tewk: that's actually a cool idea. compare with Makefile.old and deduce what must be cleaned
19:18 tewk Does gaal volunteer ?
19:18 gaal so, putter, what's next?
19:18 gaal tewk: heh no, I'm conserving sanity for now :)
19:19 putter gaal: re "sorry for the misleading moosage", it gave me a moment's hope.  snif.
19:19 putter Juerd: hmm... I reread for the fourth time... you suggest  ohhhh, the p6 community!  got it.
19:19 putter re Status reporst, and not maintained, sigh, yes.
19:19 putter tewk: what gaal said... there is already code to handle 0x and, well decimal of course, and...
19:19 putter 0b, so that's worth looking at.
19:19 tewk Quick haskell question, for debug I want to take two ints stringify them and concat the strings, so  1 2 becomes "1 2"
19:19 tewk putter: Ok that just clicked
19:20 gaal tewk: intersperse " " map show intlist
19:20 * tewk goes looking of 0b examples
19:20 SamB er
19:20 tewk gaal: thanks just what I needed
19:20 gaal uh, with a $ in there after the " "
19:20 theorbtwo 0b0 0b1 0b10 0b11 0b0.1 0b.1
19:20 gaal and probably there's somethign better than show :)
19:20 theorbtwo (The last two are both 0.5.)
19:21 SamB don't you also need a "concat $" at the beginning
19:21 SamB ?
19:21 gaal oh right :)
19:21 gaal actually
19:21 gaal tewk: I think there's a join util you can use that does that.
19:21 Juerd putter: Writing something that happened three days ago as if it just happened is hard.
19:21 SamB gaal: is there?
19:21 gaal SamB: in pugs
19:21 Juerd putter: Let alone things that actually happened a week ago
19:21 SamB oh.
19:22 gaal like we have "forM = flip . mapM"
19:22 gaal (these little things are so useful :-)
19:22 putter Juerd: yes.  I sometimes need notes to remember what I did yesterday. ;)
19:22 tewk Thanks, I think I can put something together now
19:22 SamB I was going to say, when I asked about the Haskell equivalent of Python's s.join() method, I was told to use intersperse and concat...
19:23 * gaal looks
19:23 Juerd putter: I'm backlogging the notes, more or less :)
19:23 Juerd putter: The worst thing is that these reports need time information. Something I usually forget to keep.
19:23 Juerd I'm too busy thinking, coding, documenting, to watch the time spent to do so.
19:24 Juerd Fortenately, I have my laptop's syslog
19:24 * putter really wants a collaborative editing environment.  so I can look over tewk's sholder.  and audreyt's.  and gaal's.  and... maybe I wouldn't get any work done...
19:24 Juerd putter: Like SEE?
19:25 gaal SamB: well, I looked and that util func isn't defined. I *thought* I remembered it...
19:25 * putter pictures wall of monitors... a "perspective on productively programming people".
19:25 tewk putter: once we have perl6 we can build the collab thingy :)
19:25 putter there's actually an opensource ajax thing in progress...
19:26 putter re SEE, googling...
19:26 tewk src/Pugs/Lexer.hs has number which parses and does base transforms, I just needs to import it I guess.
19:26 putter .. Vatican: the Holy See, no,...  putter realized he need more of search term... ;)
19:27 gaal find src -name \*.hs -o -name \*hsc | xargs grep 'concat.*inters'| wc -l
19:27 gaal => 26
19:27 theorbtwo subethaedit-- # osx-only closed-source
19:27 theorbtwo gobby++
19:27 rodi left perl6
19:27 wolverian gobby is great. I just wish it'd be ported to gedit
19:27 tewk Parsec and the functions audrey has built on top of it rock.  you gotta love between :)
19:28 wolverian (consolidation++)
19:28 tewk gobby++  I just got it with ports last night.
19:28 Juerd putter: You could try to persuade Perl 6 hackers to put up a webcam.
19:28 Juerd putter: SEE := SubEthaEdit
19:29 putter tewk: it looks like you will also need to export it.
19:29 tewk hmm, Parser/Number.hs uses it.
19:29 putter Juerd: ahhhhh. tnx
19:30 * gaal is on skype
19:30 tewk maybe it is a different function
19:30 putter ?
19:31 Juerd Let's use tags :)
19:31 Juerd I mean
19:31 Juerd [tags] Let's use tags
19:31 Juerd :P
19:31 gaal putter: re: moose, http://forum2.org/moose/
19:33 putter tewk: one option is to clone charNum, strip is a bit, giving you something which parses the whole :\d+<\d+> construct.
19:33 putter s/strip is/strip it/
19:34 putter hmm... or not...
19:34 tewk Pugs/Rule/Token.hs number is what I want I think
19:35 tewk line 352
19:35 tewk yep
19:36 putter gaal: tnx.  fyi, Dropping One for Science is NotFound, and Voyages of the Space Barrel, the MOO link is nogo.
19:36 putter k
19:36 gaal wow, that moo has been offline in a while.
19:36 gaal s/in/for/
19:36 tewk Any problem with importing Pugs/Rule/Token.hs in Parser.h?
19:36 tewk Anyone know of a klipper like tool of OS X ?
19:36 putter looking...
19:37 gaal hmmm, I found myself wondering about layering of the pugs sources a few times
19:37 gaal but I don't know, tewk
19:38 tewk I think it will work Parser.hs imports Rule.Expr which is a peer to Rule.Token, one way to find out.
19:39 putter tewk: seem plausible.  I'd make it as narrow an import as possible.
19:39 tewk I saw several versions of the function number all over the place, but that is the one that Parser/Number.hs uses.
19:40 Khisanth joined perl6
19:41 putter ah.  I'm not sure Rule.Expr is going to get your Rule.Token...
19:42 tewk putter: No I was just using Rule.Expre as reasoning that importing Rule.Token shouldn't be that off the wall, I will restrict the import.
19:44 * putter wants a gobby minor-mode for emacs
19:45 * tewk would have to give up vim or emacs
19:46 putter tewk: err, ???
19:46 tewk s/or/for/
19:46 putter ah
19:46 hcarty joined perl6
19:46 putter emacs has a vi mode... ;)
19:46 theorbtwo Or we could all start using Yi, assuming yi is usable.
19:47 tewk I'm becoming a lambda head so I should probably just bite the bullet one of these days.
19:47 tewk Have you seen slime for CLISP, it looks cool.
19:48 SamB theorbtwo: what? with no real hIDE?
19:48 putter re Yi, no just how hard would it be to do Yi+pugs for a p6 editor...? ;)
19:48 putter slime++
19:49 Odin- Yi?
19:49 putter google Yi editor  (I dropped the link)
19:49 SamB Odin-: text editor in Haskell
19:50 Odin- Hm.
19:50 putter unclear from page (superficial look) how mature it is.
19:50 Odin- Any P6 editor would have to be extensible via P6, of course... :>
19:51 putter goes with saying.  emacs may be an operating system, but what if you want your editor to, say, do your homework.  p6 is clearly the way to go. ;)
19:52 Odin- Hmm.
19:52 Odin- Frankly, I'd like a P6-based emacs. ;)
19:52 putter want features => get releases out faster => ok, what's next releng wise?
19:53 * putter was previously wondering how hard it would be to do a  use Languages::Lisp::Emacs; front end.
19:56 tewk tewk is looking for an alphanumeric [a-z0-0]parser in Rules.
19:56 putter hmm... my smoke had an eval_yaml failure, but it works now.  ok...
19:56 tewk tewk is looking for an alphanumeric [a-z0-0]+ parser in Rules.Token, anyone know of something like that?
19:57 putter looking...
19:58 tewk I could build one, but I'd rather reuse.
19:58 putter Parser.hs uses  many alphaNum from Lexer...
19:59 tewk that will do, thanks
20:01 putter char ':'; base <- many digit; char '<'; rep <- many alphaNum; char '>'; ... ?
20:01 putter maybe
20:03 theorbtwo Ideally, you want that to be more complex then just alphaNum -- :2<0123> is not valid.
20:04 putter thus the ... ;)
20:06 putter gaal: re what to do, http://m19s28.vlinux.de/iblech/stuff/pugs-s​mokes/pugs-smoke-6.2.10-r8754-linux-normal-​-1137661693-4843--11381-9880-1501-1516-943-​21--e8261e01901b56f49e59cb930de19dc9.html  There seems a big hunk of failure re subs, named parameters, pair arguments, and 1st class argument lists.  But a
20:06 putter lot of the failures in operators/ look like they might perhaps be independent.
20:07 putter Parser does have an explicit  fail  function doesnt it?  looking..
20:07 putter ah, called  fail  :)
20:07 tewk Yeah I use fail.
20:08 tewk theorbtwo: yeah I can refine alphaNumeric
20:09 putter hmm, though I was maybe thinking of something gentler.  does fail simply trigger a backtrack, or does fail the parser?
20:09 putter either would be fine here, but in general...
20:11 putter gaal: oh, and the junction examples.t is failing.
20:11 SamB putter: depends on if someone put a "try" around it
20:11 putter s/the/a/
20:11 putter ah, thanks.
20:12 putter just like p6 :)
20:12 gaal putter: looking.
20:12 * putter wants to try again building a try/fail based p6 regexp engine in p6 real soon now...
20:13 wolverian hm, python 2.5 has .assuming too :) (with a different name)
20:14 SamB putter: well, in Parsec try just backtracks to the beginning and fails if its argument fails ;-)
20:24 tewk Another stupid haskell question, I need a function for [Char] -> Integer
20:25 gaal tewk: do you know of hoogle?
20:25 SamB tewk: what shall it do?
20:25 gaal http://haskell.org/hoogle/
20:26 SamB and that isn't really a stupid question
20:26 gaal but maybe you just want "read" :)
20:27 tewk hoogle++
20:27 putter openfoundry is now really out of it.
20:27 gaal haskell++ for allowing something like hoogle to be so useful
20:29 nnunley joined perl6
20:29 SamB often my questions are too general for @hoogle to find me a function
20:30 tewk ?paste
20:30 gaal perlbot nopaste
20:30 perlbot Paste your code here and #<channel> will be able to view it: http://sial.org/pbot/<channel>
20:30 gaal SamB: in that case I think you need the constant function "42"
20:31 tewk so why nopaste, I always forget the "no", does it come from no pasting in the channel?
20:31 gaal norwegian paste isn't it good?
20:31 theorbtwo gaal++
20:33 pasteling "tewk" at 71.32.238.88 pasted "Need [Char] -> Integer" (17 lines, 576B) at http://sial.org/pbot/15526
20:34 gaal putter: do you understand how class attributes work in pugs?
20:36 gaal I'm looking at t/operators/binding/attributes.t - all the :=s are failing
20:36 Khisanth joined perl6
20:36 gaal well, except the "our" one, which makes me thing it's in fact the one that isn't working correctly :)
20:36 putter ;)
20:37 gaal so, src/Pugs/Eval.hs:552
20:37 gaal that findVarRef is failing
20:37 gaal on "$.x"
20:37 putter note that my variables are escaping their scopes, (my.t) so there seems something amiss around there...
20:38 putter several of the failing files look like bind failures under the covers
20:38 * gaal looks at my.t
20:40 * putter wishes he had 1/4 of clue, and had kept notes while going through the test failures.  sorry.
20:40 gaal I don't think the failures there are sope leakage, they look like a feature that hasn't been implemented at all yet
20:41 gaal I seem to remember Audrey mentioning inline mys were hard
20:41 putter ah.  ok.  such things could be :todo<feature>ed.
20:41 putter let's see, where were some other bind failures...
20:42 gaal marking.
20:44 * putter still can't svn up.  bah. :(
20:44 gaal nor I svn ci.
20:46 putter any thoughts on pair args/named params/1st class arg lists?  were there major changes, or is something little biting us?
20:47 putter I note the universe has an excess of trailing commas...
20:48 gaal putter: see r7622 and further "demagicalized pairs" work. I don't understand it, myself.
20:48 gaal 1st class arg lists is \()? that's pretty new I think.
20:49 putter k
20:49 putter t/syntax/pairs.t could use clearer doc strings.
20:50 putter ok, if I put off lunch much longer it will be dinner.
20:51 gaal is there a late equivalent for brunch? high tea doesn't sound nearly as nutritious as it should.
20:51 putter lol :)
20:52 * putter pictures tiny little cookies nibbled with small cups of tea.  all sterotype - no direct experience.
20:52 putter some labs apparently have nice afternoon teas.  Berkeley CS??
20:53 putter ok, bbl &
20:54 stevan_ is now known as stevan
20:54 gaal (anyone by putter): are the tests in t/oo/methods/topic.t still pertinent? it's based on A12...
20:54 gaal stevan!
20:54 gaal s/by/but/
20:58 stevan hey gaal
20:58 * stevan is currently busy in #lisp trying to get his LISP install working right
20:59 nnunley stevan:  Which LISP, and which OS?
21:01 dduncan joined perl6
21:03 stevan nnunley: OS X Tiger and i grabbed the OpenMCL Lispbox packages from gigamonkeys  
21:10 kanru joined perl6
21:11 nnunley Cool.  Unfortunately,m not alot of experience with OpenMCL.  I know that both clisp and sbcl compile and work under OSX.
21:11 nnunley Err,  No experience with OpenMCL, that is.
21:11 Juerd stevan: Foo does Hash :)
21:17 nnunley Hrm.  Would porting mburg/iburg over to pugs be a useful thing?
21:19 stevan Juerd: no, that would be wrong
21:20 stevan Juerd: because if that was done automagically, then what if I ran into method conflicts with other roles I was importing
21:20 dduncan openfoundry seems achingly slow
21:20 stevan what about if my Foo needs a .keys, .values, .exists methods which do totally different things? the Hash methods get shadowed
21:20 stevan Juerd: that is not a solution, trust me, I already thought that one through
21:21 Juerd stevan: It may not be a solution, but it is a step in the right direction, I think.
21:22 Juerd stevan: Maybe we just need a Perl5Scalar, which can't be a Perl 6 object.
21:22 stevan Juerd: how is it a step in the right direction?
21:22 Juerd stevan: More things work than without it.
21:22 stevan Juerd: S02 says "Perl 6 is an OO engine"
21:22 stevan Juerd: what things work with what?
21:22 Juerd It can be an OO engine even without pure OO.
21:23 stevan Juerd: its not a purity issue really
21:23 Juerd Scalars definitely don't work like objects as we know objects from other languages.
21:23 stevan Juerd: some other language, well kinda
21:23 Juerd $bar = $foo; $bar = 3 doesn't change $foo's value. That's very un-object-like.
21:23 stevan Juerd: because that is not really what is happening there
21:23 stevan there is some desugaring under the coverse
21:24 Juerd Maybe we have to accept that $foo and $bar aren't objects.
21:24 stevan a Scalar is a singular container
21:24 stevan Juerd: if that is what @larry decres I will accept it
21:24 Juerd They can be used with OO syntax, for example $foo.uc, but they're not really objects.
21:24 stevan but until then,.. @larry has said "everything is an object"
21:24 Juerd Yes, he has.
21:24 stevan Juerd: in the Synopsis?
21:24 Juerd I think he was wrong when he said that, OR, that he didn't design the rest of the language according to that mantra.
21:25 Juerd I don't believe that in the Perl 6 design, excluding that one line in S02, everything is an object.
21:25 stevan Juerd: I agree with your second part :)
21:25 Juerd Alternatively, "Everything is an object" was just for competition with Python, where everything is an object, except when it's not.
21:26 stevan Juerd: well, this is all very fuzzy, meaning, we cant implement that without hacking things to peices
21:26 Juerd I understand.
21:26 Juerd This is something I've been worried about for a while.
21:26 stevan :)
21:26 stevan there is little reason for bless to exist in my mind
21:26 Juerd In fact, rafl and I discussed it while walking in the Berlin snow.
21:27 stevan and there is even less reason why I would want to bless another object into a diferent class
21:27 Juerd Then I fear your mind excludes (semi-)automatic translation of Perl 5 programs.
21:27 stevan Juerd: nope
21:27 stevan I dont exclude that, at all
21:27 Juerd stevan: If we get a Perl5Scalar type, it wouldn't be blessed into a class, but into a *package*, and circumvent all opaque OO stuff.
21:27 stevan but I dont think that Perl 6 should be crippled to make way for that
21:28 stevan Juerd: Class.isa(Package)
21:28 Juerd Adding a feature doesn't cripple
21:28 Juerd stevan: Shhhh
21:28 Juerd stevan: Nobody needs to know :)
21:28 stevan Juerd: well, it is,.. no need to seperate them :)
21:28 stevan but okay,.. I will go with your line of reasoning for a moment
21:28 stevan what is a Perl5Scalar?
21:29 stevan an unboxed type?
21:29 Juerd It's a
21:29 Juerd It's a scalar that behaves like a Perl 5 scalar
21:29 Juerd i.e. no methods on it, except when it's blessed
21:29 stevan ^Scalar.isa(Object) in Perl 6
21:29 stevan there is no primative "scalar" in Perl 6
21:30 Juerd I doubt that.
21:30 stevan Juerd: why?
21:30 stevan there are values
21:30 Juerd Because of what I just said: scalars, arrays and hashes don't quite behave like objects
21:30 stevan uhm,.. in perl 6 they do
21:30 stevan @arr.elems()
21:30 Juerd Wait
21:31 stevan in S29 it states that this form:
21:31 Juerd The way I see @arr.elems() is: @arr is USED AS an object
21:31 Juerd Not @arr IS an object.
21:31 stevan delete %hash{key}
21:31 stevan is transformed into this format by a macro:
21:31 \xe6var joined perl6
21:31 stevan %hash.delete(key)
21:31 stevan I would assume that @arr does the same thing
21:31 stevan the "built-in function" syntax is just a macro to convert to the object syntax
21:31 Juerd Sure, but objects typically don't do special things in list context.
21:32 Juerd From my POV
21:32 stevan Juerd: in what language?
21:32 Juerd (The POV that is Perl 5)
21:32 Juerd stevan: What languages do you know that have list context? :)
21:32 Juerd I know Perl 5.
21:32 stevan yes, well Perl 5 is a very very very very small subset of the wide range of computer langauges available
21:32 Juerd Perl 6 is our topic of discussion, so not a valid argument.
21:32 stevan Juerd: list context is just sugar,..
21:33 Juerd In every language, an object is considered a single thing
21:33 Juerd In Perl, it is too
21:33 Juerd However, arrays and hashes are different
21:33 Juerd Also, objects typically have reference semantics: copy the object, get a copy of the reference
21:33 Juerd Scalars are different
21:34 \xe6var won't .delete on array do the same madness as in perl5?;)
21:34 \xe6var i.e. @a = (1,2,3); undef $a[1]; // @a = (1, undef, 3) ...
21:34 stevan Juerd: Arrays, hashes and scalars can all be implemented as objects
21:34 Juerd I can live with "everything is an object", but then context and assignment would work very differently as a direct result, in my mind.
21:34 Juerd stevan: Implementation is different from language.
21:35 Juerd I expressed that as "arrays are *interfaces for* Array objects"
21:35 stevan Juerd: yes, but they must play nice together
21:35 Juerd stevan: Everything plays nicely together given well balanced abstraction.
21:35 stevan Juerd: method Array::postcircumfix:<[]> (^Array @a: Num $idx) { ... }
21:35 stevan you dont need special "behaviors" for arrays at all
21:35 Juerd I hate natural languages. I can't use them to express structures that I have in my head.
21:36 Juerd I wish I could just send you a braindump.
21:36 Juerd Sorry, hands hurt. BBL
21:36 stevan Juerd: I know what you mean (at least I think I do), but I think you are only seeing part of the overall picture
21:37 stevan the meta-level must create all the "things" which magically appear once the language fully loads
21:37 Juerd I see the overall picture, but not how the overall picture can ever implement the language as defined by the synopses.
21:37 Juerd afk
21:37 Juerd s.the.an.  
21:37 stevan Juerd: amen to that
21:37 Juerd afk for real now
21:37 stevan ok, .. I will let you rest you hands,.. I need to go afk too
21:47 saorge_ joined perl6
21:56 \xe6var joined perl6
22:04 bsb joined perl6
22:08 _SamB_ joined perl6
22:10 wilx joined perl6
22:13 _SamB_ is now known as SamB
22:16 svnbot6 r8764 | Darren_Duncan++ |  r2093@Darren-Duncans-Computer:  darrenduncan | 2006-01-19 14:11:20 -0800
22:16 svnbot6 r8764 | Darren_Duncan++ |  /ext/[Locale-KeyedText|Rosetta] : some small pod updates to change 'argument' to 'parameter', mainly in KeyedText.pm and Model.pm
22:21 justatheory joined perl6
22:25 Limbic_Region joined perl6
22:35 feng123 joined perl6
22:35 Ovid joined perl6
22:37 frederico joined perl6
22:47 azuroth joined perl6
22:47 eric256 joined perl6
22:47 eric256 left perl6
22:48 eddddddddddddddd joined perl6
22:49 eddddddddddddddd left perl6
23:10 hexmode joined perl6
23:12 nicbrown joined perl6
23:14 DaGo joined perl6
23:32 rafl Juerd: What did we discuss?
23:35 Juerd rafl: References versus "real" variables
23:35 Juerd rafl: And on how that's quite unique to Perl, in the Known World of dynamic languages :)
23:36 rafl Juerd: OK, I remember.
23:40 Juerd Hm; I just received a donation of $ 3.83
23:40 Juerd I really wonder how someone thinks of such an amount
23:40 obra weird
23:40 obra maybe it was two pounds sterling?
23:40 theorbtwo That'd be my guess.
23:41 obra 18:41 <purl> obra: 2 British Pound makes 3.5193 U.S. Dollar
23:41 obra at this instant's rates
23:41 theorbtwo Depends who is converting.
23:41 obra right
23:41 obra 18:42 <purl> obra: 3 Euro makes 3.6295 U.S. Dollar
23:41 obra closer
23:42 integral maybe someone assumed juerd would receive them in euro too
23:45 sub_chick joined perl6
23:47 scook0 joined perl6
23:53 Juerd obra: It came from a US Dollar account, from a US citizen.
23:53 obra weird
23:53 Juerd obra: So it'd be unlikely :)
23:53 Juerd My account is also a USD one.

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

Perl 6 | Reference Documentation | Rakudo