Re: Looking for help updating Perl 6 and Parrot part of Perl Myths talk
Tim (), Raphael (): Some XML related stuff: XML parser: http://github.com/fperrad/xml/ Tree manipulation: http://github.com/wayland/Tree/tree/master Thanks. Any reason they're not known to proto? The latter I wasn't really aware of. It's now added to the list, and wayland has been given a proto commit bit. The former, while apparently a nice effort, doesn't contain any Perl 6 code as far as I can see. // Carl
Re: How can i contribute for perl 6 ?
On Tue, Sep 15, 2009 at 09:30:13AM +0530, Saravanan Thiyagarajan wrote: Would like to be a volunteer in working for perl-6. Can some one help me to get into right direction ? I've written about various options on perlmonks [1], but I think the best thing you can do right now is to pick a simple Perl 5 module, and port it to Perl 6. If you find any bugs along the way, join us in #perl6 on irc.freenode.net and tell us about your bug. If you are sure that it's really a bug, send a mail to rakudo...@perl.org. I'd also like to point you to http://perl6.org/ which is full of links to good resources. [1] http://www.perlmonks.org/?node_id=771635 Cheers, Moritz
Re: How can i contribute for perl 6 ?
Thanks Tim for the link, I tried IRC channel felt like not to disturb from their serious discussion with a newbie question. My skillset is 5+ yrs of exp in perl,unix with a computerscience engineering background Worked in various domains like banking domain(Standard chartered - Gui tool in Tk/perl ) , telecom domain( cisco - clearcase wrappers in Perl/unix ) , storage domain( NetApp - parsers in perl/unix ). Sorry for adding my personal blah,blah . Hope this skillset information will be helpfull to start with . Looking forward for your suggestions .. @perlsaran On Tue, Sep 15, 2009 at 5:32 PM, Timothy S. Nelson wayl...@wayland.id.auwrote: On Tue, 15 Sep 2009, Saravanan Thiyagarajan wrote: Would like to be a volunteer in working for perl-6. Can some one help me to get into right direction ? Sure. The best way to help depends on your skill-set. One place to start is at http://www.rakudo.org/how-to-help That doesn't cover everything, though. I recommend going to the #perl6 IRC channel (irc.freenode.net) and asking the same question, and telling them your skill-set. They'll be able to give you immediate feedback on the best way to help. If you're unable to access IRC, then please let us know on the mailing list and we can discuss your skill-set here. HTH, - | Name: Tim Nelson | Because the Creator is,| | E-mail: wayl...@wayland.id.au| I am | - BEGIN GEEK CODE BLOCK Version 3.12 GCS d+++ s+: a- C++$ U+++$ P+++$ L+++ E- W+ N+ w--- V- PE(+) Y+++ PGP-+++ R(+) !tv b++ DI D G+ e++ h! y- -END GEEK CODE BLOCK-
Re: Looking for help updating Perl 6 and Parrot part of Perl Myths talk
On Mon, Sep 14, 2009 at 12:15:05PM +0100, Tim Bunce wrote: You can find my current draft at http://files.me.com/tim.bunce/65oikg (2.3MB PDF) page 73 - Haskell should be spelled with two Ls -kolibrie
Re: Looking for help updating Perl 6 and Parrot part of Perl Myths talk
2009/9/16 Carl Mäsak cma...@gmail.com: Tim (), Raphael (): Some XML related stuff: XML parser: http://github.com/fperrad/xml/ No Perl6. Only Parrot PCT. François Perrad Tree manipulation: http://github.com/wayland/Tree/tree/master Thanks. Any reason they're not known to proto? The latter I wasn't really aware of. It's now added to the list, and wayland has been given a proto commit bit. The former, while apparently a nice effort, doesn't contain any Perl 6 code as far as I can see. // Carl
Re: How can i contribute for perl 6 ?
On Tue, 15 Sep 2009, Patrick R. Michaud wrote: On Tue, Sep 15, 2009 at 10:02:02PM +1000, Timothy S. Nelson wrote: On Tue, 15 Sep 2009, Saravanan Thiyagarajan wrote: Would like to be a volunteer in working for perl-6. Can some one help me to get into right direction ? Sure. The best way to help depends on your skill-set. One place to start is at http://www.rakudo.org/how-to-help [...] See also http://use.perl.org/~masak/journal/39445 , which undoubtedly ought to be preserved somewhere on rakudo.org . +1. I have a set of 7 bookmarks that load in tabs that I call my Perl 6 bookmarks. I load this group of tabs into a separate web browser window when I'm doing Perl 6 stuff. That link is one of the 7 links. - | Name: Tim Nelson | Because the Creator is,| | E-mail: wayl...@wayland.id.au| I am | - BEGIN GEEK CODE BLOCK Version 3.12 GCS d+++ s+: a- C++$ U+++$ P+++$ L+++ E- W+ N+ w--- V- PE(+) Y+++ PGP-+++ R(+) !tv b++ DI D G+ e++ h! y- -END GEEK CODE BLOCK-
Re: How can i contribute for perl 6 ?
On Tue, 15 Sep 2009, Saravanan T wrote: Thanks Tim for the link, I tried IRC channel felt like not to disturb from their serious discussion with a newbie question. Feel free. There are a few people in the serious discussions who will ignore questions not directly targetted at them, but a lot of the #perl6 regulars are happy to field newbie questions. In fact, if discussions are happening, that's the best time to ask -- if there's no discussion, everyone may be asleep :). My skillset is 5+ yrs of exp in perl,unix with a computerscience engineering background Worked in various domains like banking domain(Standard chartered - Gui tool in Tk/perl ) , telecom domain( cisco - clearcase wrappers in Perl/unix ) , storage domain( NetApp - parsers in perl/unix ). Sorry for adding my personal blah,blah . Hope this skillset information will be helpfull to start with . Looking forward for your suggestions .. That'll be helpful, but I'm afraid all the help I could've provided is pretty much covered in one or another of the links that have been sent out. But others (again, especially on #perl6) may have more suggestions. HTH, - | Name: Tim Nelson | Because the Creator is,| | E-mail: wayl...@wayland.id.au| I am | - BEGIN GEEK CODE BLOCK Version 3.12 GCS d+++ s+: a- C++$ U+++$ P+++$ L+++ E- W+ N+ w--- V- PE(+) Y+++ PGP-+++ R(+) !tv b++ DI D G+ e++ h! y- -END GEEK CODE BLOCK-
Re: Looking for help updating Perl 6 and Parrot part of Perl Myths talk
On Wed, 16 Sep 2009, Carl Mäsak wrote: Tim (), Raphael (): Some XML related stuff: XML parser: http://github.com/fperrad/xml/ Tree manipulation: http://github.com/wayland/Tree/tree/master Thanks. Any reason they're not known to proto? The latter I wasn't really aware of. It's now added to the list, and wayland has been given a proto commit bit. It doesn't work, though. That's probably one reason it wasn't in proto :). Until either we get role stubs (role foo {...}) or I figure a way to work around that, it will continue not to work. But after that, I'll be able to move forward with it (well, if I have tuits -- I hope to be back to Perl 6 stuff within the next month). I don't want to complain, though. Great work so far, Rakudo implementors! :) - | Name: Tim Nelson | Because the Creator is,| | E-mail: wayl...@wayland.id.au| I am | - BEGIN GEEK CODE BLOCK Version 3.12 GCS d+++ s+: a- C++$ U+++$ P+++$ L+++ E- W+ N+ w--- V- PE(+) Y+++ PGP-+++ R(+) !tv b++ DI D G+ e++ h! y- -END GEEK CODE BLOCK-
Re: How can i contribute for perl 6 ?
Thanks everyone for sharing the link. After a serious of chat in IRC found this links usefull http://www.perlfoundation.org/perl6/index.cgi?roadmap_to_helping_with_development ~ twitter.com/perlsaran On Tue, Sep 15, 2009 at 10:23 PM, Patrick R. Michaud pmich...@pobox.comwrote: On Tue, Sep 15, 2009 at 11:16:56AM -0500, Kyle Hasselbacher wrote: On Mon, Sep 14, 2009 at 11:00 PM, Saravanan Thiyagarajan perlsa...@gmail.com wrote: Would like to be a volunteer in working for perl-6. Can some one help me to get into right direction ? This is how I did it: http://perlmonks.org/?node_id=780001 Now added to http://rakudo.org/how-to-help . Perhaps we also need a how to get involved section on perl6.org ...? Pm
Workaround for role stubs (Re: Looking for help updating Perl 6 and Parrot part of Perl Myths talk)
Timothy S. Nelson wrote: On Wed, 16 Sep 2009, Carl Mäsak wrote: Tim (), Raphael (): Some XML related stuff: XML parser: http://github.com/fperrad/xml/ Tree manipulation: http://github.com/wayland/Tree/tree/master Thanks. Any reason they're not known to proto? The latter I wasn't really aware of. It's now added to the list, and wayland has been given a proto commit bit. It doesn't work, though. That's probably one reason it wasn't in proto :). Until either we get role stubs (role foo {...}) or I figure a way to work around that, If you want to stub role foo, you can simply write role foo[Int $a, Int $b, Int $c] { } or with some other parametrization signature that's never used anywhere. Role declarations are multi just like multi subs, and writing down one multi role that's never used makes the name known to Rakudo. That's a bit of an ugly hack, but it worked for me so far. Cheers, Moritz
Re: Looking for help updating Perl 6 and Parrot part of Perl Myths talk
Am Mittwoch, den 16.09.2009, 10:30 +0200 schrieb François Perrad: 2009/9/16 Carl Mäsak cma...@gmail.com: Tim (), Raphael (): Some XML related stuff: XML parser: http://github.com/fperrad/xml/ No Perl6. Only Parrot PCT. Yes, I know. But your XML grammar is Perl 6 syntax anyway ;) If you want pure Perl6, here is an other small example: http://github.com/krunen/xml But as it stand now, it's more a stub. It show that PGE is now mature enouth to start hacking on an XML Grammar close to the W3C Spec. Raphael. François Perrad Tree manipulation: http://github.com/wayland/Tree/tree/master Thanks. Any reason they're not known to proto? The latter I wasn't really aware of. It's now added to the list, and wayland has been given a proto commit bit. The former, while apparently a nice effort, doesn't contain any Perl 6 code as far as I can see. // Carl
Re: How can i contribute for perl 6 ?
On Wed, 2009-09-16 at 19:49 +1000, Timothy S. Nelson wrote: +1. I have a set of 7 bookmarks that load in tabs that I call my Perl 6 bookmarks. I load this group of tabs into a separate web browser window when I'm doing Perl 6 stuff. That link is one of the 7 links. Perhaps your other Perl 6 bookmarks ought to appear on rakudo.org or perl6.org as well. :-) -'f
Re: S26 - The Next Generation
I'm jumping in on an old conversation because I only just had time to catch up last night. I have a few questions that I think are probably still pertinent. On Sun, Aug 16, 2009 at 4:26 PM, Damian Conway dam...@conway.org wrote: Executive summary: * Pod is now just a set of specialized forms of Perl 6 comment * Hence it must always parsed using full Perl 6 grammar: perl6 -doc This one seems relatively obvious, so it's probably been proposed. I skimmed a few of the responses and didn't see it, but that means little, I'm sure. This makes me wonder about other languages. I've been known to use POD in strings within other languages that lack a facility for documenting a program as a facility rather than as a collection of elements (which is the javadoc et al. trap). Should there be an explicit way to step this down to just parsing the bits that are called out as pod? For example: #!/bin/sh #=notperl :leading# :trailing\n cd $1 #=head1 ... # ... #=cut Obviously causing leading #s to be stripped when evaluating the podishness of a section of the program, up to the next newline. Similarly a CDATA block in XML might specify (on its own line) #=notperl :langxml :leading !-- and :trailing -- as the begin and end tokens of potentially valid POD sections. The evaluation of each identified section then being gated on the presence of a following = token. I can't think of a language that can't support POD in this way, but I'm sure someone will provide an example ;) Actually, in retrospect vanilla C89 might be problematic. I seem to remember that C9X introduces // so it could pull this off. I can imagine a messy solution in C using #define, but it would produce compile-time warnings in some compilers. Interestingly, this would have the side-benefit of making any program in any language into valid Perl code, given the appropriate notation at the start of the program... Kind of nifty if not strictly a practical benefit. [...] * In addition to delimited, paragraphed, and abbreviated Pod blocks, documentation can now be specified in a fourth form: my $declared_thing; #= Pod here until end of line sub declared_thing () { #=[ Pod here until matching closing bracket ] ... } There is no explicit mention in the document as to what happens at the Perl level when the closing bracket is reached at a point that is not the end of a line (i.e. it is not followed by whitespace that contains a newline character). Here's an example: my $a #-[stop the presses!] = 4; I'm not sure that I even think this is a good idea (nor a bad one, for that matter), but the documentation does not make this clear. It seems likely that the expected behavior is for Perl to treat the # as the start of a comment, even though it encounters parsable pod thereafter, and to continue to process the remaining part of the line as a comment, however this brings multi-line bracketted POD into question: sub fly($like, $to, $spirit) #=[ time keeps on slippin' ] { # error - this brace is not considered code? ... } fly(:like('eagle'), :to('sea'), :spirit('carry me')) * This new declarator block form is special. During source code parsing, normal Pod blocks are simply appended into an array attribute of surrounding Comment object in the AST (which is just $=POD, at the top level). However declarator blocks are *also* appended to the .WHY attribute of the declarator at the start of the most recent (or immediately following) line. I'd very much like to establish that at default optimization levels for execution, this information is not guaranteed to be maintained past the creation of the AST. This allows optimizations which might place declared elements into types which cannot maintain additional data (e.g. a Parrot I-register). Perhaps in some cases we would want to provide such guarantees. I wouldn't be opposed to an explicit way to request such a guarantee. For example: sub junk($things) is documented #= junk happens { ... } Now, even if junk is inlined and optimized away, we guarantee that its documentation will continue to be stored in some way that can be retrieved. This might even prevent certain classes of optimizations, but that's implementation specific. * Hence, they can be used to document code directly, which documentation can then be pulled out by introspecting either $=POD or the declarators themselves. Documented declarators look like this: Although it's something that could be added on after-the-fact, I think it's worth calling for this up-front: All of your comments about .WHY seem to indicate that it behaves recursively, walking the tree and pulling out any documentation for child nodes. That's fine, but there really should be a user-accessible and well defined way to limit that
POD classes -- a suggestion
I'd really like to be able to assign a class to POD documentation. Here's an example of why: class Widget is Bauble #= A widget is a kind of bauble that can do stuff { has $.things; #= a collection of other stuff #==XXX{ This variable needs to be replaced for political reasons } } When extracting the documentation for this class, it should appear as such: class Widget base class: Bauble A widget is a kind of bauble that can do stuff Attributes: $.things (simple scalar) -- a collection of other stuff But when extracted with a flag requesting class XXX documentation, it should include the additional line: This variable needs to be replaced for political reasons This has many uses: - Keeping customer-visible and internal documentation in the same file - Allowing easy access to just the documentation bits that you might be interested in - Could be extended to allow for injecting documentation into other modules that are being extended, but in a way that allows access to the original documentation on its own - This might expose the implementation of features used to control debugging, warnings (e.g. the equivalent of no strict, but with documentation as to why) and lint-like facilities - One of my usual gripes about doc systems is that they document elements of a program or library and not its function. Given this feature it would be easy to distinguish between the two and perhaps even require either or both depending on what's being parsed (e.g. a program might require only functional documentation where a library might require both functional and element-level docs).
Re: How can i contribute for perl 6 ?
On Wed, 16 Sep 2009, Geoffrey Broadwell wrote: On Wed, 2009-09-16 at 19:49 +1000, Timothy S. Nelson wrote: +1. I have a set of 7 bookmarks that load in tabs that I call my Perl 6 bookmarks. I load this group of tabs into a separate web browser window when I'm doing Perl 6 stuff. That link is one of the 7 links. Perhaps your other Perl 6 bookmarks ought to appear on rakudo.org or perl6.org as well. :-) They probably mostly do: - rakudo.org - parrot.org - P6 specs - Moritz' blog (especially because of the monthly summaries) - #perl6 IRC logs - perl6.org - That link to Masak's blog I'm pretty sure most of those are linked somewhere. I'd actually be in favour of Masak's post being copied to the site (with attribution) and expanded, rather than just linked, if Carl is happy with the idea. Unfortunately no tuits at the moment. :) - | Name: Tim Nelson | Because the Creator is,| | E-mail: wayl...@wayland.id.au| I am | - BEGIN GEEK CODE BLOCK Version 3.12 GCS d+++ s+: a- C++$ U+++$ P+++$ L+++ E- W+ N+ w--- V- PE(+) Y+++ PGP-+++ R(+) !tv b++ DI D G+ e++ h! y- -END GEEK CODE BLOCK-
Cobra Ioke Programming Languages
Just wanted to get some thoughts on the following languages and if any features from them can be implemented in Perl6: Cobra http://cobra-language.com/docs/papers-etc/Cobra-Socal-Piggies-2008-02-Slides.pdf http://cobra-language.com/docs/why/ Ioke http://ioke.org/wiki/index.php/Guide Also any thoughts on implementing Perl 6 on LLVM? Thanks! Juan
Re: Cobra Ioke Programming Languages
Perl is being actively developed for the Parrot VM. LLVM is another interesting option and if someone or some group would like to take it on, it would be a welcome alternate implementation. What parts in particular of Cobra and ioke look useful to you? Looking at Cobra's intro slide- * Cobra is a new language (sub 1.0) Not sure if Perl6 qualifies as a new language. It's built off of an old language, and is backwards compatible with it. And, perl5 is adopting pieces of perl6. On the other hand there's enough in Perl6 that's new it's easy to make the case that it is a new case. Though newness is not something useful to coders! * Object-oriented, imperative This can be implemented in Perl6 *Embraces unit tests, contracts and more This can be implemented in Perl6 *General purpose This can be implemented in Perl6 *Runs on .NET Mono Not in current implementations on Perl6 *Windows, Mac, Linux, Solaris, etc. Rakudo (Perl6 on Parrot) runs on all those platforms. I'm being flippant there- I think if you can ask a more specific question you'll get a better answer. Cobra looks interesting as does Ioke. Cobra is in late-beta and Perl6 is still alpha... Ioke looks cleaner and simpler and with the quick look through the link you posted, I didn't see anything jump out as hard to do in Perl6- other than run on the JVM. -y On Wed, Sep 16, 2009 at 8:14 PM, Juan Madrigal jua...@mac.com wrote: Just wanted to get some thoughts on the following languages and if any features from them can be implemented in Perl6: Cobra http://cobra-language.com/docs/papers-etc/Cobra-Socal-Piggies-2008-02-Slides.pdf http://cobra-language.com/docs/why/ Ioke http://ioke.org/wiki/index.php/Guide Also any thoughts on implementing Perl 6 on LLVM? Thanks! Juan
Re: Cobra Ioke Programming Languages
This is an interesting subpage under Cobra- http://cobra-language.com/docs/quality/ it actually bears a little on recent discussions about self-documenting code. I'm a Perl6 beginner so I'm making comments with expectation that others will correct where I'm wrong * Doc Strings Perl6's vision of doc strings are more powerful than what are in Cobra * Unit Tests Cobra's language-level test constructs looks cleaner then Perl's culture-level tests. * Contracts Hmmm, those look like a cross between assertions and unit tests... not sure how they fit in Perl6 * Compile-time Nil Tracking Sounds like strong-typing to me, which one can easily request in Perl6 * Assertions Pretty sure Perl6 has'em