Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6-soc, 2009-07-15

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

All times shown according to UTC.

Time Nick Message
09:48 masak joined #perl6-soc
14:25 [particle] joined #perl6-soc
14:28 PerlJam joined #perl6-soc
14:29 masak zarah: only four and a half hours left! :)
14:29 zarah masak: you've just exceeded my capabilities :/
19:00 masak o/
19:10 PerlJam T+10 minutes. I thought something was suppose to happen?
19:11 masak in my defense, me too...
19:11 masak shall we talk about u4x and grok a bit while we wait for people to (maybe) show up?
19:14 PerlJam I know absolutely nothing about what's happened with those, but I do have an opinion on the general shape that such tools should take.
19:14 masak this is the fourth meeting of this kind. the first one was also delayed (by half an hour) -- but then moritz_ and I made good use of the time.
19:14 masak PerlJam: sounds good. now, 'u4x' is the throwaway name for a documentation effort.
19:15 masak it will cover approximately the same ground as the synopsis, but it'll target end users, not language implementors.
19:16 masak it sometimes happens that the spec is a bit terse and succinct, which is often good from a spec perspective.
19:17 masak for u4x, I'm looking for a style more sprinkled with code examples, and hyperlinks for non-trivial terms.
19:20 PerlJam user contributions?
19:20 pmurias joined #perl6-soc
19:20 masak PerlJam: is the question whether I would welcome them? yes.
19:21 PerlJam more like would there be (should there be) a mechanism for the community of users to maintain the docs by adding supplemental information
19:21 PerlJam ?
19:22 masak PerlJam: it's all in the Pugs repo, so anyone can contribute.
19:22 masak and I'm open to the project going in different directions due to new content.
19:22 PerlJam masak: yeah, except your end users may not grok svn even.
19:22 masak true.
19:23 masak if they don't grok SVN and still would like to contribute, I'm sure we can come up with a way for them to do that.
19:23 pmurias (like explain svn to them)
19:23 masak :D
19:23 PerlJam pmurias: whatever works
19:23 TimToady write svnwiki
19:24 masak anyway, the structure that's slowly crystalizing aroung u4x -- and the part that concerns grok, the docu-viewer, the most -- is the concept of 'entries'.
19:25 masak an entry is identified by a key, something like 'infix:<+>' (sans quotes)
19:25 [particle] PerlJam: user contributed docs like php.net/docs?
19:25 masak that wouls be awesome.
19:25 PerlJam [particle]: perhaps.  same in spirit if different in implementation
19:25 masak powered by Web.pm, with every entry more or less a blog entry where poeple can comment.
19:26 [particle] i'd like to see stackoverflow-like ratings for comments, then
19:26 pmurias TimToady: you mean use svnwiki?
19:26 TimToady there is one?
19:26 masak [particle]: that might be a good idea, yes.
19:27 PerlJam TimToady: http://wiki.freaks-unidos.net/svnwiki/index
19:27 zarah PerlJam's link is also http://tinyurl.com/lq4xf7
19:28 masak zarah: thank you.
19:28 zarah you're welcome, masak :)
19:28 TimToady .oO(pay no attention to the bdfl behind the curtain)
19:29 masak :)
19:29 masak anyway,
19:30 masak my dream is for the command-line tool to be awesome.
19:30 PerlJam that sounds a lot like my dream
19:30 masak it will find answers to questions even when the user barely understands what to ask.
19:30 PerlJam awesome "tell me something useful"
19:31 PerlJam awesome IO.mtime
19:31 masak for example, let's say someone sees the line of code 'my $sum = [+] @values;'
19:31 PerlJam awesome DateTime::Duration
19:31 PerlJam :)
19:31 masak PerlJam: I do expect grok to handle the last two.
19:32 masak anyway, in the example, the user might ask herself "what in the world does '[+]' mean?"
19:32 masak so she types "grok '[+]'" on the command line.
19:32 masak and presto!
19:32 PerlJam masak: one of the things that currently annoys me about perldoc is all of the See Alsos when a class inherits from another.  Make the doc tool smart enough to show you all of the method docs for all methods that are available to the class whether they've been inherited or not.
19:32 masak grok will realize that it's an infix:<+> inside the [] metaoperator
19:33 PerlJam masak: and grok '[]' will give info on subscripting?
19:33 masak PerlJam: agreed. that's more valuable for non-core modules than for core ones, I think.
19:34 masak PerlJam: yes, that seems reasonable.
19:34 TimToady what if [] is an empty array?
19:34 masak PerlJam: it'd probably tie on array notation, subscripting and the metaoperator.
19:34 masak when it ties, it shows a list of ways to be more specific.
19:35 masak in short, it goes a long way to help you ask the question.
19:38 PerlJam interactive help would be nice too I think
19:38 masak hm, yes.
19:38 masak that is more the domain of Padre than the command-line, perhaps.
19:39 PerlJam yeah
19:39 TimToady you'd like to point to a chunk of AST and say what's this do?
19:39 masak aye.
19:40 masak at least, I think that's what I'd like.
19:40 PerlJam I'd like the REPL to be able to give me the docs for any bit of syntax  somehow.
19:40 [particle] --target=explanation :)
19:41 masak PerlJam: I'd like the REPL to have decent arrow navigation and variables that persist across command invocations.
19:41 PerlJam it needs to be more of an introspection-like thing so that the padre people could use it too
19:42 masak aye, more of an API than a program.
19:43 PerlJam Perl6::Grammar.explain('[]')
19:43 PerlJam more like  my @candidates = Perl6::Grammar.explain('[]')
19:44 PerlJam my $text = Perl6::Grammar.explain($candidate)
19:44 PerlJam or something
19:44 [particle] '[]': Perl6::Grammar.*splain
19:45 PerlJam we'll give whole new meaning to the term s-expressons.
19:45 PerlJam :)
19:45 masak I feel that the dispatching part of grok is the most important component.
19:45 masak presentation comes a close second, but 'ri' makes a good ideal there.
19:45 [particle] i do wish there were soc students here.
19:46 masak well, to be fair, pmurias is here.
19:46 PerlJam but we're not talking about smop
19:46 masak but he usually has no great need to report, since he and ruoso report continually.
19:46 masak PerlJam: indeed not.
19:47 takadonet joined #perl6-soc
19:47 masak I don't know whether I should be concerned about literal's absense. he hasn't said anything about not coming today.
19:47 masak he did release grok 0.12 earlier today, though.
19:49 jeekobu joined #perl6-soc
19:49 pmurias re not talking about smop, if anyone has any idea how i can describe how a given method Perl 6 method compiles to C i'm open to suggestions ;)
19:50 masak pmurias: won't "eval" calls be a problem when compiling to C?
19:51 pmurias explain your doubts ;)
19:52 PerlJam pmurias: I'd have some ideas if I knew what you were talking about ;)   Most of the time, while what you're doing seems very interesting, it's also in a foreign language.   :)
19:53 pmurias ok, i'll try to explain
19:53 masak pmurias: well, it seems to me that code inside an eval string will have to be compiled during runtime, which means a whole Perl 6 compiler will have to be shipped with the C executable. not a problem per se, just... not very minimal.
19:54 pmurias what i'm trying to is to compile a method call to a chunk of C code which does the same thing (assuming the internal structure of some/all of the objects involved)
19:56 pmurias masak: when you compile to bytecode you have to ship the VM
19:56 masak pmurias: but sans eval (it seems to me) compiler and VM could be separate.
19:56 masak with it, they can't.
19:56 pmurias that's the price of eval
19:57 masak I guess. :)
19:58 PerlJam so ... outlaw eval and problem solved!
19:58 PerlJam :)
19:59 masak we should have thought of that years ago. :)
20:03 masak anyway, I think a TDD-based approach is the sanest way to build a grok dispatcher. separate out the dispatching component and test it to death.
20:03 masak if STD.pm can be co-opted to help the dispatcher, then that's great news.
20:04 masak but it'll also have to figure out a fair number of things by itself.
20:05 PerlJam Are you sure that grok really isn't just spelled perl?
20:05 masak I'm not sure of a lot of things when it comes to grok.
20:06 masak but since I envision the syntax for using it to be `grok '[+]'`, it can't really be spelled perl, because perl wouldn't understand such an argument.
20:06 masak it'd think it was a file or something.
20:08 StephenPollei `perl --grok '[+]'
20:08 masak :)
20:09 StephenPollei I have no real opinion
20:09 PerlJam I was just thinking that perl already has the ability to parse things and understands context and such.  What it doesn't have (from a grok perspective) is a maping between AST and docs.
20:10 PerlJam If STD could be annotated (similar to how it gives helpful hints when you get the syntax wrong) to somehow "link" to the appropriate docs ...
20:10 masak StephenPollei, PerlJam: I'm not opposed to these proposals, but I think the correct order of things in this case is (1) hack, hack, hack (2) be awesome (3) get integrated into perl
20:10 masak we're on (1) right now :)
20:11 PerlJam Oh, I was trying to spur TimToady into doing some of the work in STD  ;)
20:11 masak as far as that's doable, it'd be great, yes.
20:12 masak but we hypothesized last week that there may be pieces of syntax that STD.pm wouldn't accept, but that grok should.
20:14 masak an example would be '>>.', which is a hyper plus a method-call dot.
20:20 PerlJam so grok is going to emulate smarts by having a really good database of symbols that people are likely to use?
20:20 masak I'm hoping there are heuristics that will make the database smaller, but yes.
20:21 PerlJam Well, grok would have it's own "grammar" that would help, I'm sure.
20:22 masak sounds very likely, yes.
20:24 PerlJam okay, in that light it sounds like "dispatch" is hooking into action just like PCT does.
20:24 PerlJam *actions
20:25 PerlJam (I'm obviously still looking for wheels that are already mostly invented but need to be slightly rounder for grok)
20:25 masak by all means.
20:30 masak well, I think that concludes today's meeting.
20:30 masak thank you all for coming.
20:30 masak let's hope more GSoC students show up next week. :P
21:03 pmurias left #perl6-soc
22:46 literal PerlJam: about grok's low commit rate, the effort also includes three other distributions, Perl6-Perldoc-To-Ansi, Pod-Text-Ansi, and most recently Perl6-Doc :P

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