Front page | perl.perl6.language |
Postings from October 2004
Perl 6 Summary for 2004-10-01 through 2004-10-17
From: Matt Fowles
October 17, 2004 16:04
Perl 6 Summary for 2004-10-01 through 2004-10-17
Message ID: firstname.lastname@example.org
Welcome to my first summary. Since I am relatively new at this game,
I will just steal Piers's approach and start with Perl6 internals.
But before that let me warn you that my ability to make strange
characters with accents is not great, thus please do not be offended
if I don't include them in your name. If you want them to appear in
the future, a quick email about how to make them appear using a US
qwerty keyboard and Mozilla should suffice.
Also, groups.google.com does not seem to have picked up perl6.compiler
yet, so iw ould be s
With that legal disclaimer out of the way onward to
= Configure problems and Improvements
Leo noticed that Configure doesn't rebuild things correctly. Takers
welcome. Nicholas Clark added a --prefix option for the make install
= Non-core module dependency
Joshua Gatcomb accidentally introduced a dependency on
Config::IniFiles. Since it is implemented in pure perl he offered to
add it to the repository. Warnock applies.
= OpenBSD troubles
Jens Rieks found and fixeda coredump on OpenBSD. Thanks, Jens.
= Threads on Cygwin
Joshua Gatcomb discovered some trouble with threads on Cygwin. It
seems that there are problems with both the thread implementation, and
the tests not be generous enough if accepting out of order input.
Still unresolved, I think.
= Parrot IO is not quite threadsafe
Nicholas Clark discovered a double free in the IO system. While his
problem was solved by Jens, the underlying problem still remains.
= make install portability issues
Nicholas Clark asked why the install taget was not portable. Steve
Fink responded that it was a quick hack at the time and made it
The namespace thread continues to churn. It is slowly making
progress, but I beleive there is a fair amount of people talking past
eachother going on. Perhaps Dan could step in and provide one final
state of the namespaces?
= Parrot Abstract Syntax Tree aka PAST
Sam Ruby decided to pick up the Python on Parrot ball. To that end he
enquired as to what PAST is. Leo provided answers and help. Will
asked for more help. Leo once again provided.
= JIT for non-branching compare opcodes.
Stephane Peiry provided a patch to JIT some more opcodes. Leo
applied. Stephane then provided a patch with tests. Jens applied
= Comparing Pythons
Sam Ruby posted a link comparing various pythons and there conformance
to a test suite.
Sam Ruby: Comparing Pythons
Dan admitted confusion as to what exactly metaclasses are/do. Papers
and explanations were provided by Aaron Sherman, Michael Walter, and
= Plain Old Hash
William Coleda wondered if Parrot had a basic hash implementation (not
a PerlHas). Dan said "D'oh!" and asked for takers. Will Coleda added
= Parakeet 0.3
Michael Pelletier's language Parakeet has hit 0.3 and been added to
CVS. Everybody should play with it.
= make install thoughts
Leo conjectured about creating a parrot_config.c which would encode
all of parrot's configuration. Then parrot would know its own config.
Jens suggested letting miniparrot generate it; Leo agreed.
= more piethon
Dan's register spilling problems give him free time. He used it to
work on piethon a little.
= Priviledge implementation
Felix Gallo posted some questions/thoughts with respect to
priveledges. While Leo addressed Felix's question about the location
of source files (and provided a nice plug for vim). The others all
= make in languages/TCL
Matthew Zimmerman supplied a patch to fix TCL's make. William Coleda
modified and applied it.
= MANIFEST fixup.
Andy Dougherty provided a patch to remove some old files from the
manifest. Steve Fink applied it.
= Parrot 0.1.1 "Poicephalus"
There was a little talk about names. Then a little talk about getting
it posted to perl.org. In the end the 0.1.1 release did happen and
even made it to /. Thank you to everyone who contributed.
= Data::Dumper TODO
Will Coleda added a TODO for Data::Dumper. Apparently it cannot dump
FixedPMCArrays. Will conjectures that there are probably other new
PMCs it cannot handle either. Patches welcome.
= Emacs, XEmacs, and pir-mode
Jerome Quelin kicked off a thread that resulted in emacs getting
better pir-mode support. Thanks to all involved, but I will continue
to use vim ;-)
= A %= B
Dan noticed that we did not have support for "%=" in PIR. There was
some confusion as several people rushed to the rescue. In the end,
the problem was fixed. Thanks all.
= Pushing and Popping Arrays
Will Coleda wondered why he could not push onto a FixedArray. The
answer was quickly provided that Fixed means that its size cannot be
modified, not that it is bounded. This answer seemed reasonable
enough to him. He then went on to ask why he could not pop a
ResizableArray. The answer is of course, because it is not
implemented yet, patches welcome.
= imcc reserved words
Sam Ruby wondered how to create a sub name "num" in imcc. The answer,
no, and a workaround was provided by Jens.
= Quiet vs Loud build system.
Andy Dougherty provided a patch to improve the build system. Steve
Fink applied it. Leo disliked it. Consensus seems to be not to use
= Cygwin bugs
Joshua Gatacomb has been fighting with Cygwin getting Parrot to work.
Apparently we trip a few of its bugs. Read more if you like.
= Python concerns
Jeff Clites raised some concerns about dealing with Python's bound and
unbound methods. There was some discussion about it. In the end, it
just means a little more work.
= Makefile cleanup
Will submitted a patch cleaning up the makefile. There was some back
and forth about what parts of the patch should be kept.
= Win32 issues
Ron Blaschke provided a few patches for Win32 which Jens and Leo applied.
= dynamically loadable modules
Steve Fink spent some time chugging away at dynclass and dynamically
loaded modules. There was some discussion of proper variable names
and some working out of problems. Friendly reminder, when in doubt
"make clean; perl Configure.pl; make"
= ICU without --prefix problems
Steve Fink was apparently having troubles with ICU and locating
necessary data files. Leo confirmed that it is a problem.
Jens has apparently had success working with MinGW. Yay!
= ICU issues
Will had some ICU issues. Various suggestions and solutions were
attempted. Any success?
= locals inside macros
Will wants .locals inside .macros. Apparently it can only be done if
your macro only takes PMCs.
= t/pmc/signal.t improvements
Jeff Clites provided a patch with improvements to t/pmc/signal.t.
= coroutines and --python
Michal@withoutane.com (whose last name I cannot find) wondered about
the --python flag. The answers and discussion that followed indicate
that it was a quick and dirty hack. Eventually it will be gone and
Python will have PMCs of its own (relatively quickly if Sam Ruby has
anything to say about it).
= small patches
Sam Ruby fixed a small problem in PerlInt. Jeff Clites fixed a bug
and cleaned some warnings in darwin/dl.c. He also fixed some tests
and added a Parrot_memalign function for OSX. Stephane Payrand
provided a patch to allow multiple identifiers on one line in pir.
Stephane also added a get_representation op. Bernhard Schmalhofer
added support for syncrhonous callbacks. Ion Alexandru Morega added
more functionality to complex PMC. Leo applied the patches.
= Link failure on amd64
Adam Thomason pointed out that amd64 lost a vital link flag somewhere
in the shuffle.
= non-vtable methods on buildin pmcs
Sam Ruby wondered about allowing pmcs to implement additional
non-vtable methods. Leo thought it would be good. Sam provided a
patch, chromatic tweaked it, and Leo applied it.
Jens wondered what happened to tinderbox.perl.org. Apparently it died
a while back and has not yet been resurected. Robert Spier also noted
that it was a little difficult to deal with and was interested in
creating a new one. He is also looking for help in this endevor.
= register stacks [again]
Leo has once again pushed forward his idea for register stacks and
= ncurses troubles
Andy Dougherty had some ncurses trouble. In particular, one of the
error messages was exceptionally unhelpful. Now it is a little more
= coding standards
Leo would like to draw everyones attention to
docs/pdds/pdd07_codingstd.pod, and the fact that it should be applied
to perl code where appropriate. Thank you.
= rx_compile and FSAs
Aaron Sherman has some ambitious stuff in the works with respect to
regular expressions. Stay tuned for details.
= Single character from stdin
Matt Diephouse wants to know how to get a single character from STDIN.
The answer seems to be no, but this has triggered Dan to go back to
the IO/Event doc. Best of luck Dan.
= parrotcode.org samples
Paul Seamons noticed that some of the samples on parrotcode.org are
really out of date. Will Coleda agreed and suggested that they should
all be updated to pir too. Takers welcome.
= New comers
Pratik Roy wondered if he could join into the work on Parrot or if he
would remain an outsider looking in. Many people rushed to suggest
ways in which he could help. So, please don't feel afraid to
contribute. At worst a patch of yours will be turned away with an
explanation as to why. At best, you will start being referred to by
first name only in the summaries.
= Python and Perl interop
Sam Ruby wondered about how Python and Perl woud interoperate. Leo,
Steve Fink, and Thomas Sandlass has ideas and suggestions. I think
the answer will be magically.
Ovid pointed the world at Inline::Parrot. It looks cool.
= Problems with 0.1.1 on x86-64
Brian Wheeler had a problem with Parrot on x86-64. He provided a
patch, but Leo couldn't apply it and asked for a resend. Silence
= Bug in factorial?
James Ghofulpo wondered if the Parrot examples page's factorial
program was supposed to truncate output. Warnock applies.
= Configure.pl autodetection
Sridhar discovered that Configure.pl would fail if he told it to
"--cxx=/usr/bin/g++-3.3"; Jens pointed out that he would also need to
tell it "--link=g++-3.3".
= Parrot Forth 0.1
Matt Diephouse release Parrot Forth 0.1. It has many cool features.
Nice work. Perhaps this should go into languages/?
= .return directives
Stephane Payrard wants to remove the multiple meaning of .return to
provide a cleaner path forward. Everyone agrees.
= YAGCB (Yet Another Garbage Collection Bug)
Will thought he had turned up another GC bug with TCL. This time he
hadn't and it was his fault. Can win them all I guess.
= testing a PMC for truth
Will wondered how to determine a pmc's boolean value. Leo pointed him
= grsecurity problems
Christian Jaeger noticed taht grsecurity was stopping on Parrot's
attempts to execute jitted code. Leo pointed out that we already have
support for doing the right thing, we are just failing to detect that
we need to.
= PMCs and inheritance
Sam Ruby wanted inheritance for PMCs. Apparently what we really need
is a scheme for multiple inheritance of pmcs. Sam Ruby supplied
several patches, parts of them got applied by Leo.
= C++ and typedef struct Parrot_Interp *Parrot_Interp don't play well
Jeff Clites discovered that, on OSX, we get troubles because C++ does
not like typedef struct Parrot_Interp *Parrot_Interp. We need C++ to
link ICU. Fortunately, that particular typedef is out of the ordinary
and violates our normal conventions. So Brent 'Dax' Royal-Gordon
threatened to apply the (fairly large) fix. Will tested Brents patch
and gave it the thumbs up.
= JIT, exec core, threads, and architecture proposal
Leo proposed mandating that all JIT must be done interpreter-relative.
This allowed some happy optimizations including constant table
access. General resonse was favorable.
= pmc2c2.pl --tree option
Bernhard Schmalhofer submitted a patch fixing the aformentionedc
--tree option. No answer yet, but it has not really been long enough
to officially invoke Warnock.
Jacques Mony asked for help/advice porting Parrot to unununium. No
== Perl6 Compiler
google groups still doesn't have Perl6 Compiler, so this section won't
have links. Sorry.
= Compilation Paradigms
Jeff Clites put out a request for some basic P6 examples and resultant
bytecode so that everyone would be on the same page. Warnock applies.
= Interals, rules, REPL
Herbert Snorrason had some basic questions about Perl6's interaction
with Parrot. He also wanted to know about whether he should be
playing the re_tests or if that was wasted effort. Finally he wanted
to know about read-eval-print loops. Sadly Warnock applies across the
== Perl 6 Language
Google groups has nothing for Perl6.language between October 2 and 14.
Is this really the case? (I had not signed up until shortly before
volunteering to summarize.) If there is email that I just can't find,
I would be appreciative if someone could produce a summary or a
pointer to the missing mail for me. Thanks.
= updating multiple rows
Nitin Thakur attempted to de-Warnock himself. Apparently
unsuccessfully. Sorry, Nitin.
== Perl 6 Summaries
Piers raised the white flag after several years as a wonderful
summarizer. Having now just finished my first summary, let me say
thank you for all of your hard work and if you ever want the job back
its yours ;-) I hope you don't mind my stealing your general format
for these things.
== The usual footer
If you find these summaries useful or enjoyable, please consider
contributing to the Perl Foundation to help support the development of
Perl. You might also like to send feedback to email@example.com
http://donate.perl-foundation.org/ -- The Perl Foundation
http://dev.perl.org/perl6/ -- Perl 6 Development site
http://planet.parrotcode.org/ -- Parrot Blog aggregator
Perl 6 Summary for 2004-10-01 through 2004-10-17
by Matt Fowles