This week on the Perl 6 mailing lists
This week saw the introduction of the Perl 6 Microgrants. Read more about them in 'Perl 6 Microgrants. Now accepting proposals.'
Language
Thom Boyer responded to Damian Conway's post from November which thanked people for offering feedback on the first draft. Thom said that he had been unable to find the XHTML version of S26 and wondered if it was available.
Jerry Gay replied that there wasn't a pod parser available yet. Damian responded with the requested file, and said he still hoped to finish the Pod6 parser but he wasn't sure when he would have time.
Ævar Arnfjörð Bjarmason asked if Damian could post the code he currently has, so that others could work on it.
Jonathan Lang proposed a module which would let you set a cycle for enumerations. For instance, a 'seasons' enumeration might be defined as 'spring, summer, autumn, winter' and incrementing summer would result in winter. Andy Armstrong described enumeration as a simple state machine.
Will Coleda announced the release of Parrot 0.4.10 and highlighted some of the improvements made with this version. This release is named "The Release Formerly Known as "Prince"."
Parrot Porters
[perl #41870] [TODO] create config file processing library for use in pir
In ticket [perl #41870], Jerry Gay requested a configuration file processing library to use in PIR code. Will Coleda did this.
[perl #41871] [BUG]: t/pmc/metaclass.t fails on Darwin
In ticket [perl #41871], James Keenan reported a failure he'd encountered
with make test
. Later he reported that he had heard that this test was
supposed to fail, and suggested making it a TODO. chromatic said that
expected failures need to be marked as TODO, because volunteer time is
being wasted. Jonathan Worthington agreed.
[perl #41878] [TODO] create exporter pmc
Jerry Gay noted in ticket [perl #41878] that Allison Randal had
replaced the .IMPORT
macro with the export_to
namespace which
was defined in PDD21. However, the code was lacking safety checks
and he suggested creating an Exporter PMC.
Allison elaborated by suggesting an interface. Patrick R. Michaud added his comments. A discussion on importing followed, with Will Coleda also contributing.
[perl #41881] [CAGE] Redo CONTEXT(interp->ctx)->foo
Paul Cochrane created ticket [perl #41881] from the cage/todo.pod
.
Jonathan Worthington was not sure that eliminating the macro there
would be the correct thing to do.
[perl #41886] [CAGE] Use lcov to show code coverage
In ticket [perl #41886], Paul Cochrane noted that the Icov
tool can be used to produce HTML output of code coverage information.
He thought a make cover
target could be added to the Makefile.
Paul Johnson mentioned the option of using Devel::Cover to generate
the reports. Paul Cochrane also noted that there was a script in
tools/dev/parrot_coverage.pl
.
[perl #38988] [PDD] review pdd07_codingstd.pod
Will Coleda reopened ticket [perl #38988] because PDD07 contained a marker indicating that Chip had edited part of it, and everything below needed review.
[perl #41505] [CAGE] Cleanup and reorganize documentation related to svn properties
Will Coleda created ticket [perl #41505] to suggest that documentation of all svn properties needs to be cleaned up and reorganized. Paul Cochrane attempted to do this with r17591.
Steven Pritchard remarked that he had been working on getting a package built for Fedora, and shared his current package. Allison Randal asked if he had kept track of the things which caused problems, so that the packaging process could be improved.
chromatic speculated that installation paths which are not present or are incorrect is a common problem. Allison agreed, and wondered if some tests could be created to check for installation paths. Mike Mattle explained some of the difficulties in doing this. Joshua Isom thought that it would not too difficult.
Steven made a list of his three major problems: hardcoded 'lib',
LD_LIBRARY_PATH
had to be set to blib/lib
in the top directory,
and the languages/
files aren't automatically installed.
Re: [perl #39823] [CAGE] tools/dev/run_indent.pl -- this should be a test
Jerry Gay felt that there should be a coding standards test to ensure that C source files have the correct indentation. Some time ago he created ticket [perl #39823] on this subject.
Recently, Paul Cochrane asked if t/codingstd/c_indent.t
met the
requirement. Jerry replied that there were still some further checks
which should be implemented as tests.
[perl #41884] [PATCH] gcc/mingw32-make compilation failure under MSWin32
In ticket [perl #41884], Alexandr Ciornii submitted a patch to fix a compilation error on Win32.
[perl #41885] [BUG] All the dynoplibs/dynpmcs fail on freebsd
Joshua Isom created ticket [perl #41885] to report failures for dynpmc and dynoplib tests on FreeBSD 6.0. Paul Cochrane noted that it also happens on FreeBSD 6.1.
[perl #41168] graceful "no compiler" error message?
Earlier,
in ticket [perl #41168], Will Coleda added a request for a 'no
compiler found' error message in configure.pl
.
A patch was supplied by chromatic, and applied by Paul Cochrane in r17614. Paul asked for someone to check if it also worked on Windows, because he had only been able to test it on Linux. Jerry Gay confirmed that it worked.
Mike Mattie created ticket [perl #41889]. He thought he had seen
some duplication in src/library.c
and so he attached a patch which
corrected it. He wasn't able to test it on Win32, however.
Jonathan Worthington noted that some of the code Mike thought was broken worked. He also planned to apply the patch. Eventually this was done as r17626.
Nicholas Clark had some comments on the algorithm involved, and some questions about 2-letter drive names. There was some further discussion on the temporary solution and the proposed final resolution of the issue. Joshua Juran was also involved in the discussion.
Later, Mike posted another patch to src/library.c
, meant to be
applied after the previous patch. This was ticket [perl #41900].
It was applied as r17628.
After this, Mike supplied a third and a fourth patch in [perl #41902] and [perl #41903]. These were later replaced with [perl #41905]. Ticket [perl #41906] was also part of this series. Jerry Gay was able to confirm that it works on Win32 and it was applied as r17630.
Finally, ticket [perl #41918] addressed some spelling errors noted by Jerry Gay. It was applied as r17680.
[perl #38764] Test results of parrot on Freebsd
Paul Cochrane submitted the output of make test
on FreeBSD 6.1.
chromatic had also seen a failure with t/stm/llqueue.t
but considered
the other errors unexpected. He asked if Paul had GDBM installed.
Paul answered in the affirmative. This was covered in ticket
[perl #38764].
parrot-0.4.9 ebuild for the gentoo distribution (WIP)
Mike Mattie has been working on a Gentoo ebuild for the 0.4.9 release. He noted that some paths are mistakenly installed by Parrot and that rpm had the same problem. He included a copy of the build.
the value of maintaining a working install target to the parrot project
Mike Mattie described himself as a programmer interested in the Parrot virtual machine. He found that one of his biggest obstacles to working with Parrot is that it doesn't have a working install target. He explained his reasoning and needs in depth.
Allison Randal replied that it was well-known that the install process needs improvement, and patches and suggestions are welcome. She addressed many of Mike's points, and welcomed proposals which may come from the careful analysis Mike offered.
[perl #41892] t/stm/llqueue segment violation on test #2
In ticket [perl #41892], Erik Johansen reported an error on SuSe Linux 10.2.
Mike Mattie reported some files installed by 'reallyinstall' which don't belong in the install image. He reported this in ticket [perl #41893].
[perl #41894] segfault happens when invoking poll op
Jim McKim created ticket [perl #41894] to report a segmentation fault.
[perl #41895] [TODO] Use Getopt for argument parsing in perlcritic.t
Paul Cochrane wanted to improve t/codingstd/perlcritic.t
by using
Getopt::Long instead of a non-standard argument parser. He stated this
in ticket [perl #41895].
[perl #41896] [BUG] p5rx tests consuming infinite resources on win32
In ticket [perl #41896], Jerry Gay reported that in r17619 he
cannot run make test
due to failures in the p5rx tests. He
suspected a string GC problem. chromatic thought this might
explain the STM test failure as well. Jerry replied that STM
tests are disabled on Windows so he cannot see if the problem
is related. He committed a fix in r17649.
[perl #41897] [BUG]: Parrot::Pmc2c::STMRef gets 'subroutine prederef redefined' warning
James Keenan found that Devel::Cover sometimes reveals issues which
don't appear with prove
or make test
. He reported a warning
which he saw with Devel::Cover in ticket [perl #41897].
[perl #41898] Build error with icc
In ticket [perl #41898], Paul Cochrane reported a build error when trying to use icc.
Mike Mattie launched ticket [perl #41908] to offer a patch to
enhance Parrot_locate_runtime_str
. It introduced two new
static functions. Mike went into some detail on his reasons behind
the patch. It was applied as r17632.
There was some discussion of it in '[perl #41908] merging extension guessing feature for library.c'.
[RFC] solutions for maintaining the install target, will affect developers work-flow
Mike Mattie described some of the patches he has been writing (see [perl #41908] [PATCH] 5 feature enhancement of src/library.c (extension guessing), and solutions for the install target problems and [perl #41889] [PATCH] hoist cut and paste duplication into a function in src/library.c, also possible win32 bug found ? ). He asked for feedback before he moves further with the proposals he outlined in ticket [perl #41908].
Re: [PATCH] Quiet a few alignment warnings
Earlier,
In ticket [perl #37178], Will Coleda applied a patch which quieted
some alignment warnings. Andy Dougherty had created it some time ago.
He hoped someone else would take up the task of trying to document
and check Parrot's alignment assumptions.
Later, the patch had to be removed because it had introduced some
problems. One problem was that it incorrectly assumed that all
compilers accept a -h
, --help
or /?
switch. He and chromatic
tried to find a solution but were not successful; chromatic promised
to work on a better patch.
More recently, Andy Dougherty figured out part of the problem. Nicholas Clark and chromatic also discussed the issue further.
[perl #38969] [CAGE] parrot source does not conform to standards
In ticket [perl #38969], Paul Cochrane suggested removing
tools/dev/check_source_standards.pl
because the tests which were
previously in the file had been moved to t/codingstd
. Jerry
Gay directed Paul to [perl #39824].
Jerry Gay created ticket [perl #41912]. He proposed that scripts
and utilities in tools/
be checked to see if they are still in use.
James Keenan took a stab at this.
[perl #41915] [TODO] remove unused manifest-generating scripts
Jerry Gay named some broken and possibly unused scripts in tools/dev
,
many related to manifest generation. He wondered if one script
could replace them. Paul Cochrane linked this ticket ([perl #41915])
to another ticket, [perl #40911].
Re: [perl #41201] [TODO] Remove temporary conf hack in Configure.pl
Earlier,
In ticket [perl #41201], Paul Cochrane noted that there is a temporary
hack in Configure.pl
which should be implemented properly.
Recently, James Keenan submitted a patch which attempts to address this.
[perl #41926] [PATCH] partial update of NEWS for 0.4.10
Jerry Gay submitted a partial update for NEWS
for update 0.4.10 and
asked someone to finish it. This was ticket [perl #41926].
[perl #41927] [PATCH] getting gen_manifest_skip() to return correct results quickly
Paul Cochrane submitted a patch in ticket [perl #41927] which
he attributed to Jerry Gay, Will Coleda and himself. It makes
gen_manifest_skip
return a list of the ignore files.
Matt Diephouse created a list of tickets that he wanted to see resolved for release 0.4.11. As it just so happens, 0.4.11 was released the day this summary was completed, so this message is not worth summarizing.
[perl #41955] [PATCH] Yet Another PIR -- in C
Klaas-Jan Stol submitted a patch of an implementation of PIR in C in ticket [perl #41955]. His goal was to clean up PIR and to see if a rewrite would reduce the size.
Joshua Isom wondered what Klaas-Jan considered 'hackish' and how much more work he thought it would take to get the bytecode working. Klaas-Jan replied that he referred to the 'TODO', 'FIXME' and other comment scattered throughout the code and that he couldn't make an estimate on the bytecode although it probably wasn't trivial.
Allison Randal said that she was happy to see it in compilers/pir
as
an experiment in progress.
[perl #41956] [TODO] Rename PMETHOD and PMINVOKE
Jonathan Worthington reported in ticket [perl #41956] that
it had been decided (in a discussion with Allison Randal) to rename
PMETHOD
and PMINVOKE
to PCCMETHOD
and PCCINVOKE
. Kevin Tew
wondered if PRETURN
should become PCCRETURN
.
Jonathan Worthington said he'd already created a ticket for that,
[perl #42001].
Klaas-Jan Stol reported this test failure, as well as some in
languages/Pynie
.
[PATCH] void functions can't return values.
Andy Dougherty submitted a patch because the documentation for
Parrot_set_attrib_by_num
suggests it returns a PMC pointer, but
the source code doesn't actually return anything.
[PATCH] Avoid //-style comments.
Andy Dougherty submitted a patch to remove //
style comments because some
compilers don't understand them. Also, he thought it was a bad idea to
comment out sections of code without explaining why they were commented
out. H.Merijn Brand also expressed his distaste for this type of comment.
Matt Diephouse applied the patch in r17692. He said that there was a test for C++ style comments, but that it doesn't appear to check all generated code.
[PATCH] Hints must come early in Configure.pl
Andy Dougherty explained that hints need to come before inter/progs. He submitted a patch to correct this. James E Keenan reported that Will Coleda made the change Andy advised in r17671, which was basically reverting to r16268 from a change made in r16416. He linked to information about these previous commits.
chromatic wondered if there was some way that the problems James referenced (which were on his system) could be fixed in some other way. James and chromatic tried to resolve the issue. Andy added his two cents.
[PATCH] Suppress optimization on core_ops_cgp.c
Andy Dougherty reported that core_ops_cgp.c
overwhelms his system
and that he couldn't figure out a better way to solve it other than to
turn off optimization. He supplied a patch for it.
[perl #41975] Makefile is missing dependencies on lib/Parrot/Pmc2c/PMETHODs.pm
In ticket [perl #41975], Andy Dougherty reported that he had to fix
lib/Parrot/Pmc2c/PMETHODS.pm
to get Parrot to compile, but that make
didn't generate the required files after his fix.
make test hangs in t/examples/shootout_1.pir
Andy Dougherty reported that t/examples/shootout_1.pir
was hanging
when he tried to make test
. It ran for 15 hours before he killed
it.
Kevin Tew noted that tools/dev/mk_manifest_and_skip.pl
should remove
files from the MANIFEST if they are scheduled for subversion deletion.
This was ticket [perl #42040].
Compiler
Perl 6 Microgrants. Now accepting proposals.
Jesse Vincent announced the Perl 6 Microgrants program. Leon Brocard, representing the Perl Foundation's grants committee, will work with Jesse to select proposals for projects. Grants are for 500 USD. Proposals should be for projects which can be completed in 4-6 calendar weeks.
Tim Bunce suggested that someone could create a tool which could parse that Java files which define the JDBC API and generate Perl 6. He did not want to submit the proposal himself, but hoped someone would take it up. There were a few comments on this suggestion. Phil Crow had some interest in the idea.
cvs-parrot
Paul Cochrane removed some code for MacOS Classic after few people showed interest in targeting this operating system. chromatic rightly noted that the code could be taken from subversion if it was needed at some point in the future.
Acknowledgements
This summary was prepared using Mail::Summary::Tools, available on CPAN.
If you appreciate Perl, consider contributing to the Perl Foundation to help support the development of Perl.
Thank you to everyone who has pointed out mistakes and offered suggestions for improving this series. Comments on this summary can be sent to Ann Barcomb, kudra@domaintje.com.
Distribution
This summary can be found in the following places:
See Also