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 2006-08-29 05:26:57 -0700]
Set by Akwa|user on 14 September 2006.
00:00 xdg joined
dduncan what you see is what it should say 00:00
mine now says that too, but didn't initially ... 00:01
I think I'll nopaste some of my 'make' output for reference ...
Juerd nothingmuch: And you thought Perl 6 was scary :P 00:04
nothingmuch: Perl 5 still has a lot to discover for most people
pasteling "dduncan" at 24.69.53.198 pasted "before and after a trivial version.pl update" (104 lines, 7K) at sial.org/pbot/19753 00:16
00:23 rodi joined 00:32 lambdabot joined 00:34 MacVince joined
MacVince QUick question: I wrote a (incomplete) sudoku solver a few weeks ago in Python. Would it be something that I could translate to Perl 6 and include in pugs/ext? 00:36
or does that not belong there?
wolverian there's already one in /examples/continuation/nondet_sudoku.pl, but if yours is different, then sure!
(in examples, probably) 00:37
mugwump you know, I think one based on continuations will be different from one written in Python ;) 00:40
wolverian good point :) 00:41
mugwump also the one there looks incomplete 00:45
00:57 zgh joined 01:51 dolmans joined 01:58 weinig|fooding is now known as weinig 01:59 bsb joined 02:05 lambdabot joined 02:20 markstos joined 02:38 mako132_ joined 02:54 mjk joined 03:46 apple-gunkies joined 04:02 penk joined 04:21 pkeane joined 04:23 rindolf joined
rindolf Hi all. 04:23
ingy: here?
ingy hi rindolf 04:29
rindolf ingy: hi.
ingy: I file a patch to the IO::All RT.
s/file/filed/
ingy does anyone know that module that lets you use hashes and arrays as hash keys?
rindolf ingy: Tie::HashRef?
ingy that's it 04:30
thanks
rindolf ingy: you're welcome.
ingy anyway, you were saying?
rindolf Or is it HashRef.
ingy you want me to get off my butt and release IO::All?
mauke RefHash
rindolf ingy: rt.cpan.org/Public/Bug/Display.html?id=20053 04:31
lambdabot Title: #20053: IO/All.pm isn't syntactically valid., tinyurl.com/mnlt8
rindolf ingy: there's a patch there.
mauke: right. RefHash.
ingy Tie::RefHash
rindolf: added that url to my "Release IO::All" todo item... 04:34
04:35 weinig is now known as weinig|zZz
rindolf ingy: OK. 04:35
ingy has been porting Python to Perl all day 04:37
so boring...
04:38 SubStack joined
ingy Python is so boring... 04:49
at least that makes it easy to port 04:50
MacVince porting what Python code? 04:54
ingy PyYaml
trac.yaml.com/trac/wiki/PlYaml
lambdabot Title: PlYaml - YAML.com Trac - Trac
dduncan fyi, if any of you haven't heard of this yet, well worth a look: citizendium.org/
lambdabot Title: The "Citizendium"
ingy dduncan: Makes me forking sad 04:56
MacVince ingy: Oh, you're the guy who got the grant for the port.
ingy MacVince: yes 04:57
MacVince ingy: good luck there, Yaml is very cool and it would be a very cool addition
dduncan ingy, I won't discount it yet ... sounds like a good idea
ingy Perl deserves to have YAML tools that actually work
MacVince indeed 04:58
ingy I'm just happy someone came along and did all the hard work
dduncan I hooked up with it anyway, in a minor capacity, as there seems to be a tangent between Citizendium and something I've been planning to make for awhile ... the tangent is that I was planning to make a new software tool that would be better suited for the task long term than the wikis of today
ingy but porting is so boring. I'm trying to resist the temptation to write a program to port it for me 04:59
dduncan meanwhile, the thought processes for going into it may allow me to make occasional suggestions to improve the current one
I'm very much into epistemology and all that
ingy surely a generalized Python to Perl compiler would be more interesting...
but I go down that road, we'll end up with nothing 05:00
I can't wait to see just how slow this new YAML.pm will be 05:01
MacVince hehe
dduncan of course, my involvement with Citizendium would be minor if best in the short term; I'm still focusing my attentions on Perl 6 and its tangents
ingy I'm also resisting the urge to optimize until the tests all pass
dduncan that is all
MacVince Well, hopefully the Python crowd will cheer up to the idea of parrot and those kinds of ports will become unnecessary in the future
ingy I thought the parrot was dead... 05:02
guess it was just pining for the fjords
wolverian pining for a ponie? 05:03
ingy array.pop() === pop @array 05:04
array.pop(0) === shift @array
wolverian .pop() is kind of neat actually 05:05
badly named probably
ingy array.pop(array.length / 2) 05:06
oops 05:08
array.pop(len(array)/2)
guess you can't just make stuff up 05:09
wolverian I don't like the name and the defaulting, otherwise it's nice :)
ingy and expect the python to know what you mean
wolverian: agreed
python is mostly "nice" 05:10
my only gripe about this code is that it makes liberal use of importing from other modules 05:12
so much of the time I'm not sure where a property lives
05:14 BooK joined 05:32 what3 joined 06:19 BooK_ joined
svnbot6 r13412 | audreyt++ | * Fix command-line HsBridge so "make ghci" work again. 06:30
06:32 drrho joined, Aankh|Clone joined 06:38 iblechbot joined 06:40 mdiep_ joined 06:44 zgh joined 07:08 polettix joined
nothingmuch Juerd: =) 07:09
07:32 what3 joined 07:35 dduncan left 07:54 what3 joined 07:58 mugwump_ joined 07:59 ruoso joined, BooK joined 08:19 KingDiamond joined
ruoso just impressed by the new smartlinks.. 08:39
Juerd smartlinks++ agentz++ 08:42
ruoso I think noone has ever taken TDD so seriously as here... 08:46
I was just wondering if this smartlinking stuff could be used on CPAN pointing to the CPAN test results... 08:48
this would be soooo cool
08:51 hareldvd joined 08:57 polettix joined
Juerd The problem with large writeups to mailing lists is that it takes some time for discussion to really begin 09:04
While spending time on writing it makes you so enthusiastic that you want replies immediately :)
webmind heh 09:09
masak :) 09:19
09:19 prefiks joined 09:22 buetow joined
svnbot6 r13413 | trey++ | [t/operators/cross-metaop.t] 09:50
r13413 | trey++ | Tests for cross operators, all todo.
09:50 prefiks left, gene9 joined 09:51 penk joined 09:56 DHGE joined
nothingmuch mooooosening 09:59
svnbot6 r13414 | audreyt++ | * PCR: Unbreak compile_p6grammar.pl. 10:02
r13414 | audreyt++ | * PCR: Recursion is not a sin (yet).
10:07 zgh joined 10:33 b00t joined, hareldvd joined 11:02 ludan joined, TimToady joined 11:57 zeriod joined, zeriod left, b00t joined
nothingmuch mugwump_: @YARRRR 12:03
(1 hour ago, right?)
no wait, that's not right
xerox ?keal
lambdabot how bout i say ick no unicorn and daisy loving girl mathematician will ever enjoy this
clkao i think the synopsis/test xref thing should use unicode smilies rxther than square root 12:09
12:10 mauke_ joined
audreyt clkao: I agree. commits... welcome :) 12:12
nothingmuch =) 12:13
audreyt: fergal came on #moose today
we talked about Code::Perl
i got permission to abuse it
audreyt ooooh!
congrats 12:14
nothingmuch it needs a few small refactorings, but after that it should be a very good base to emit non beautified code
if Perl::Generate grows to fill a bigger niche i might replace it with a true pretty printer later
but for now it's an excellent kick start
audreyt clkao: patch util/smartlinks.pl ? 12:15
excellent.
(code commons)++
12:16 f0rth joined 12:20 iblechbot joined 12:22 crem joined 12:25 mauke_ is now known as mauke, Limbic_Region joined 12:44 iblechbot_ joined 12:54 zeriod joined 12:59 ons joined 13:04 chris2 joined, frederico joined 13:07 DHGE left 13:10 cjeris joined 13:19 fglock joined
kolibrie audreyt: I would like to try out Takahashi XUL slidemaking, and am trying to use one of your talks as a template, but copying pugs.xul and takahashi.css from your public_html locally results in a slideshow with what looks like no content. Do you have any suggestions? 13:23
audreyt kolibrie: you need the .js as well 13:24
kolibrie audreyt: just takahashi.js, or also takahashi-subtitle.js 13:25
audreyt the fofirst one
kolibrie audreyt: thank you :)
13:25 crem_ joined
audreyt np :) 13:25
fglock does <prior> ignore successful rules that are called as subrules? for example, if there is a successful subrule match inside a failing match 13:31
audreyt I think subrule is not counted 13:33
only toplevel runtime->rule_engine counts
fglock thanks
audreyt it's the same as perl5 // 13:34
13:34 zeriod left 13:36 [particle] joined 13:45 vel joined 13:47 rodi joined
Limbic_Region audreyt - have you done any smoking on Win32? 13:51
rodi makes the obligatory joke: "you'd have to be smoking to use win32..."
13:52 dakkar joined
audreyt Limbic_Region: no not yet, I'm solving TimToady's apparent #1 pet unhappiness about pugs 13:53
clkao which is... ?
audreyt ?eval while while while
13:53 evalbot_r13406 is now known as evalbot_r13414
evalbot_r13414 Error: unexpected "w" expecting comment or expression postfix op 13:53
Limbic_Region ok - I am also interested in knowing whta TimToady's pet peeve is
audreyt TimToady was repeatedly annoyed by "w" :) 13:54
also 13:55
?eval while 1<1
evalbot_r13414 Error: unexpected end of input expecting "_", fraction, exponent, term postfix, comment, operator, "\187!=:=\171", "\187!===\171", ">>!=:=<<", ">>!===<<", "\187!eqv\171", ">>!eqv<<", "\187!=\171", "\187!==\171", "\187=:=\171", "\187===\171", ">>!=<<", ">>!==<<", ">>=:=<<", ">>===<<", "\187eqv\171", "\187!~~\171", "\187!<=\171", "\187!>=\171", "\187!ne\171", "\187!eq\171", "\187!lt\171", "\187!le\171", "\187!gt\171", "\187!ge\171", ">>eqv<<", ">>!
audreyt he was quite unhappy about the noise
now both are gone. 13:56
will commit in a bit
Limbic_Region oh, (PCR for rules)++ btw
audreyt I blame you for that :)
I mean, praise 13:57
Limbic_Region well, as I was discussing with agentzh - my vision was very shortsighted
audreyt I mean, annotate :)
rodi LOL
audreyt glad to see that obscure joke gets picked up :)
Limbic_Region I didn't even begin to see the benefits
fglock Limbic_Region: re benefits - I'm fixing some unimplemented things 13:58
Limbic_Region fglock - that's great. audreyt was discussing some other things WRT overall Pugs design and interoperability with other languages 13:59
yadda yadda yadda
IOW - I am the guy on the ground who got lucky and threw up a pair of binoculars to the people standing on the shoulders of giants 14:00
14:01 zeriod joined
Limbic_Region or some such 14:01
Win32 smoke looking ok 14:02
10969 test cases: 10320 ok, 649 failed, 1327 todo, 502 skipped and 0 unexpectedly succeeded
of course, I removed 5 test files that cause Win32 (or at least my Win32) to hang
14:04 yuval joined
svnbot6 r13415 | fglock++ | Pugs-Compiler-Rule - implemented <prior>; has a failing test 14:10
r13416 | audreyt++ | * Solve TimToady++'s #1 pet peeve about Parsec, namely the poor signal-to-noise ratio
r13416 | audreyt++ | in our error messages. It was:
r13416 | audreyt++ | ./pugs -e "1 moose 2"
r13416 | audreyt++ | *** unexpected "m"
r13416 | audreyt++ | expecting comment, operator, postfix conditional, postfix loop, postfix iteration, ";" or end of input
r13416 | audreyt++ | at <interactive> line 1, column 3
r13416 | audreyt++ | ./pugs -e "while 1 < 2"
r13416 | audreyt++ | *** unexpected end of input
r13416 | audreyt++ | expecting "_", fraction, exponent, term postfix, comment, operator, ">>=:=<<", ">>===<<", ">>!=<<", ">>!~<<", ">><=<<", ">>==<<", ">>>=<<", ">>eq<<", ">>ge<<", ">>gt<<", ">>le<<", ">>lt<<", ">>ne<<", ">>~~<<", ">><<<", ">>><<", "\187=:=\171", "\187===\171", "\187!=\171", "\187!~\171", "\187<=\171", "\187==\171", "\187>=\171", "\187eq\171", "\187ge\171", "\187gt\171", "\187le\171", "\187lt\171", "\187ne\171", "\187~~\171", "=:
r13416 | audreyt++ | at <interactive> line 1, column 12
r13416 | audreyt++ | Now it is: 14:11
r13416 | audreyt++ | ./pugs -e "1 moose 2"
r13416 | audreyt++ | *** Unexpected "moose"
r13416 | audreyt++ | expecting comment, operator, statement modifier, ";" or end of input
r13416 | audreyt++ | at -e line 1, column 3
r13416 | audreyt++ | ./pugs -e "while 1 < 2"
r13416 | audreyt++ | *** Unexpected end of input
r13416 | audreyt++ | expecting "_", fraction, exponent, term postfix, comment, operator or bare or pointy block construct
r13416 | audreyt++ | at -e line 1, column 12
Limbic_Region ?eval while 1<1 14:17
14:17 evalbot_r13414 is now known as evalbot_r13416
evalbot_r13416 Error: Unexpected end of input expecting "_", fraction, exponent, term postfix, comment, operator or bare or pointy block construct 14:17
Limbic_Region ?eval while while while 14:19
evalbot_r13416 Error: Unexpected "while" expecting comment or expression postfix op
14:20 justatheory joined
svnbot6 r13417 | fglock++ | Pugs-Compiler-Rule - fixed <prior> 14:20
fglock there is a bug localizing <prior> in subrule calls - it looks like after { local $::_V6_PRIOR_ } the value of global $::_V6_PRIOR_ can't be set 14:21
do I have to predeclare $::_V6_PRIOR_ in order to localize it? 14:23
14:26 detritus joined
fglock in case someone can take a look - uncomment Pugs::Emitter::Rule::Perl5::Ratchet line 107; tests in t/09-ratchet.t 14:31
14:37 ofer__ joined 14:38 ofer__ is now known as ofer1, premshree_ joined 14:39 PerlPilot is now known as PerlJam 14:40 KingDiamond joined
broquaint You don't need to predeclare $::_V6_PRIOR_, but why localize it if you also want to set it globally? 14:57
Limbic_Region broquaint - the same reason you localize any global variable? 14:59
broquaint Oh, I misunderstood, the problem then :)
Limbic_Region well, I really wasn't paying attention to the problem nor the test 15:00
I was just reacting to your question
fglock broquaint: I want to undo the global modifications when the block exits 15:02
15:02 kanru joined
Limbic_Region ok, so I was right - the same reason you localize any global variable - to limit the scope of the modification 15:02
broquaint fglock, how can I tell when it is working and when it is not, I'm not sure what to look for in 09-ratchet.t? 15:03
15:04 xinming joined
fglock broquaint: the last test should pass - it currently passes because Pugs::Emitter::Rule::Perl5::Ratchet line 107 is commented out 15:04
broquaint Aha, thanks. 15:05
15:09 weinig|zZz is now known as weinig
broquaint fglock, I'm also certainly missing a beat here but when I run t/09-ratchet.t Pugs::Emitter::Rule::Perl5::Ratchet::emit is never reached. 15:11
fglock broquaint: you may need to Makefile.PL, in order to clear the precompilation cache 15:12
broquaint I'm using the lib directory directly (because I'm lazy like that).
But I've svn upped and done the usual make process just to be sure too.
15:13 hexmode joined
broquaint Ah, there's some caching going. 15:15
15:16 Odin- joined
fglock mm - saving $::_V6_PRIOR_ to a lexical variable works - which means it's not a problem with the algorithm 15:16
15:21 ludan joined
TimToady blear 15:21
ludan re
nothingmuch scsys.co.uk:8001/4046 15:23
lambdabot Title: perl_web paste from "nothingmuch" at 81.29.65.220...
nothingmuch is that a bug? 15:24
ajs is "pugs -CPIR" the correct tool to use to see what pugs would generate for PIR from my code? If so, should I be getting "Undeclared variable: "@*CHECK"" when I use it? 15:28
TimToady it's...a design flaw
nothingmuch hmm 15:29
nothingmuch kinda hoped @{ @array } would also work 15:30
oh well
TimToady @{ \@array } works
lambdabot Maybe you meant: . v
nothingmuch semantically it's valid to treat $# as a deref, right?
yeah, but both of them work for @# ;-)
TimToady yes, but you have to start with a ref. :)
nothingmuch likes symmetry
ajs I think it's coming from src/Pugs/Run.hs
TimToady that's the design flaw.
nothingmuch *nod*
i can special case it's child node to also accept any statements whose last expr is an array var 15:31
TimToady and that's why P6 doesn't have references *cough* except when it does *cough*
nothingmuch huh?! who?!
these are not the references you are looking for
15:37 marmic joined
ajs Seriously, is anyone arround who knows how pugs handles startup? I'm having a devil of a time tracking this "Undeclared variable: "@*CHECK"" thing down. 15:38
15:39 xinming joined
TimToady darn, I'm going to have to start looking for a new pet peeve... 15:42
15:43 discordja joined
lumi ajs: I'm not here, but I think ruleProgram in Pugs.Parser.Program calls @*CHECK 15:44
Try instrumenting that area to see what's wrong
fglock lunch & 15:46
ajs lumi: I'll work on it
I think there's a package scope that Eval.hs is missing when it scans for variables, since @*CHECK is defined in Run.hs 15:47
Of course, if I knew Haskell, this code would be easier to read ;) 15:48
lumi I guess the parser's evaluation env is brokn under PIR
Will you be around in 3-4 hours? 15:49
ajs yeah
lumi Maybe I can help, then
Off now, lates
ajs ok, thansk
thanks even
15:52 zeriod joined 15:58 buetow joined, elmex joined 15:59 buetow joined 16:00 buetow joined 16:04 mako132 joined 16:24 Psyche^ joined 16:25 amnesiac joined 16:37 Psyche^ joined, Psyche^ is now known as Patterner
TimToady ?eval class foo { has $.foo is rw; } 16:38
16:38 evalbot_r13416 is now known as evalbot_r13417
evalbot_r13417 Error: Unexpected "is" expecting comment, ";" or "}" 16:38
TimToady ext/CGI and ext/Tree are both failing on this.
though ext/CGI arguably shouldn't be saying "has $!privatefoo is rw;" 16:39
since private storage is always writable.
16:42 chris2 joined
svnbot6 r13418 | lwall++ | removed meaningless "is rw" from private attrs to work around bogus parsefail. 16:42
r13419 | fglock++ | Pugs-Compiler-Rule - subrules don't set global "prior" 16:48
17:13 lollan joined 17:16 norageek joined 17:25 ruoso joined 17:27 schranzi joined 17:29 kattana_ joined
schranzi hi 17:29
i would like to ask a question concerning perl 6
have read the interview on pugs.blogs.com/pugs/2006/09/status_....html#more
lambdabot tinyurl.com/k4663
schranzi there is a quote: "You can install "v6" from CPAN. It will load all the dependencies automatically." 17:30
svnbot6 r13420 | fglock++ | Pugs-Compiler-Rule - emitter cleanup
fglock schranzi: yes
schranzi there are in fact many many dependencies but i cannot figure out how to load them *automatically* 17:31
any hints
?
cannot wait to play with v6 ;)
gaal do you know the CPAN shell?
[particle] schranzi: $ cpan v6
schranzi ahm...no
oh wow, i didnt know that!
great! thank you!!! 17:33
gaal you're very welcome. enjoy :) 17:34
TimToady gaal: any idea why "has $.foo is rw" doesn't parse anymore? It's not apparent from diffs to either Parser or Lexer...
svnbot6 r13421 | fglock++ | Pugs-Compiler-Rule - emitter cleanup (more)
gaal TimToady: I'll take a look!
TimToady thanks!
gaal sure! 17:35
schranzi THIS WORKED! BYE, going to play... :)
(things can be sooo easy...)
fglock schranzi: :) 17:36
TimToady note that v6 tends to start up slowly the first few times while it's building up its caches...
schranzi ok
thx again
gaal TimToady: incidentally, traceM $ "The moose is loose " ++ show something
schranzi i'll leave...
bye
gaal (a golfy variant of trace ... $ return () in monads)
kolibrie wonders if schranzi picked up a commit bit 17:37
gaal wow, lots of commits since I last was here 17:38
fglock actually, v6 seems to not build a cache at all, until you install as root for the first time - I think this is some problem with Cache::FileCache rights
17:39 norageek joined
gaal fglock: where is its cache kept? 17:39
xerox gaal: and that still surprises you? %-)
Limbic_Region gaal - are you familiar with Isaac Asimov's Foundation series?
gaal should be per user
xerox: moose
Limbic_Region: yes
fglock gaal: /tmp/FileCache - it's the default place
Limbic_Region any relation to your name? 17:40
gaal fglock: w/o knowing much about your strategy, is there a risk of leaking asts and stuff across users?
Limbic_Region: yes. I am the great-great-great-great-great-great-great-great-great-great-great-great-great-great-great-great-great-great-great-great-great-great-great-great-great-grandfather of Gaal Dornick. 17:41
fglock FileCache docs say the files are encoded per-user
Limbic_Region heh
I just finished prelude and was starting foundation and thought of you immediately 17:42
gaal Prelude.pm to foundation
nice catch, actually. my Hebrew name is often romanized as "gal", but that's American for "girl", which I ain't. 17:43
so in adolescence I was looking for another spelling.
there are other possible spellings that I've seen, but most of them are horrible.
there's actually a good one, Gull, but that's the one chosen by someone I wasn't particularly friendly with at school 17:44
Limbic_Region TimToady - I am pretty sure that Hangul (Korean) is more of a regular alphabet than syllabary symbols 17:45
except you are the linguist and I took a basic language course 17:46
gaal only much, much later I discovered that ga'al (with a pharyngeal approximant) is actually a biblical name.
(which is pronounced completely unlike my own, if you know can pronounce a pharyngeal approximant) 17:47
speaking of syllables, it has one more than mine.
Limbic_Region I have a pretty hard time pronouncing anything that doesn't using english phonics except a few things in spanish and hangul (Korean) 17:48
gaal oh, I saw a lovely site by some linguist in which he showed English phrases in which an allegedly non-English sound is used. Excellent learning material. 17:49
17:49 bernhard joined
gaal years ago, can't remember where. 17:49
17:50 ludan joined
Limbic_Region Well, I didn't learn english using "hooked on phonics" so I don't know how many english words have non-english phonics 17:50
17:50 chris2 joined
gaal though of course, the pharyngeals are being lost in the Hebrew speaking world 17:50
no, the nice thing is he used funny combinations of words 17:51
well, not funny ones
but he found palces where adjacent words triggered a phonetic shift so that in the middle you'd end up with a foreing sounding, eh, sound 17:52
*places 17:53
Limbic_Region There was this site that was trying to find an english(ish) word that had a silent J but was so far unsuccesful though I believe every other letter was accounted for
gaal I know where you can find Silent Bob...
Limbic_Region After strikes back - I am very hesitant to watch the next movie 17:54
I was a big fan of clerks, mall rats, chasing amy, and dogma but strikes back sucked
17:58 amv joined
svnbot6 r13422 | malon++ | t/packages/scope.t - correct tests that aren't in sync with S10/S11 17:58
r13422 | malon++ | - A bare C<package> declarator declares an C<our> package
r13422 | malon++ | *within the current package*
r13422 | malon++ | - The default namespace for the main program is C<*Main> (not C<*main>)
r13422 | malon++ | - Not sure that the "block level" (Test1) tests are valid,
r13422 | malon++ | but left them as is -- *please check*
r13422 | malon++ | t/packages/Test.pm - corrections
r13422 | malon++ | - get rid of C<use v6-alpha>, which would nest rest of file in package Main
r13422 | malon++ | - semicolon form of C<package> only valid for P5 packages
gaal TimToady: fixed 18:01
TimToady !
gaal but I need to do some commit browsing to see if my local fix is appropriate 18:02
it happened because:
ruleMemberDeclaration = do { .... ; attr <- ruleVarName ; ... ; traits <- ruleTraitsIsOnly } 18:03
and there was no whiteSpace eating
now, conventionally our parsers named 'rule' are lexeme parsers, but ruleVarName isn't.
so, I don't know whether it should become one, or whether it should be renamed to verbatimVarName 18:04
but the local fix is simply to add "whiteSpace" at line 527.
(tracing this a bit...) 18:05
TimToady I'll smoke that while I'm at lunch.
Limbic_Region ?eval while 1<1 18:14
18:15 evalbot_r13417 is now known as evalbot_r13422
evalbot_r13422 Error: Unexpected end of input expecting "_", fraction, exponent, term postfix, comment, operator or bare or pointy block construct 18:15
Limbic_Region ?eval while while while
evalbot_r13422 Error: Unexpected "while" expecting comment or expression postfix op
Limbic_Region gaal - what rev is your fix in?
gaal Limbic_Region: it isn't yet, because I want to make sure the where the fix should be. 18:16
I'm sensing that this was accidental:
-ruleVarName = rule "variable name" ruleVarNameString
+ruleVarName = ruleVarNameString
and the real fix would be
ruleVarName = lexeme $ ruleVarNameString
(or rather, that and s:g/ruleVarNameString/verbatimVarNameString/ ) 18:17
Limbic_Region ok - I will continue to look dazed and confused - carry on
gaal Limbic_Region: heh, it's actually simple: 18:18
our "rules" eat up trailing whitepace, by convention
Limbic_Region that makes sense
gaal but that patch (probably) accidentally made that particular rule not do so
Limbic_Region well - was there a meaningful msg attached to the commit 18:19
svnbot6 r13423 | fglock++ | Pugs-Compiler-Rule - preprocess_hash() moved to Pugs::Runtime::Regex; small fixes 18:26
18:29 putter joined
gaal committing. 18:30
better resmoke, since the fix is indeed lifing back ruleVarName to be a lexeme parser, not just inside the thing that parses 'has'. 18:31
Limbic_Region . o O (they're coming to take me away hee hee, they're coming to take me away ha ha)
gaal day after day / they take my friends away 18:32
ugh, i hate it when commits take forever 18:34
Limbic_Region is it stuck? 18:37
18:38 BooK_ joined
kolibrie started his talk: feather.perl6.nl/~kolibrie/extraction.xul 18:39
lambdabot tinyurl.com/rxtmp
svnbot6 r13424 | gaal++ | * fix 'has $.x is rw' parsefail, reported by TimToady++.
r13424 | gaal++ | * s:g/ruleVarNameString/verbatimVarNameString/, since it isn't
r13424 | gaal++ | a lexeme parser.
gaal whee, apparently not any more.
Limbic_Region ?eval while 1<1
kolibrie not much content yet, but I had to start
18:39 evalbot_r13422 is now known as evalbot_r13423
evalbot_r13423 Error: Unexpected end of input expecting "_", fraction, exponent, term postfix, comment, operator or bare or pointy block construct 18:39
gaal starting++ 18:40
bbiab &
18:40 mdiep joined
kolibrie gaal: I'll want your input tomorrow, and every day until Saturday 18:40
gaal sure!
kolibrie thanks 18:41
and anyone else who wants to contribute
svnbot6 r13425 | fglock++ | Pugs-Compiler-Rule - minor fixes & cleanup 18:45
Limbic_Region building and smoking now 18:48
putter fglock: ping? 19:08
fglock putter: pong 19:09
putter hi fglock :) 19:10
I'm trying to get my feet wet with PCR.
Just for a place to start, I was looking at aliases. 19:11
fglock putter: welcome :)
19:11 awwaiid joined
putter I see internal scalar alias "'$<' => token { <ident> \> <?ws>? <':='> <?ws>? <named_capture_body>". Are the others all todo? 19:12
fglock yes
putter ok, next q 19:13
in the '$<' => token, how does a bare $<foo> get handled? ie, one without the following := 19:14
re welcome, thanks :) 19:15
fglock it is not currently handled - see '$' => token{} for a way to write this using alternations 19:16
19:17 SubStack joined
putter so, for instance, to add numeric alias there, one would add a fourth alternative, like 19:18
fglock if it fails /<?ws>? <':='>/, it is just a $<var>
numeric alias are already handled - see the definition of <ident> 19:19
putter <?digit>+ <?ws>? <':='> <?ws>? <named_capture_body> { ...same as named alias... } | ...current options...
19:20 weinig is now known as weinig|coffee
putter oh, ok, will look. so, scalar "internal" alias is done. array and hash "internal" is not? numeric is. external scalar/array/hash is not? have I missed any? 19:20
fglock ident is /[ <?alnum> | _ | <'::'> ]+/ 19:21
putter hmm, what is the \^? in the second clause of '$' => token mean? 19:23
fglock putter: that's it, I think
putter k
just /^\?/ ?
fglock you mean /\^?/ ? that covers $^var and $var 19:24
putter $^var means... what? sorr, it's been a while. 19:25
s/sorr/sorry/
fglock it is a way to refer to $_[0], $_[1] == $^a, $^b
putter ah, right :)( 19:26
fglock anyway, it's not much useful inside rules
putter ok, re number alias already works. so $4 := (foo) works?
fglock $<4> := (foo) parses, but it is not implemented in the runtime 19:27
that would be a good place to start - not too difficult 19:28
mm - maybe not too difficult :)
19:29 lisppaste3 joined
putter ah, so to get $4 :=, one would modify '$' => token with a new first clause <?digit>+ <?ws>? <':='> <?ws>? <named_capture_body> { ...same as '$<' code... } | ...current options... 19:29
:)
19:29 larsen joined
fglock I think $4 is not valid - it would bind to $OUTER::4 or something 19:30
$<4> binds to $/[4]
putter ok, I may be confused. something to check spec on. 19:31
let's see...
:global stuff was showing up on t/rules tests. todo? 19:32
19:32 azr|elious joined
fglock do you have that link again? 19:33
putter looking... 19:34
to the paste of errors, right? 19:35
fglock yes
putter sial.org/pbot/19739
lambdabot Title: Paste #19739 from "putter" at 66.30.119.55
putter sial.org/pbot/19740 19:36
lambdabot Title: Paste #19740 from "putter" at 66.30.119.55
putter first one sorted by file, second one just the errors. i think.
all t/rules/from_perl6_rules/subst.t 19:37
19:37 justatheory joined
putter s/all/all 'global' errors are from/ 19:37
fglock 'global' could be handled by v6.pm - it should call match() until it fails 19:40
putter and pugs could do something similar
fglock but it could be implemented at PCR, no problem - maybe return an iterator 19:41
putter (there was even code for it at one point, both in hs and Prelude.pm I fuzzily recall)
ok, todo of check what existing stuff exists (prelude and hs), then implement. sound right? 19:42
fglock substitutions can be handled at a higher level, too
putter any global or substitution code in PCR currently, or is this all new code?
fglock one thing to check, is how to handle closures in the haskell interface 19:43
it's all new code
putter ok
re closures
<{foo}> and {foo} , yes?
fglock re global, it can handle to restart a continuation (which it calls a "state") 19:44
re closures: yes - v6.pm installs a callback to parse and emit perl6 code; we need to find out how to handle this in Pugs
putter does that (state restart) have efficiency advantages over just calling the rule multiple times? 19:45
(I'm trying to get a feel for simplicity vs cost tradeoff)
fglock that depends what you want - you can simply redo the match with last position+1 19:46
putter re the other modifiers, all hard wired currently, yes?
re "simply redo", ok
fglock but that doesn't handle :overlap or :exhaustive 19:47
19:48 weinig|coffee is now known as weinig
fglock re hard wired - :ratchet and :sigspace change the emitted code 19:48
(compile-time)
putter Prelude has an old implementation of overlap. Was waiting for Rul objects to work in the prelude, which they never did. :( Could use that. Exhaustive is similar. 19:49
re modifiers, right. so user defined modifiers is all todo, yes?
19:50 azr|elious is now known as azr|el
fglock yes 19:50
putter makes sense
let's see...
fglock one nice thing to investigate - develop a syntax to define the precedence parser using rules
nothingmuch night 19:51
putter variable and symbolic indirect rules todo?
fglock bbiab (10min) &
putter: yes
variables can reuse existing hash and array code 19:52
putter 'night nothing much. I'll get back to MO in... well, shortly I hope.
[particle] svn.perl.org/parrot/trunk/languages...r_optok.pg
lambdabot tinyurl.com/krndk
putter re 10min, ok, I'll collect
fglock bbiab
putter re precedence parser, yes :) 19:53
20:05 ofer__ joined 20:06 awwaiid joined 20:08 fglock joined
fglock putter: there is already a precedence parser api (syntactic categories), but it is limited to p6 compiler internals 20:08
putter k 20:10
back?
next question will be... capture numbering games working or todo?
fglock the numbering is working - there is one TODO there 20:11
in this rule: / <rule> <rule>+ / 20:12
the second subrule is captured to an array - the first one is not 20:13
putter (aside, as I collect nm's MO description, re "joining rule terms into p5 rx doesn't give much gain", the key is to avoid needlessly breaking up or taking over something which the p5 regexp engine handles wizzily. eg, scanning for start of match, sequence of quants, backtracking in general.)
fglock they should go to the same array
putter so $<4> := (foo) (bar) will put (bar) in $5? 20:14
fglock re joining: there is a problem when you need to backtrack into subrules - p5 doesn't support that
putter right. that would be an example of non-needless :)
fglock putter: yes - the compiler has an internal counter; you can restart the counter at '4' 20:15
putter k, todo
hmm. does p6 need to know the total number of captures like p5 does...?
putter squints, trying to remember 20:16
if so, or regardless, does is that info currently recorded somewhere for each rule?
fglock it is recorded while the code is emitted 20:17
putter in ../Emit/.. ?
fglock $capture_count 20:18
putter next question will be... characters
ah, tnx
oh, but first
so, in general, how todo-ish would you characterize the handling of details, eg, captures never reached getting their failed match objects, etc. 20:19
lumi ajs: ping
putter I guess that's "are we in top down or bottom up implementation mode"? 20:20
TDD would tend to imply bottom up, unless there was a mix of approach... 20:22
fglock I think most TODO things are documented - it needs a prioritization
svnbot6 r13426 | fglock++ | v6 - eval() happens in the caller's lexical scope; :lang needs more work
fglock I tend to fix the things I need, first
putter re "it needs a prioritization" - since PCR and v6 should probably drive the priortization, perhaps you are the best person to do that? :) 20:23
ah, ok
characters...
fglock v6 doesn't need much more
TreyHarris @seen Limbic_Region
lambdabot I saw Limbic_Region leaving #perl6 44m 32s ago, and .
putter is any graph/code/byte distinction stuff there? 20:24
fglock nope
putter wonders what lambdabot was going to say after the ", and"
oct/hex escapes? 20:25
fglock no
TreyHarris @tell Limbic_Region Hangul is an odd mixture case; neither precisely alphabet nor syllabary. It has sub-characters called jamo which are alphabetic, but they are composed together into the Hangul characters as found in individual Unicode codepoints called seong, which are syllabic. So it depends on your POV.
lambdabot Consider it noted.
putter named chars.... hmm, am I missing anything? next question up would be character classes.
putter shudders 20:26
lumi TreyHarris: It's an alphabet that gets packed, isn't it?
20:26 awwaiid joined
lumi It just isn't written simple LTR/RTL, no? 20:26
fglock putter: character classes are currently source filtered into p5 /[chars]/ 20:27
putter oh, \r \n etc character escapes?
re source filtered, ok,
TreyHarris lumi: essentially. because unlike, say, english phonology, Korean phonology is not as productive. there are thousands of possible syllables in English; there are only a few dozen in Korean.
putter so no.... oh, that reminds me, conjunctions? 20:28
fglock \r \n are just that, \R is [^\r]
TreyHarris lumi: so, thinking of it in terms of huffman encoding, it is a win to pack since the total set of syllables is so small
lumi But it is an alphabet, and not an, er, abgad I think they called it, like we have in Hebrew
fglock conjunctions are easy to add - it's just that I never needed them
putter ah, they are one way to do... 20:29
character set set ops?
<alphanum>-<num>+[3]-[A..C]
ajs lumi: pong
fglock yes, but that's something you may want to implement at a lower level 20:30
20:30 foo\ joined, DHGE joined
TreyHarris lumi: abugida. depending on the definition used, Hangul either is, or is not, an abugida. the composition of jamo into seong is very similar to abugida, but because the set of syllabics is fixed, some would claim it is not in fact abugida. 20:31
lumi ajs: Still have borkage? Want to have a look?
putter yes, as in that's one way to do it, and it's todo; or yes, it's not todo?
fglock yes, it is todo
putter ok :)
ajs lumi: yeah, I had no luck in figuring it out. The error is in Eval.hs
fglock mm - we should be looking at the TODO list :)
ajs It fails to find @*CHECK even though it's difined in Run.hs
putter :) 20:32
lumi Lessee
ajs But only if I use -CPIR like: "./pugs -CPIR -e 0"
putter yeah, this became a todo/coverage conversation. can update the TODO file from it :)
? and ! on rules <?foo> <!?foo> ? 20:33
fglock putter: that's partially covered - there are some corner cases
putter next q will be... any of the, shudder, <,> array or other non-string matching stuff? 20:34
re corners, ok
lumi ajs: Run.hs, line 137?
fglock no, I didn't grok that yet
putter so no problem. ;)
ajs checking 20:35
putter oh, thought you said "no, I didn't get to that yet". but same reply for grok too.
fglock putter: it looks like an attribute grammar, but not sure
lumi I mean, is that where you meant it's put in?
ajs Yes, that's where it seems to be difined
putter all the greedy/nogreed star, plus, range stuff is working?
lumi ajs: It works in normal mode, so let's see what happens different in -CPIR 20:36
fglock that's a long answer :)
putter lol
lumi (I have no idea where tha might be)
20:36 dduncan joined
ajs 282 of src/Pugs/Eval.hs is what generates the error 20:36
fglock there are some quantifiers in :ratchet mode that need to call non-ratchet - this is not implemented yet 20:37
dduncan following yesterday, I haven't yet fixed the version problem, but I would like to see with whom else it occurs
it seems that "touch util/version_h.pl" before make is the difference between pugs -v being updated or not
fglock putter: non-ratchet star and plus need to be optimized
putter oh, oh... what is a one line description of ratchet? then back to conversation... 20:38
dduncan but in my reading of the Makefile.PL, I don't know enough about how it works to determine why this is
fglock putter: range is not implemented, mostly because v6 didn't exist at the time pcr was written :)
dduncan version_h is mentioned a half dozen plus different places
putter :)
ajs lumi: do you get the same error?
dduncan so my question is, for each of you, does pugs -v show the correct revision num for you? 20:39
I would particularly like to know this for svk users
TreyHarris fglock: looking at your last commit... is there any way to make eval_ok, eval_is, etc., run their strings in the caller's scope, rather than in eval_ok's? 20:40
people jump through all sort of hoops in the test suite to get around that
putter so, just what is ratchet? 20:41
fglock TreyHarris: it would be easy to implement these if they were language primitives - but as library functions you need the hoops
putter: it disables backtracking - mostly for optimization 20:42
dduncan eg, update now, then make, and see if it says r13426 or a lower number
putter so what happens with alternations?
dduncan thank you 20:43
in advance
ajs src/Pugs/Parser/Program.hs:148 is the culprit
putter will have to head out shortly 20:44
svnbot6 r13427 | fglock++ | v6 - cleanup debug info
fglock putter: anchors.t now passes all tests
putter :)
fglock++ 20:45
TreyHarris fglock: i suppose eval_* could also be reimplemented as macros
lumi ajs: Sorry, emacs killed my X.. for some reason
ajs Yikes
I was saying, src/Pugs/Parser/Program.hs:148 is the culprit 20:46
pasteling "putter" at 66.30.119.55 pasted "some raw material for a MO description" (50 lines, 3.3K) at sial.org/pbot/19777
fglock TreyHarris: yes, that could fix it
ajs I don't know why it can't find @*CHECK, but if I change that usage to @*DHECK, it changes the error ;)
putter @tell nothingmuch I didn't get very far (at all) in editing, but here is some raw fodder for a MO description/README. sial.org/pbot/19777 20:47
lambdabot Consider it noted.
putter fglock: alternation in ratchet? then I'm off. 20:48
fglock putter: yes - that's an if-then-else, not really a backtrack 20:49
20:49 zgh joined, DHGE left
lumi ajs: That bit is AST that the program goes in 20:49
putter tries to picture that...
so no subrules or quantifications allowed in the branches of the alternation?
TreyHarris fglock: but perhaps macros are too high a bar on new implementations to require they pass before they can even use the test suite. 20:50
fglock putter: it doesn't care to what comes after the alternation
putter hmm. i'm still puzzled. but a puzzle for another day.
fglock: thank you! this has been enlightening and fun. :) 20:51
good night all &
fglock putter: thank you!
lumi ajs: Did you try with any other backends? 20:52
ajs lumi: no
fglock TreyHarris: actually, macros are no more complex than subs - they are just used at a different place
TreyHarris: v6.pm doesn't have macros because they are not a priority; the lrep compiler had macros 20:54
20:57 chris2 joined
ajs lumi other backends seem fine, but I'm using -C, which means it shouldn't even be trying to execute the code, should it? 20:57
TreyHarris fglock: okie. i guess i'll switch from svn to svk so i can play with a local branch and see what happens
fglock: thanks 20:58
21:00 jferrero joined
fglock TreyHarris: np 21:01
svnbot6 r13428 | fglock++ | Pugs-Compiler-Rule - added Match.keys() method
21:02 hexmode joined
fglock does $/.keys include numbers (0,1...) ? 21:02
TreyHarris must run for a bit &
fglock how about $/.values ? 21:03
21:04 ofer0 joined
svnbot6 r13429 | fglock++ | Pugs-Compiler-Rule - added $/.values() method 21:05
21:05 kanru joined
lumi ajs: Um. I'm kinda glazing over Pugs.CodeGen.PIR 21:07
fglock is %$/.keys a syntax error? (t/rules/from_perl6_rules/array_cap.t line #32) 21:08
21:11 SubStack joined
lumi ajs: Oh hm. Pugs.hs:406 sets the env 21:13
for running
But this never happens for codegen
fglock mm - <(code)> looks wrong too (in t/rules/from_perl6_rules/assert.t) 21:14
ajs Interesting
I'm tearing through the code, but my comprehension is for crap.... gotta learn me the Haskell 21:15
lumi I think. See doCompile, which is line 197
I imagine that's where it should happen? 21:16
ajs "doCompile backend = doParseWith $ \env _ -> do" you mean
lumi ajs: Yes, but no, I was wrong -- it passes the enving responsibility on, I guess 21:17
Ah! I have it :) 21:18
ajs Would something in the PIR backend just *remove* the existing env settings?
lumi 294
doParseWith f name prog = do env <- tabulaRasa name
ajs Yeah
lumi It ate a newline but, as you can see, it initializes to an empty env :)
Should be: env <- prepareEnv name args 21:19
ajs Ah
lumi Er, if it has the args there, sec
ajs So, the same as runProgramWith
lumi Yeah but hm, I don't think it does have them 21:20
It should get them then, that's a bit more.. 21:21
ajs It seems unlikely that's the bug
That code was last modified in version 7344 21:22
Though the next line, "f' $ parseProgram env name prog" was 12648
Hmmm... I suppose I could go back and see when it last worked
lumi I'm trying to fix it 21:24
Um. svk is broken 21:26
ajs "No happy found"
mugwump_ avast ye landlubbers! 21:38
svnbot6 r13430 | fglock++ | v6.pm - added headers to allow rule definitions outside of grammars,
r13430 | fglock++ | as required by t/rules/from_perl6_rules/capture.t
lumi Oh bah, I feel on a wild goose chase
ajs: I was wrong and that's not the problem/difference at all 21:41
21:42 xerox joined
lumi It might be a bit out of my league then 21:42
ajs lumi: I'm seeing if I can track down when it broke so I can produce a diff that's the culprit
Lots of rebuilding
lumi Okay, I'll keep the depth and you keep the breadth then 21:43
ajs k
lumi Arr.
ajs gar! I can't compile old versions of pugs anymore ... 21:50
I'll try without parrot
21:51 Limbic_Region joined 21:52 fglock left
ajs Works in r10000 21:57
I've never done a binary search through svn revisions before. It's sort of interesting 21:58
obra ajs: search.cpan.org/~coke 22:00
lambdabot Title: Will Coleda - search.cpan.org
Limbic_Region use.perl.org/~demerphq/journal/31040 # let's all hope demerphq finds round tutis 22:01
lambdabot Limbic_Region: You have 1 new message. '/msg lambdabot @messages' to read it.
Title: Journal of demerphq (2831)
Limbic_Region ?seen TreyHarris 22:02
lambdabot TreyHarris is in #perl6. I last heard TreyHarris speak 59m 52s ago.
22:10 markstos joined 22:11 zeriod left 22:13 cjeris left
TreyHarris i have a brain block. what's the incantation in Perl 5 to do $ref->isa('Foo') when you're not sure whether $ref is even blessed or not? "ref $obj && eval { $obj->isa('Foo') }" works, but I know I've seen a better idiom 22:41
22:43 Aankhen`` joined
dakkar TreyHarris: there is UNIVERSAL::isa, but I think I've seen written somewhere that it should not be used... 22:44
Limbic_Region TreyHarris - I believe you want something from Scalar::Util 22:45
it should be able to tell if it is a blessed reference removing the need for the eval block 22:46
yes, Scalar::Util has blessed 22:47
TreyHarris Limbic_Region: ah, that's exactly what i wanted. I even knew it was called blessed(), but I didn't know where it was and cpan search didn't turn it up easily (blessed is a very common word in perldocs)
thanks!
Limbic_Region no worries - I thought you were trying to do something in a single step and was unaware of what that might be 22:48
though, in practices you almost never want isa and are more interested in can
the exception being a case where you have a subclass of animal called dog and a subclass of animal called bear, both with methods called bite 22:49
TreyHarris in this case, i am isa, because i need to quietly make this an OO class without disturbing the current procedural users of it, so my methods need to be prepared to be called with $self or without (in which case they use a factory to get a value for $self). 22:50
Limbic_Region it is probably best at that point not only to ask "can bite" but also isa dog to disambiguate
TreyHarris s/i am isa/i do need isa/
Limbic_Region yuck - I never liked perl 5's ability to accomodate that
22:51 mnemonic joined
TreyHarris oh? being able to change your API to accommodate good new stuff in backwards-compatible ways is one of the things I *like* about Perl :-) 22:51
22:51 mnemonic left
Limbic_Region no, you misunderstand 22:52
it isn't that it isn't possible
it is that the ways to do it are cumbersome
TreyHarris it's the only way I'm able to whip preexisting code already in production, written by neophytes, into shape
Limbic_Region having useful prototypes and mutimethods would be a huge improvement
TreyHarris oh, you never liked its *lack of* ability to accomodate that easily. :-) gotcha
Limbic_Region well, however you slice it - I am looking forward to Perl 6 in this regard 22:53
dduncan ?eval my @originals = (1,2,2,3,4,5,5); my @filtered = any(@originals) ~~ { $_ > 1 }; @filtered; 23:00
23:00 evalbot_r13423 is now known as evalbot_r13430
evalbot_r13430 [(Bool::False | Bool::True),] 23:00
dduncan TreyHarris, what were you saying on p6l just now?
TimToady specced but unimplemented
dduncan okay, but are we keeping "grep", or is it going away in favor of the above? 23:01
Limbic_Region dduncan - it is just an alternative way of writing it 23:02
one that is more Perl 6 ish
dduncan yes
Limbic_Region grep isn't going anywhere
Limbic_Region says eyeballing TimToady
dduncan I thought "where" is better than "grep" also, so if we're keeping "grep", then I suggest "where" as an alias for it
but I also wonder ... 23:03
would any() cause duplicates to be dropped, or would the multiple 2 and 5 remain in the result?
Limbic_Region I personally dislike "where" only because of SQL 23:04
dduncan and would the order be maintained ... it is a list rather than a set we are filtering, after all
Limbic_Region actually - I think that is wrong
dduncan Perl 6 already has a "where" for use in subset definitions and such ... do you dislike that too?
Limbic_Region I am no junction expert but
I think s/any/all/
TimToady ~. 23:05
Limbic_Region order is not guaranteed with junctions
especially if it is implemented using threads under the covers
dduncan thought so, in which case Trey's suggestion wouldn't replace grep
in all situations
TreyHarris no... 23:06
order is guaranteed in this case
dduncan Limbic, just because a language like SQL uses the word "where", that doesn't mean it is inappropriate for other languages if taken at its face value of being a filter
svnbot6 r13431 | fglock++ | v6 - fixed eval() parameter handling 23:07
lumi ajs: ping
dduncan <bar> = <foo> where <condition>
Limbic_Region dduncan - you could use when for that too
TreyHarris see S09:606
Limbic_Region and in fact when has been suggested for that very purpose
dduncan fair enough
but either way, a nice english/descriptive word is better than "grep" ... 23:08
TreyHarris "@result = any(@x) ~~ {...}; is equivalent to @result = grep {...}, @x;"
Limbic_Region dduncan - it Haskell it is spelt filter
dduncan and consistency is nice too ... would our current use of "where" be replaced with "when", then, such as for subset definitions?
TreyHarris Limbic_Region: any(@x) ~~ { ... } would be an assertion that each and every item in @x is true for the block, which isn't what grep does. 23:09
dduncan fine
23:09 weinig is now known as weinig|store
dduncan fine re 'filter' that is 23:09
Limbic_Region TreyHarris - I am not familiar with what aspect of that forces any to match more than one 23:10
dduncan the relational data model uses "restrict" to mean the same thing, but that its input and output is a set
TreyHarris Limbic_Region: what aspect of what?
Limbic_Region any(@x) ~~ {...} in my understanding should return 0 or 1 23:11
dduncan eg, <foo> = <bar> restricted to <condition>
Limbic_Region oh wait, that's one()
right?
Limbic_Region has a screaming 7 month old to deal with
dduncan I would expect anything containing any() or all() etc to produce unordered distinct values as output
TreyHarris Limbic_Region: the synopses are as the synopses say :-) your understanding is incorrect. look at S09, line 606, like I said :-) it's extremely explicit about this case. 23:12
biab 23:13
lumi @tell ajs Pugs.CodeGen.PIR:395 builds the env on the PIR side -- this env doesn't have @*CHECK 23:16
lambdabot Consider it noted.
Limbic_Region I see it TreyHarris, but I still don't understnad why
I freely admit I haven't kept up with the synopses to understand the changes to junctions 23:17
but I thought that once any() satisfied the condition - it could abort
lumi No, that doesn't make sense :/ pugs wouldn't use the PIR env 23:18
Limbic_Region ok, I am beginning to understand 23:19
nevermind me
?eval my @foo = 1..5; my @bar = (1,3,5); my @what = any(@foo) ~~ any(@bar); ~@what 23:22
23:22 evalbot_r13430 is now known as evalbot_r13431
evalbot_r13431 "any(VJunc any(VBool False),VJunc any(VBool False,VBool True))" 23:22
TimToady 16:00 < TimToady> specced but unimplemented 23:23
Limbic_Region TimToady - in my example, should @what contain 1,3,5 if implemented according to spec
TimToady can't talk much--in a meeting. 23:24
Limbic_Region sorry 23:25
TimToady Limbic_Region: yes, it should be 1,3,5 23:26
dduncan question: is "when" going to replace "where" in subset definitions? It seems to make more sense, logically.
Limbic_Region dduncan - when already exists 23:27
dduncan looking ...
Limbic_Region it is part of given/when
dduncan oh, right
Limbic_Region i.e. the perl 6 equiv of case
dduncan but does that disqualify it for unambiguous use in other places? 23:28
like subset defs?
or perhaps rename "where" to "matching" in subset defs? 23:30
but whatever works best ... I just don't think that "grep" is the best word for what it is used for 23:31
and forget "matching"
maybe
that may be too specific a case
or not 23:32
23:38 kanru joined 23:40 theorbtwo joined 23:48 weinig|store is now known as weinig|bbl