pugscode.org/ | nopaste: sial.org/pbot/perl6 | pugs: [~] <m oo se> (or rakudo:, kp6:, elf: etc.) (or perl6: for all) | irclog: irc.pugscode.org/
Set by Tene on 29 July 2008.
TimToady and as [particle] was pointing out, captures really have nothing to do with that, since the purpose of | is to hide that info by inlining 00:01
wknight8111 Do you have a link for the best place to read the synopses? I feel like I always have to google search because I can never find them 00:03
or are they somewhere in the pugs repo?
shoot, i don't even have a checkout of pugs anymore
[particle] spec.pugscode.org 00:08
TimToady afk & # leaving for the samurai era... 00:11
wknight8111 thanks 00:17
I had read through all the apocalypses and synopses a long time ago. They're really fascinating 00:20
pugs_svn r22064 | moritz++ | [t/spec] some random unfudges and fixes 07:35
masak I really hope {*} becomes a Perl 6 feature 08:27
if not, I will write a module, as soon as that becomes possible, so that I can use it as if it were 08:28
TimToady :)
masak we already do quite a bit of $/ tree traversal in the wiki. with {*}, even that code would go away. 08:30
moritz_ use Regex::Stubs; 08:31
masak aye :) 08:32
of course, I'm hoping I won't have to import anything
I don't think the current semantics of {*} are worth protecting :)
s/current/currently specced/ 08:33
TimToady well, the point is that it obviously does nothing by default except count as a side effect for LTM 08:39
masak yes 08:40
TimToady and since the builtin meaning is useless, there's no problem binding it to any behavior you like
masak exactly
it's the binding itself that I'm a bit unclear on 08:41
if I had an idea on how to do that, I'd write to perl6-lang and propose to add it
but in general terms, there's the grammar, the class that want's to hook in into the {*}s, and the match itself 08:42
the binding could theoretically be done in any of these three locations
...but right now only the match location seems reasonable to me 08:43
moritz_ I think if we spec it, then it should somehow take named arguments instead of the semantik comments that STD.pm and PGE use now 08:45
masak good point.
moritz_ so <stuff> {*} #= this_stuff
should become <stuff> {*:this_stuff} or the like
moritz_ (which currently isn't valid Perl 6) 08:49
masak gasp! .perl is not in S29! 09:13
moritz_ no, S02 or S03 iirc
masak aye, S02 09:14
(S29 needs some love)
moritz_ s/some/much/
masak haha, .perl is specified on line 1337 of S02. how appropriate :) 09:15
moritz_ ;)
S02:1337 # make the IRC logs link to it
masak oh right 09:16
I should force Emacs to do the same, actually
it would pay off in productivity pretty quickly
TimToady well, {'this_stuff'} is just as usefully useless as {*}, but the main point of {*} is to keep the clutter out of the main code 09:25
masak right. also, it loses its 'visual pill' feel if it's much longer than {*} 09:27
TimToady though I suppose there's no reason {'foo'} can't be put over where the comment currently is, unless there are intervening tokens
but then you have to specially recognize something variable
I need a way of naming alternations too for better error messages than "expecting statement (alt 05)" 09:28
maybe that could unify somehow 09:29
bbl & # bangohan 09:30
masak seems to me alternations, having no name, are only identified by what they match on.
moritz_ masak: www.perlmonks.org/?node_id=707723 11:02
lambdabot Title: November - a wiki written in Perl 6
moritz_ (not my doing)
riffraff hi 11:03
moritz_ hi riffraff ;) 11:04
pmurias riffraff: hi
masak moritz_: thanks for the heads-up 11:05
by the way, jonathan and pmichaud have been pinged for three hours now, which is like a week in internet time
moritz_ ping timeout ;) 11:06
go ahead and publish, then ;)
masak aye :)
pmurias masak: i actually find writing actions directly inside {...} blocks and extracting them using a script instead of using {*} more fun 11:14
masak pmurias: maybe we should write some imagined code and compare 11:16
pmurias masak: if you want 11:18
moritz_ I think of grammars as an inverted templates... 11:19
so inlining the closures is a bit like using Mason
and using {*} is a bit more like using HTML::Template
masak: if we had {*}, how would we know which part of %parameters we need to access? 11:21
masak gets hit by the impact of that problem 11:24
don't know.
how does PGE do it?
I mean, the corresponding thing
moritz_ I think you can use a "global" variable thing 11:25
masak an action method has to know about its surroundings somehow
moritz_ let's call it @stack
masak hm...
moritz_ then a <TMPL_LOOP> would push @stack[*-1]{$<name>} onto @stack
masak btw, my secret ideal in these matters is XSLT, which solves much of this adequately 11:26
moritz_ and the </TMPL_LOOP> would pop
moritz_ or more elegantly a dynamically scoped variable 11:27
(like local() in perl 5)
masak that sounds more like it 11:28
can such a variable be shared between methods_
?
moritz_ why not? 11:29
a grammar is just a class; I suspect it can have attributes
masak use.perl.org/~masak/journal/37303 11:37
lambdabot Title: Journal of masak (6289)
masak hm, the title gets cut off in the journal... 11:42
(use.perl.org)-- # crippled HTML 11:46
no &mdash;. no &hellip;, no <h2>... 11:47
might as well not have HTML-like markup at all
moritz_ (use.perl.org)++ # good publicitiy anyway ;)
masak yes, but it could easily have been typographically correct publicity 11:48
oh well.
moritz_ ;) 11:49
internet and typography seldom mix very well
too seldom
masak because of things like this :/ 11:50
tools that don't allow you to do it right
moritz_ heck, perlmonks.org can't even print non-Latin1-characters inside code sections 11:51
perlmonks--
masak hard to believe we're living in the 21th century
so perlmonks is fundamentally incompatible with Perl 6, in other words 11:53
moritz_ yes
masak perlmonks--
moritz_ (not only technically)
masak culturally too? 11:56
people are always against great changes, even good ones. 11:57
it's because a change is such an easy target to criticize
moritz_ yes 11:58
cognominal I don't know much perl site that looks like web 2.0 apart osx,isuthis.com?
osx.iusethis.com!
cognominal it seems we ave a lack of expertise of stuff up in the stack : javascript librries, ajx, css... 11:59
masak indeed.
cognominal s/ava/have/
masak I want the Web.pm module to fix that
it will need some deep thinking, but it'll be fun, too!
cognominal we are too happy to play with our beloved language when it is (so far) one element of the stack.
moritz_ masak: but on the other hand I received mostly positive feedback on perl 6 stuff that I wrote on perlmonks - maybe it'll better once truely usable versions of rakudo are being released
cognominal It may change if parrot makes is ways on browers. 12:00
pmurias cognominal: into IE?
moritz_ cognominal: slashdot.org is prettymuch web2.0ish 12:00
pmurias masak: you need to be able to compile Perl 6 into javascript to have good web 2.0 support
masak moritz_: yes, of course. people are only critical because they are uninformed about the state of affairs
pmurias: why is that? 12:01
cognominal I love perl6 and I am wait for rakudo to be usable : inline pir, class attributes initialization is my main griefs today.
pmuris: in the iphone? the new trend is to have web on small devices 12:02
pmurias cognominal: IE = internet explorer
masak cognominal: right, I forgot to mention class attributes initialization! :) 12:03
cognominal too bad the community cannot get jonathan work rakudo full-time
moritz_ that would be great ;)
speaking of which, what's happening with Ian Hagues' donation atm? 12:04
cognominal does pmichaid is full time on parrot?
moritz_ don't think so
cognominal allison + pmichaud + jonathan full-time would mean rakduo this christmas
pmurias masak: it's more of an opinion than a fact, but i find it hard to believe you will be able to push much of the logic into the client withought emitting to javascript 12:05
moritz_ cognominal: not quite :/
pushing logic to the client is dangerous and overrated, IMVHO ;) 12:06
cognominal pmurias, I don't care much of IE because MS is so far behind in products, I am happy they employing people like spj though
I am sas that the ecmascript will be less amitious, in someway it as perl 6 like. 12:07
s/sas/sad/
masak pmurias: isn't it enough just to allow _really_ good ties to js from the Web.pm module? 12:09
pmurias if you are doing a google's maps app, i find doing the logic on the server side silly, if you just want js eye candy it's propably enough 12:11
moritz_ depends on what you mean by "logic" ;) 12:12
pmurias moritz_: ui logic, if you click on this marker, and you fullfill the given conditions you will have your data presented in this way otherwise in a different one 12:17
masak pmurias: in that case you have to emit js, yes. which means that the p6/js ties have to work as seamlessly as possible 12:19
I don't find anything strange about that.
we're moving towards a world where js is basically an assumption on the Web 12:20
moritz_ which I find really bad
masak moritz_: well, yes and no
moritz_ because sometimes I just want to read stuff, not execute programs 12:21
masak pmurias: also, I think many cases can be covered by co-opting jQuery, Prototype et al
moritz_ and when pages don't show any content without javascript, although they are at least 90% statical... I would like to shoot the responsible web developer
cognominal I love JQuery
pmurias masak: which are used for fancy effects or just general js helper
masak moritz_: it's still up to the author of the page to be sensible. I don't think the classical web is under threat from js 12:22
moritz_ a positive example is gmail - it works without javascript (not as smooth, but as good as possible)
masak pmurias: well, yes, in practice. but they can do the XmlHttpRequest stuff, too
moritz_ and I think the problem of the back-button in javascript needs to be solved 12:23
that's something that only a handful of web apps do right
pmurias moritz_: if something is a traditional desktop app just implemented using js it's not really resonable to expect it to be a web page 12:24
moritz_ I can understand that some things don't really work well without javascript; but for example reading emails is certainly not one of them 12:25
pmurias you browse the web from you mobile? 12:26
moritz_ no
I'm a bit retro, I guess. I don't even have a mobile 12:27
masak moritz_++ # me neither! 12:27
pmurias mobiles are pretty cheap those days ;) 12:29
masak gets the hint
don't want one.
masak.org/carl/w/index.php/I_don%27...bile_phone 12:30
lambdabot Title: I don't want a mobile phone - Carls wiki
moritz_ masak: for writing that you don't like chat you're pretty active here ;) 12:31
masak moritz_: I meant the 2-person kind when I wrote that
for some reason, IRC chatters are much more civil than people who chat one on one 12:32
cognominal I don't want a mobile phone, I want a mobile web browser :)
masak I guess it's a cultural thing
cognominal my mobile basic phone is dead but I am tighed six more month with my providers. I don't know if I want to jump on the iphone bandwagon riht now. 12:33
masak the siren call of openmoko is actually getting to me of late: www.joachim-breitner.de/blog/archiv...phone.html 12:34
lambdabot Title: Xmonad on my mobile phone - nomeata’s mind shares, tinyurl.com/563fbu
pmurias stays clear of anything apple related
masak pmurias: I can see the sense in that. and I'm writing this on a MacBook Pro.
cognominal I used my macbook as a unix box for one year and got hooked to mac specific stuff. 12:35
cognominal I don't know if I should be proud or ashamed of it though. 12:36
moritz_ cognominal: the answer is "yes", of course ;) 12:37
cognominal But I note that the ruby on rails crowd is leveraging the power of textmate while we are stuck with vim and emacs
moritz_, I don't like the lock in, but when it provides me with more power I fall for it. 12:38
moritz_++
so I added a FSF logo to deface my macbook. 12:39
moritz_ ;) 12:41
cognominal I had not the courage to add the so bad test dynamic duo with unclear sexuality like all dynamic duos. : www.gnu.org/graphics/gnu-and-pengui...00x276.jpg
s/test/taste/
masak cognominal: what do you mean "stuck with vim and emacs"? that's like saying "so I'm stuck with [some other state-of-the-art technology]" 12:43
are you sure you're using vim and emacs correctly? :P 12:44
cognominal emacs, state of the art? I use it cause I am use to it but I know it is bad lazyness.
masak a year or so ago, I read Steve Yegge's opinions about Emacs being the hundred-year editor 12:45
I set out to get to know Emacs better.
boy, is he right.
not saying there couldn't be anything better, just that nothing else even comes close 12:46
moritz_ let's start an editor flamewar 12:47
masak uhm, yes -- I see that I just provided the kindle
sorry :P
(but Emacs rocks!) 12:48
cognominal elisp sucks so much... every single extension has different conventions. Perl5 was a messy infix lisp, Perl6 is a clean lisp with a lot of new abstractions. The lisp crowd is now so bakward. And, yea, I use emacs. One cannot be bleedin edge on everything. </flames> 12:49
masak actually, I'm fully prepared to believe that there is not One Editor for everybody. that's why we have vim, too. :)
cognominal: I agree that elisp is suboptimal on very many points. it's also, unfortunately, built into the editor forever. 12:50
pmurias should switch to yi from vim
masak yes, yi looks intriguing
moritz_ wtf is yi? 12:51
(except a province in China)
masak www.cse.unsw.edu.au/~dons/yi.html
lambdabot Title: yi text editor
masak moritz_: and there's no province in China with that name, sorry
cognominal textmate made the choice of external extension mechanism with a very smart interface partly based on regexes and not of thru grammars. 12:52
moritz_ masak: ah no, it's a poeple en.wikipedia.org/wiki/Yi_people
lambdabot Title: Yi people - Wikipedia, the free encyclopedia
cognominal soemtimes, less (here this interface) is better
masak moritz_: right. 12:53
cognominal yi, haskell, that cannot be bad.
masak cognominal: with interfaces, less is the default direction of better, I'd say
moritz_ I don't like it when the editor is smarter than me 12:54
and understands haskell, while I don't ;)
masak is there a collective term for regex/token/rule constructs? 12:55
cognominal when I see what audreyt did with haskell and my inability to grasp much I am ashamed.
masak it's never too late!
moritz_ masak: rules
cognominal masak, larry used the term "rule" but now I think he use "regex" as the collective term saying "regex are not regular expressions". I am not sure if he uses "regex" as the plural form though. 12:56
masak I find both these suggestions ("regex", "rule") somewhat unsatisfactory 12:57
note that they are exactly the same as one of the elements in the collective set they are describing
I can see problems down that road. :P 12:58
"but you said regex!" -- "yes, but I _meant_ it in the sense 'regex, token or rule'"
TimToady we switched back to regex about a year ago
moritz_ maybe we should call them "patterns" ;) 12:59
TimToady no, patterns are anything on the right side of ~~ 12:59
masak rakudo: "I am but a simple string" ~~ token { string }
p6eval rakudo 30633: RESULT[{}]
TimToady sigs are patterns 13:00
moritz_ or "flas", "Formal LAnguage Specification" ;-)
cognominal pattern is the stuff in TimToady. I sense there is a strong connexion with regex but I don't not quite which.
moritz_ rakudo: "I am but a simple string" ~~ token { string }; say ~$/ 13:00
cognominal or huffmanize it in rex so we can say "rex rules".
p6eval rakudo 30633: RESULT[string␤1] 13:01
moritz_ what's the 1 doing here?
cognominal I thing there was a REX something, a tool or a language, but that is probably long gone.
TimToady that's incorrect in any case
REXX is a scripting language by Mike Cowlishaw
cognominal I mean "patter the sutff in haskell"
TimToady used mostly on IBM iron
though a variant was on Amiga 13:02
cognominal so we can use "rex" :)
TimToady I think regex is a good enough generic term 13:03
moritz_ I know where the 1 come from in p6eval's output... 13:04
the first execution of the script segfaulted
then it was executed again, this time wrapped in (do { ... }).perl.print
masak heh :)
TimToady matching against token { foo } is specced to be equivalent to rx/ ^ foo $ /
moritz_ so it produced both "string\n" to STDOUT and then a 1 as the return value of say 13:05
TimToady so it shouldn't have matched at all
cognominal anyway, regex are what convinced me that Perl 6 is the way to go. TimToady++
moritz_ sense another rakudo bug 13:06
pmurias perltidy++ # "works" for haskell 13:24
it works for -Cpil1 at leat 13:25
* least ;)
pmurias audreyt: what's the state of PIL2? 13:45
& 13:51
moritz_ weekend & 13:51
rakudo_svn r30635 | pmichaud++ | [rakudo]: spectest-progress.csv update: 132 files, 2351 passing tests 15:04
dr_df0 weekend & 15:15
rindolf Hi all. 15:56
audreyt pmurias: on hold until ghc 6.10, as previously mentioned 16:45
pmurias audreyt: previously = on pugs.blogs.com 17:12
? 17:13
pmurias audreyt: i found out perltidy formats ./pugs -Cpil1 correctly ;) 17:15
audreyt wow :) 17:16
pmurias with --noadd-semicolons 17:18
ron Anyone around for a parrot/pir type question on a builtin ? 18:35
[particle] i might be able to help 18:49
ron thx - working on rt problem 58150 split on empty $*IN.slurp - have at least part of the answer I think 18:50
ron on another part I noticed in Str.pir -.sub 'split' :method :multi('Perl6Str') - why the :multi ?? any idea it seems to cause some problems 18:51
[particle] that split method works on the Perl6Str type 18:52
you may want a different method if you get a 'String' type 18:53
ron most of the stuff on the file works on some kind of string type. For some reason reverse above uses :multi(String) and uc/lc don't use a multi declaration 18:54
s/on/in
[particle] native parrot strings and perl 6 strings behave a bit differently 18:55
so we use multi to deal with that
ron Just one last try before I try further research myself ... what makes split different from reverse / uc / lc ?? 18:56
[particle] i'm looking closer 18:58
ron thx
[particle] i wouldn't trust it... that code was written in jan'08 (r24771) 19:01
much has changed since then, so it might not be accurate
does it work without :multi? 19:02
ron I have gottin <empty $*IN.slurp.split("\n") to work when I removed the multi and didn't see anything broken yet.
ron thx again for looking -- didn't think of checking age since code changed ... 19:06
[particle] np, that's what i'm here for :) 19:07
ruoso pmurias, hi 19:51
pmurias ruoso: hi
the wifi works again ;), although i have to have the door opened and it's getting cold ;)
ruoso heh... thick walls ;) 19:52
btw... have you seen the wiki page on the capture merger? 19:53
pmurias glimpsed at it looking again
ruoso thinks &?BLOCK will change a lot the way he codes... 19:54
pmurias suspects loops should be used instead ;) 19:56
ruoso pmurias, is the code that bad? ;) 19:57
pmurias wiki page loading... 19:58
ruoso btw... we need to sanitize the Capture API in SMOP... 19:59
pmurias, so... do you think the approach is sane? 20:04
ruoso home & 20:11
pugs_svn r22065 | dr_df0++ | [spec] while.t moved from t/statements/modifies and fudged for rakudo 21:12
r22066 | dr_df0++ | [t/statemets] deleted while.t modifier 21:18
r22067 | dr_df0++ | [spec] moved all tests from t/statemens/modifiers into t/spec/S04-statement-modifiers/ 21:38
tessier__ Is perl6 still implemented in Haskell? 21:39
[particle] tessier__: pugs is a perl 6 implementation written in haskell 22:07
rakudo is a perl 6 implementation written in perl 6 and pir (a parrot language)
there are others, written in ruby, c, perl 5, and perl 6 22:08
...all in various states of completion
tessier__ [particle]: Bug the pugs implementation is still the furthest along? 22:09
[particle] yes but pugs development has stalled
tessier__ Odd that there are so many implementations. You may end up with a Lisp-like problem.
[particle] and rakudo is passing 2300+ tests now
there are ~19000 tests at the moment 22:10
perl 6 has a well-defined spec, and test suite
any implementation that passes the test suite is considered official perl 6 22:11
if c had a test suite, would gcc and msvc and icc pass it?
smtms of course, everybody would be using it as a regresssion test suite 22:16
tessier__ Assuming someone unbiased and with good intentions made the test suite. 22:17
If Sun makes a Java test suite (actually, don't they?) guess what would happen? 22:18
[particle] and wouldn't that be grand. at least we're starting out with one :)
xinming_ tessier__: No one will write any implementation. :-) 22:19
[particle] quality would improve?
pugs_svn r22068 | dr_df0++ | [spec] t/spec/S04-statemet-modifiers/if.t merged from few files and fudged for rakudo 22:20
[particle] ah, look at that. rakudo's passing more tests now :)
dr_df0++ 22:21
pugs_svn r22069 | dr_df0++ | [spec] all tests in S04-statement-modifiers fudged for rakudo plus minor changes 23:04
ruoso Hello! 23:14
Limbic_Region salutations
dr_df0 perl6: { my $a; $a++; say $a } 23:19
p6eval rakudo 30642: OUTPUT[increment() not implemented in class 'Undef'␤current instr.: 'postfix:++' pc 14374 (src/gen_builtins.pir:9220)␤]
..elf 22069, pugs: OUTPUT[1␤]
dr_df0 sleep & 23:28