RE: junctions and autothreading
From: Amir E. Aharoni [mailto:[EMAIL PROTECTED] I've seen the matter of autothreading mentioned in various places, usually together with junctions. It seems like a neat idea, thread safety concerns notwithstanding. Searching the mailing lists archives, i found that there were heated debates about it months ago on perl6-language ( http://xrl.us/e77x ). What is its status now? Is it/Will it be implemented? Will it be the default? Is it still hotly debated? I don't know, but here's another interesting place (#perl6 IRC search page) that sometimes turns up additional interesting info (although not much this time): http://colabti.de/irclogger/irclogger_log_search/perl6 FYI, searching on autothreading gives: Results: 2006-08-10,Thu 1523 [14:02] gaal what, your shell doesn't have autothreading? 2006-07-04,Tue 558 [16:52] stevan putter: it would almost certainly involve junctive autothreading 2006-03-15,Wed 95 [00:31] TimToady autothreading happens mystical handwaving 99 [00:33] LeTo and autothreading is or course useful, if e.g. you got some spare CPUs to do it, but how? 107 [00:40] LeTo TimToady: I see the future PC having a lot of CPUs (my shiny new Athlon X2 got 2 already), having just more M^HGhz tendency is already stopped, the 'autothreading' or whatever parallel construct should consider this [...] Best regards, Conrad Schneiker http://perl.net.au/wiki/Perl_6_Users_FAQ (Moved from AthenaLab to Perl 6 Wiki.) www.AthenaLab.com (Nano-electron-beam and micro-neutron-beam technology.)
Re: clarify: does Dog is Mammal load Mammal for you?
In a message dated Mon, 21 Aug 2006, Jonathan Scott Duff writes: But, assuming for the moment that Cis Mammal autoloads CMammal.pm, does that mean that class Dog is Mammal-4.5 is valid? Yes, it must be valid. See http://dev.perl.org/perl6/doc/design/syn/S11.html#Versioning : So you can just say my Dog $spot .= new(woof); and it knows (even if you don't) that you mean my Dog-1.3.4-cpan:JRANDOM $spot .= new(woof); For this not to extend to subclassing seems bizarre. This seems like something we shouldn't encourage as it tends toward tight coupling of implementations where it should be tight coupling of abstractions. Different sites have different needs. Sites with strong regulatory or auditing requirements to not modify existing code without review (where the definition of modifying includes changing upstream dependencies) must be able to specify the longname of classes in this context. Tight coupling should not be encouraged, but it must be allowed for these cases. My question is, if a program is running where two versions of Dog are loaded, say 1.3.4 and 2.1, and a file contains: use Dog-1.3.4-cpan:JRANDOM; class Poodle is Dog { ... } will the compiler know that 'Dog' in this file must always refer to 1.3.4, and not 2.1, as most other references to the shortname would? If not, sites that need dependency stability will have to write use Dog-1.3.4-cpan:JRANDOM; class Poodle is Dog-1.3.4-cpan:JRANDOM { ... } which I don't necessarily have any problem with, but this behavior needs to be defined. Incidentally, isn't C(Any) in longnames supposed to be * now? S11 still uses C(Any). Trey
Re: clarify: does Dog is Mammal load Mammal for you?
Oops, Luke Palmer alerted me to the fact that I screwed up in the below. In a message dated Tue, 22 Aug 2006, Trey Harris writes: My question is, if a program is running where two versions of Dog are loaded, say 1.3.4 and 2.1, and a file contains: use Dog-1.3.4-cpan:JRANDOM; class Poodle is Dog { ... } will the compiler know that 'Dog' in this file must always refer to 1.3.4, and not 2.1, as most other references to the shortname would? If not, sites that need dependency stability will have to write I misstated my worry here. In this case, by the same rule that my Dog $foo gets the right version because the longname is aliased to the shortname in the lexical scope of the use, it would work. What I'm actually concerned about is the case where the Dog CPAN distribution includes Poodle.pm. I think that we need Poodle.pm to be written like: use Dog-1.3.4-cpan:JRANDOM; class Poodle-1.3.4-cpan:JRANDOM is Dog { ... } If it's written: use Dog; class Poodle-1.3.4-cpan:JRANDOM is Dog { ... } then in a running Perl program that has previously loaded Dog-2.1-*, Poodle-1.3.4 will become a subclass of Dog-2.1, which causes any code using Poodle-1.3.4 to be unable to protect itself from an unforseen upstream dependency change. Such wordiness seems unfortunate and error-prone. I don't believe the specs yet have anything to say about how filesystem layout exists in the world of versioned packages, but it would be nice if a distribution's packages can use a shortname and automatically refer to other packages in the same distribution before the compiler looks elsewhere within %*INC (or its moral equivalent). Trey
Re: End the Hollerith Tyranny? (linelength.t)
On Mon, Aug 21, 2006 at 06:49:20PM -0400, Mr. Shawn H. Corey wrote: Chip Salzenberg wrote: On Mon, Aug 21, 2006 at 06:05:08PM -0400, Mr. Shawn H. Corey wrote: Don't forget that some programs, like mailers, wrap at 80 characters. I don't know of any mailer that is hard-coded at any given column width. Do you? Thunderbird, Evolution, just to name two. OK, they're not hard-coded; you can change the option (if you can find it). I don't think that this is actually a problem as IIRC those mailers don't have the option to mail in plain text. See http://nick.hates-software.com/2004/06/30/33b6b8a1.html for a description of the problem (contains profanity, as does quite a bit of that site). Sadly for some mailers attachments are the only way to go. Nicholas Clark
Re: clarify: does Dog is Mammal load Mammal for you?
On Tue, Aug 22, 2006 at 12:37:33AM -0700, Trey Harris wrote: I misstated my worry here. In this case, by the same rule that my Dog $foo gets the right version because the longname is aliased to the shortname in the lexical scope of the use, it would work. What I'm actually concerned about is the case where the Dog CPAN distribution includes Poodle.pm. I think that we need Poodle.pm to be written like: use Dog-1.3.4-cpan:JRANDOM; class Poodle-1.3.4-cpan:JRANDOM is Dog { ... } If it's written: use Dog; class Poodle-1.3.4-cpan:JRANDOM is Dog { ... } then in a running Perl program that has previously loaded Dog-2.1-*, Poodle-1.3.4 will become a subclass of Dog-2.1, which causes any code using Poodle-1.3.4 to be unable to protect itself from an unforseen upstream dependency change. This is precisely the problem which unix shared libraries have to face (so yes, it's a real problem), and which is handled by a combination of sonames and versioned symbols. It seems to me that there is some merit in considering similar features here. The essential features are: - independent version labels for the interface and implementation, so you can change the implementation while promising that the external interface remains the same - individual symbols can be optionally decoupled from the interface version of the library that contains them and versioned independently, so even though the interface version has changed from X to Y, the linker knows that only function foo has changed; clients that use only function bar will still find this version acceptable. Shared libraries make this behaviour optional, with the first being all that most people use, and the second only being used by people writing large libraries with complex needs (like glibc). You can get interface versions with nothing more than a stipulation that Poodle-1.* will always have the same interface, but everybody has to understand what this means for it to work. I'm not sure if this is the right approach here. It is not clear to me whether it is practical to version individual symbols in perl6 as it currently stands, but it would appear to be worthwhile to make sure this is possible. I suspect that this will largely be a matter of establishing appropriate conventions about versioning for CPAN modules.
Re: [perl #40210] [TODO] Provide a way for PGE's dump to go to string
On Mon, Aug 21, 2006 at 07:16:46AM -0700, Will Coleda wrote: While the primary use of dump is for immediate debug output (and therefore puts is ok), being able to get at the string it generates is *very* useful for testing. I've refactored the existing 'dump' method into separate 'dump_str' and 'dump' methods in runtime/parrot/library/PGE/Dumper.pir. Available as of r14306. Thanks! Pm
a practical question
I've been following the development of perl6 from its beginnings, read the Apocalypses and Exegesis as they came out, and though I am not a perl guru and did not understand it all, the language looks interesting and one I would like to experiment with. But I want to start doing real things. Which for me requires gui toolkits. I have used Tk with perl5 and I am looking at WxWidgets. WxWidgets (and the more commercial Qt) exist as C++ classes, although WxPerl is a set of wrappers around WxWidgets for perl5. So how to write an application in perl6 that uses (for the sake of illustration) WxWidgets? For simplicity, just a small window with Hello World, a button cool that adds text to the window, and a button Be gone! to kill the window. Can, in fact, pugs do the following? 1) Suppose initially, we use WxPerl, taken from cpan? Presumably, we write a perl6 program that has some perl5 in it that instantiates the objects using WxPerl. Then we switch to perl6 scripting. From what I understand from pugs documentation it is possible to switch from one representation to the other. How then does perl6 manipulate the scalars which perl5 generates as blessed references? 2) The other possibility is for perl6 to use the WxWidgets classes directly. [ This actually would be useful because there are contributed classes in WxWidgets that have not yet been wrapped for perl5 consumption. ] How do I tell the perl6 (pugs) compiler where the classes reside? How do I get them to instantiate? How do I then manipulate the objects? From the documentation on perl6, this sort of manipulation of other languages' objects is supposed to be much easier that it was for perl5, viz, no knowledge of XS is required. Some examples would help me understand how to get perl6 working to do the things I want to do with it. Richard
Integrating the Pugs test suite into the Synopses
Hi, there~ When you see the title, you may wonder what that means. Here is the answer: http://feather.perl6.nl/~agentzh/syn/S04.html Search for links named like Show the snippet from ... and click on them to find out what will happen. :) Well, in short, we have divided the .t files in the Pugs test suite into pieces and inserted every resulting snippet after the corresponding paragraph of the Synopses. The job was done by the Perl 5 script util/smartlinks.pl living in the Pugs source tree. And all the *.html under http://feather.perl6.nl/~agentzh/syn/ are updated every hour with the latest Synopses and Pugs test suite. Thanks to the cron program on feather. ;-) At this point, there is a question. How does smartlinks.pl manage to determine which snippet of the tests corresponds to which paragraph of a certain synopsis? Hmm, I'm sure you may have already found the answer from the web pages. There's hundreds of smartlinks spreading over the whole test suite in the form of comments. Here're two examples: # LS04/The do-once loop/can't put while or until modifier # LS04/Switch statements /is exactly equivalent to You see, the smartlink has its deep root in our POD, but contains an extra keyword list after the second slash. This list of keywords specifies which paragraph in the given section is relevant to the tests right below the comment. Multiple adjacent smartlinks can share the same group of tests: # LS02/Context/boolean ? # LS03/Changes to Perl 5 operators/? imposes boolean context { ... } Please see t/README in Pugs repository for more detailed information on smartlinks: http://svn.openfoundry.org/pugs/t/README Embedding test snippets into the Synopses has several benefits: * Providing more sample code to the Synopses Synopses are known for their rich samples. Unfortunately, the sample code our Synopses are not enough at all. Many sections go without sample code. On the other hand, the Pugs test suite contains tens of thousands of tests, which can certainly serve as very good examples as long as they are correct and up-to-date. * Intuitive estimation for the quality of the tests When we browse the web pages with test snippet embedded, it's quite easy to figure out the validity and also the completeness of the test suite. For instance, if a whole section has no snippet links at all, then that probably means we need to add more tests as well as smartlinks. These HTML pages are good visual coverage reports per se. Also, the correctness of a group of tests is easiest to determine if it appears right in the context of the synopses. Currently we also have TODO and SKIP marks in the test suite, hence we can get a good estimation for how much of the Synopses are implemented by Pugs at a quick glance. * Easier to detect mismatch between tests and docs Everyone who has subscribed p6l can see the Synopses are changing pretty fast. In contrast, many tests in the Pugs test suite are terribly out of date even though Larry has the habit of updating some tests after updating the documents. But if we have enough smartlinks distributed in the test suite, the mismatch between tests and docs can be detected in the form of broken links. To get a list of broken links, we only need a single command: $ util/smartlinks.pl --check t/*/*.t t/*/*/*.t Unmatched smartlinks (if any) will be reported in great detail: ERROR: t/operators/quoting.t: line 173: pattern ``/Split result on words (no quote protection)/'' failed to match any paragraph in LS02/Literals. ERROR: t/data_types/arglist.t: line 6: section ``Operator renaming'' not found in S03. As I told Juerd on #perl6, the initial motivation of developing smartlinks.pl is simply to make myself more motivated to contribute tests to Pugs. Thanks to other Pugs members who worked on the smartlinks long before I joined the Pugs team. Without their work, smartlinks.pl won't produce anything meaningful today. :) This mail is also posted to Audrey's blog in the form of HTML: http://pugs.blogs.com/pugs/2006/08/integrating_the.html POD++ Cheers, Agent
Re: Dumb doc question...
On 8/21/06, Agent Zhang [EMAIL PROTECTED] wrote: http://svn.berlios.de/svnroot/repos/unisimu/Perl/Syn/ This position is no longer maintained. Please see http://feather.perl6.nl/~agentzh/syn/ instead. The .html pages there are updated every *one* hour by the cron program on feather. So they're guaranteed to be up-to-date. Cheers, Agent
#ParrotSketch Meeting 22AUG06
Transcript now available at: http://www.parrotcode.org/misc/parrotsketch-logs/ irclog.parrotsketch-200608/irclog.parrotsketch.20060822 -- Will Coke Coleda [EMAIL PROTECTED]
Re: Heredoc issue in pugs.
On 8/22/06, Larry Wall [EMAIL PROTECTED] wrote: print qq:from/FOO/; On a somewhat related, somewhat unrelated note, I am a little bit worried about the false duality of :to and :from. Luke
[svn:perl6-synopsis] r11316 - doc/trunk/design/syn
Author: pmichaud Date: Tue Aug 22 11:00:04 2006 New Revision: 11316 Modified: doc/trunk/design/syn/S05.pod Log: Change If the first character after the angle is whitespace to If the first character after the identifier is whitespace for before regex constructs. Modified: doc/trunk/design/syn/S05.pod == --- doc/trunk/design/syn/S05.pod(original) +++ doc/trunk/design/syn/S05.podTue Aug 22 11:00:04 2006 @@ -641,7 +641,7 @@ foo('bar') -If the first character after the angle is whitespace, the +If the first character after the identifier is whitespace, the subsequent text (following any whitespace) is passed as regex, so: foo bar
Heredoc issue in pugs.
#!/usr/bin/env pugs my $a = q:t /END/ test END; $a.perl.say; Above example works ok in pugs, But the problem is. From S02 Heredocs are no longer written with , but with an adverb on any other quote construct: print qq:to/END/; Give $amount to the man behind curtain number $curtain. END Which is correct?
Re: Heredoc issue in pugs.
On Wed, Aug 23, 2006 at 02:16:11AM +0800, Yiyi Hu wrote: : #!/usr/bin/env pugs : : my $a = q:t /END/ : test : END; : : $a.perl.say; : : Above example works ok in pugs, But the problem is. : From S02 : : Heredocs are no longer written with , but with an adverb on any : other quote construct: : :print qq:to/END/; :Give $amount to the man behind curtain number $curtain. :END : : Which is correct? Both of them are. See the table further down that says: Short LongMeaning = === ... :t :to Interpret result as heredoc terminator ... Larry
Re: Heredoc issue in pugs.
: my $a = q:t /END/ : test : END; :print qq:to/END/; :Give $amount to the man behind curtain number $curtain. :END : Which is correct? Both of them are. See the table further down that says: What about the semicolon? After the terminator, or after the opening line? -- Your inertially corrupt space-time disagrees with me. -- Will McCarthy http://surreal.istic.org/ It sounded right in my head. pgpkmeZZf5Xa7.pgp Description: PGP signature
Re: Heredoc issue in pugs.
On Tue, Aug 22, 2006 at 08:12:09PM +0100, Daniel Hulme wrote: : : my $a = q:t /END/ : : test : : END; : : :print qq:to/END/; : :Give $amount to the man behind curtain number $curtain. : :END : : : Which is correct? : : Both of them are. See the table further down that says: : : What about the semicolon? After the terminator, or after the opening : line? Ah, missed that, thanks. On the opening line is correct, just as in Perl 5. The heredoc is just a term with some indirection, and the indirection is completely line oriented. The terminator must still be on a line by itself, with nothing but whitespace. We could just as easily have a POD indirection that said print qq:from/FOO/; and it would go looking for the nearest =begin FOO block to insert. So syntactically, it's only sort of happenstance that with heredocs the document happens to be here. The inline-ness of it is secondary to the line-orientedness of it, in my mind. And it is often not, in fact, truly inline, as demonstrated by print qq:to/FOO/, qq:to/BAR/; ... FOO ... BAR It's really just a way to abstract a large string containing newlines into a single token that doesn't. Larry
Re: Heredoc issue in pugs.
On Tue, Aug 22, 2006 at 08:32:52PM +, Luke Palmer wrote: : On 8/22/06, Larry Wall [EMAIL PROTECTED] wrote: : print qq:from/FOO/; : : On a somewhat related, somewhat unrelated note, I am a little bit : worried about the false duality of :to and :from. Well, that's kinda why theres's no :from actually. It was probably not beneficial to bring in a counterfactual example. Pod docs would actually come in through %=PODFOO or some such. Heredocs are a little more special because they have to interpolate from the local lexical pad, so in that sense they really are a bit more in-line-ish. Larry
Re: Heredoc issue in pugs.
On Wed, Aug 23, 2006 at 02:16:11AM +0800, Yiyi Hu wrote: #!/usr/bin/env pugs my $a = q:t /END/ test END; $a.perl.say; Above example works ok in pugs, But the problem is. From S02 Heredocs are no longer written with , but with an adverb on any other quote construct: print qq:to/END/; Give $amount to the man behind curtain number $curtain. END Which is correct? If I remember correctly, Larry and Audrey discussed this at the Chicago hackathon and updated the Synopsis at that time. So my guess is that the Synopsis is correct. -kolibrie
[svn:parrot-pdd] r14308 - in trunk: . cage docs docs/art docs/dev docs/imcc docs/pdds docs/pdds/clip docs/stm languages languages/tcl/docs lib/Pod/Simple t/distro
Author: ambs Date: Tue Aug 22 10:14:31 2006 New Revision: 14308 Modified: trunk/docs/pdds/clip/pdd06_pasm.pod trunk/docs/pdds/clip/pdd09_gc.pod trunk/docs/pdds/clip/pdd10_embedding.pod trunk/docs/pdds/clip/pdd11_extending.pod trunk/docs/pdds/pdd21_namespaces.pod Changes in other areas also in this revision: Modified: trunk/README.win32.pod trunk/cage/todo.pod trunk/docs/BROKEN.pod trunk/docs/art/pp002-pmc.pod trunk/docs/compiler_faq.pod trunk/docs/configuration.pod trunk/docs/debug.pod trunk/docs/dev/optimizer.pod trunk/docs/embed.pod trunk/docs/faq.pod trunk/docs/imcc/syntax.pod trunk/docs/intro.pod trunk/docs/optable.pod trunk/docs/stm/atomic.pod trunk/docs/stm/stm_frontend.pod trunk/docs/stm/thread-issues.pod trunk/docs/strings.pod trunk/docs/tests.pod trunk/docs/vtables.pod trunk/languages/LANGUAGES.STATUS.pod trunk/languages/tcl/docs/howto.pod trunk/lib/Pod/Simple/Subclassing.pod trunk/t/distro/linelength.t Log: While discussion continues on p2, pod files should be at most 80 columns, special on verbatim sections, so we the man formatter show it properly. Modified: trunk/docs/pdds/clip/pdd06_pasm.pod == --- trunk/docs/pdds/clip/pdd06_pasm.pod (original) +++ trunk/docs/pdds/clip/pdd06_pasm.pod Tue Aug 22 10:14:31 2006 @@ -58,12 +58,14 @@ in a label a dollar sign can appear) are private to the subroutine they appear in. -Namespaces are noted with the C.namespace directive. It takes a single parameter, -the name of the namespace, in the form of a multi-dimensional key. - -Subroutine names are noted with the C.sub directive. It takes a single parameter, -the name of the subroutine, which is added to the namespace's symbol table. Sub -names may be any valid Unicode alphanumeric character and the underscore. +Namespaces are noted with the C.namespace directive. It takes a +single parameter, the name of the namespace, in the form of a +multi-dimensional key. + +Subroutine names are noted with the C.sub directive. It takes a +single parameter, the name of the subroutine, which is added to the +namespace's symbol table. Sub names may be any valid Unicode +alphanumeric character and the underscore. Constants don't need to be named and put in a separate section of the assembly source. The assembler will take care of putting them in the appropriate part of @@ -1010,7 +1012,10 @@ So the signature for, for example, this SDL routine: - int SDL_BlitSurface(SDL_Surface *src, SDL_Rect *srcrect, SDL_Surface *dst, SDL_Rect *dstrect); + int SDL_BlitSurface(SDL_Surface *src, + SDL_Rect*srcrect, + SDL_Surface *dst, + SDL_Rect*dstrect); would be Ci, since it returns an integer and takes four pointers. Presumably previous calls would have set those pointers up properly. Modified: trunk/docs/pdds/clip/pdd09_gc.pod == --- trunk/docs/pdds/clip/pdd09_gc.pod (original) +++ trunk/docs/pdds/clip/pdd09_gc.pod Tue Aug 22 10:14:31 2006 @@ -227,7 +227,8 @@ This macro is invoked when in aggregate Cagg the element Cold is getting overritten by Cnew. Both Cold and Cnew may be NULL. -=item CDOD_WRITE_BARRIER_KEY(Interp*, PMC *agg, PMC *old, PObj *old_key, PMC *new, PObj *new_key) +=item CDOD_WRITE_BARRIER_KEY(Interp*, PMC *agg, PMC *old, PObj +*old_key, PMC *new, PObj *new_key) Like above. Invoked when a hash key is inserted, possibly replacing an old key. Modified: trunk/docs/pdds/clip/pdd10_embedding.pod == --- trunk/docs/pdds/clip/pdd10_embedding.pod(original) +++ trunk/docs/pdds/clip/pdd10_embedding.podTue Aug 22 10:14:31 2006 @@ -7,7 +7,8 @@ =head1 ABSTRACT -What we believe people will do when embedding and extending Parrot, why they do it, and how. +What we believe people will do when embedding and extending Parrot, why they +do it, and how. {{ NOTE: some of this will later move into pdds 11 12, but for now just want to get the stub checked in. }} @@ -19,45 +20,103 @@ =head1 DESCRIPTION Why embed: - - access to special features/libraries/languages Parrot provides - - need an interpreter for a DSL or existing language - - want to run Parrot on another platform or environment (dedicated - hardware, in a web server, et cetera) + +=over 4 + +=item - access to special features/libraries/languages Parrot provides + +=item - need an interpreter for a DSL or existing language + +=item - want to run Parrot on another platform or environment (dedicated +hardware, in a web server, et cetera) + +=back Why extend: - - need something NCI doesn't provide - - writing a custom PMC + +=over 4 + +=item - need something NCI doesn't provide + +=item - writing a
[perl #40217] Parrot_autoload_class() knows about Python and Tcl
# New Ticket Created by Chip Salzenberg # Please include the string: [perl #40217] # in the subject line of all future correspondence about this issue. # URL: http://rt.perl.org/rt3/Ticket/Display.html?id=40217 Hard-coded language names in Parrot are ... well ... bad. Very bad. -- Chip Salzenberg [EMAIL PROTECTED]
LLVM and HLVM
Has anyone looked at LLVM lately? http://llvm.org/ It seems to be making a lot of progress lately with the support of Apple (which is using LLVM for its own purposes in Mac OS X). Is there anything there Parrot can steal? Would it make sense for Parrot to target LLVM bytecode and let LLVM do further optimization and native code generation? There's also the predictably named HLVM: http://hlvm.org/ which looks vaguely Parrot-ish. Check out the comparison chart: http://hlvm.org/docs/FAQ.html Anyway, I'm just thinking out loud, here. Sorry if it's all old news to the Parrot dev gurus. -John
[perl #40218] [BUG] - get_*_global opcodes throw exceptions
# New Ticket Created by Matt Diephouse # Please include the string: [perl #40218] # in the subject line of all future correspondence about this issue. # URL: http://rt.perl.org/rt3/Ticket/Display.html?id=40218 So sayeth the docs for the get_*_hll global opcodes: If the global doesn't exist, $1 is set to null. However, the current implementation throws an exception if the global doesn't exist instead of returning null. It was decided in #parrotsketch on 15 Aug 2006 that returning null is the right thing to do. This is a fairly substantial change, requiring changes to tests and compilers. -- Matt Diephouse
[perl #40219] [TODO] - Steal Perl5's sprintf tests
# New Ticket Created by Matt Diephouse # Please include the string: [perl #40219] # in the subject line of all future correspondence about this issue. # URL: http://rt.perl.org/rt3/Ticket/Display.html?id=40219 Parrot's sprintf implementation is currently quite buggy, as evidenced by failing Tcl tests for the [format] command. Parrot should take Perl 5's sprintf tests rather than writing up new ones. -- Matt Diephouse
Re: [svn:parrot-pdd] r14308 - in trunk: . cage docs docs/art docs/dev docs/imcc docs/pdds docs/pdds/clip docs/stm languages languages/tcl/docs lib/Pod/Simple t/distro
I hope you didn't do that by hand. I wrote a utility last Dec. specifically for formatting Parrot's Pod. http://search.cpan.org/~jhoblitt/Pod-Tidy-0.09/ -J -- pgp5clC56Bbat.pgp Description: PGP signature
GUI toolkits (RE: a practical question)
From: Richard Nabil Hainsworth [mailto:[EMAIL PROTECTED] But I want to start doing real things. Which for me requires gui toolkits. [...] So how to write an application in perl6 that uses (for the sake of illustration) WxWidgets? For simplicity, just a small window with Hello World, a button cool that adds text to the window, and a button Be gone! to kill the window. Can, in fact, pugs do the following? [...] Presumably, we write a perl6 program that has some perl5 in it that instantiates the objects using WxPerl. Then we switch to perl6 scripting. [...] Some examples would help me understand how to get perl6 working to do the things I want to do with it. I'm interested in the same thing. In addition, I'm also even more interested in getting the same sorts of questions answered for using Mozilla (Firefox) GUI technology stuff such as XPCOM, XUL, and so on. Best regards, Conrad Schneiker http://perl.net.au/wiki/Perl_6_Users_FAQ (Moved from AthenaLab to Perl 6 Wiki.) www.AthenaLab.com (Nano-electron-beam and micro-neutron-beam technology.)
Latest $1,000 Wiki for Perl 6 proposal/offer.
Hopefully someone at The Perl Foundation (perl.org) will read and respond to this. (Other comments and suggestions are certainly welcome, however.) Could I just pay someone at TPF $1,000 to set up a wiki *for* Perl 6 on perl.org? Whatever wiki TPF chooses is fine with me. I would also like this wiki to serve the interests of Perl 5.8/5.9/5.10, Parrot-related projects, and so on. These things should all help Perl 6 in the long run. If you want more $ for overhead costs, I'd be happy to do some evangelical fundraising. Best regards, Conrad Schneiker http://perl.net.au/wiki/Perl_6_Users_FAQ http://perl.net.au/wiki/Perl_6_Users_FAQ (Moved from AthenaLab to Perl 6 Wiki.) file:///C:\Documents%20and%20Settings\Admin2\Application%20Data\Microsoft\S ignatures\www.AthenaLab.com www.AthenaLab.com (Nano-electron-beam and micro-neutron-beam technology.)
Re: Latest $1,000 Wiki for Perl 6 proposal/offer.
On Aug 23, 2006, at 12:21 AM, Conrad Schneiker wrote: Could I just pay someone at TPF $1,000 to set up a wiki *for* Perl 6 on perl.org? Whatever wiki TPF chooses is fine with me. I'm working on a wiki right now. I work for Socialtext, an enterprise wiki company, and I'm working on getting a wiki up for Perl docs. xoa -- Andy Lester = [EMAIL PROTECTED] = www.petdance.com = AIM:petdance
Re: Integrating the Pugs test suite into the Synopses
On 8/22/06, Christopher D. Malon [EMAIL PROTECTED] wrote: On Aug 22, 2006, at 9:55 AM, Agent Zhang wrote: Well, in short, we have divided the .t files in the Pugs test suite into pieces and inserted every resulting snippet after the corresponding paragraph of the Synopses. This is really, really cool. Thanks! Glad you like it. :) Often people read the synopses and wonder, Is feature X from the spec working in Pugs today? I think it would be cool to integrate the smoke reports with your inlined tests in the synopses. When a test section is displayed, lines from the test that pass could be colored green, and those that fail or are todo could be red. The show snippet link might itself be colored, too. Yes, the good old util/catalog_tests.pl does color the tests with green and red, and Gaal has also asked me if I'm planning to implement that feature in util/smartlinks.pl. I'd say of course, b0ut I intend to make this feature optional, since just as you have said, smoke results are implementation specific while tests and docs are not. Of course, this idea doesn't quite make sense, because test status depends on which runtime is used (and sometimes which O/S is used). Maybe we could produce one version of the synopsis for each runtime/OS combination listed in smoke.pugscode.org, and update it as new smoke reports come in. (Even this approach needs more thought: do we mix results from different smoke reports if a new report comes in that skips a lot of tests?) Yeah, that will be even cooler. Thank you for this wonderful suggestion. However, I'm afraid it is not of very high priority for me given the current status of the smartlinks. Among other things, I'll focus on polishing the Pugs test suite as well as the smartlinks used in it so as to get every group fo tests and every Synopsis paragraph linked. Of course, if you have the tuits to try that, I'll be delighted. Do you think this is worth trying, or would you rather keep the smokes separate? This is definitely worth trying. :=) Regards, Agent