To see what is currently happening visit http://www.perl6.org/
All~
Welcome to yet another fortnight summary. Once again brought to you by chocolate chips. This does have the distinction of being the first summary written on a mac. So if I break into random swear words, just bear with me.
In more related news, It has been pointed out to me that development goes on off list on places like IRC. I briefly contemplated, quitting my job and tracking such things full time, but then I decided that it would be better if I just accepted brief submissions for the summary. Thus I will be adding a fourth section to the summaries based on contributions. If you would like to make a contribution, email me with a brief summary. Please include the name by which you would like to be attributed (sadly the process I use is likely to mangle any unicode characters). Please make all links full, I will shorten them. Thanks
It turns out that not() (with no arguments) made perl 5 core dump for a while, and it took us five years to figure that out. In perl 6 it will be a list op and calling it with no arguments will return a null list or an undef depending on context.
groups-beta.google.com#b0456cc980e83394
I had hoped that last week the concerns about threading would have been addressed. I was mistaken. A new crop of concerns surfaced and died down fairly quickly (as the chief proponent, Damien, was away).
groups-beta.google.com#48bdbca40022b21c
Somehow the discussion of junctions morphed into a discussion of sets, which morphed back into junctions, which morphed into a discussion of serialization to different languages. Interesting stuff, but I wouldn't hold me breath for it...
groups-beta.google.com#0ebbcd80853adf38
Adam Preble posted an offer to develop some benchmarks for perl 6. Unfortunately, I think he posted it to google groups. Also, he probably should have posted it to p6c or p6i as the language folk tend to wave their hands and say "magic occurs but correctness is preserved" when it comes to optimization.
groups-beta.google.com#f2f3a2da72c3046c
Autrijus posted an example using junctions, instead of parents, to solve the classic
SEND MORE + ===== MONEY
problem. Markus Laire asked for a clarification, and Rod Adams pointed out that he felt that it would not work as the interdependence of the "e"s was not captured. This does lead to the question of how one should right prolog like code (including unification and backtracking) in Perl 6. No answers were offered.
groups-beta.google.com#732df42c2d9be456
Ingo Blechschmidt wondered what the behavior of pairs as lvalues would be. The answer is that you would get an error for attempting to modify a constant.
groups-beta.google.com#71027b15d05582b0
Roberto Bisotto wanted to know where he could download perl 6 to start playing with it. We embarrassedly told him that a full implementation was not yet available, but pugs was gaining ground quickly.
groups-beta.google.com#fe2cfeb1b88ee1a2
Autrijus wanted to know if hash keys were still just strings or if they could be more. The answer is that by default they would be strings, but they could be declared as having a different shape . This led to a discussion of hashing techniques such as the .bits, .canonicalize, or .hash methods.
groups-beta.google.com#4903cb1bd620edda
Dave Whipp wanted to make "dynamically scoped dynamic scopes". My head hurt, but apparently Larry's didn't as he replied "piece of cake, the syntax [and implementation] are left as an exercise to for the would be module author".
groups-beta.google.com#499d9f24e128dbac
Rod Adams asked how he could specify arguments to rules so they could be more function like. Larry explained that there were several syntaxes each of which would coerce its arguments in slightly different ways. He then mused that perhaps there were too many, I agree there are too many.
groups-beta.google.com#e1f0673c86848f17
Ahbijit Mahabal wondered how type checking would work for cases where it was not easy to determine the types at compile time. The answer: checking will be defered to runtime. In the end it seems that Perl 6 will blur the line between runtime and compile time heavily. Perhaps it will provide nifty support for staged programming, meta-perl6 here we come...
groups-beta.google.com#0066c3b36488fd26
Brian Ingerson asked about the CONFIG hash and what sort of secondary sigil it would have. Larry explained that $?CONFIG held to config for the machine compiling the program and $*CONFIG held the config for the machine running the program. Then he made some noice about parsing, compiling, and running all on different machines. Then he suggested that this way led to drug induced madness...
groups-beta.google.com#56f3ea297b42a06c
Thomas Sandlaß proposed using sigils to provide a structural type system as opposed to its class/signature based one and its constraint based one.
groups-beta.google.com#040055e6a076a77e
Luke Palmer wondered how optional arguments and slurpy ones would interact. Brent and Larry explained that they would snap up whatever arguments they could. But you can always beat them back by piping in your slurpy stuff with == >.
groups-beta.google.com#3beae7ddd32a0cd6
Thomas Sandlaß wants to know how the type system and the class system interrelate. He drew a happy tree of A, B and its junctions. Really it confused me, and I agree with him that I don't understand the value of the one junction in the context of types.
groups-beta.google.com#d1881a598c201c32
Wolverian does not like any of the ways he can indent his long function declaration when traits are involved. He wants to allow a comma in them to solve fix this dilemnia. Larry and others suggested a few alternatives. This led to a discussion of module loading and header/module files. Larry admitted that eh would not mind if Perl6 developed Ada like module files.
groups-beta.google.com#b7a518c68403bf90
Autrijus released Pugs 6.0.9 and 6.0.10 with help from many people.
groups-beta.google.com#926318dc6a8bfba5 -- 6.0.9
groups-beta.google.com#7925028a26e8e036 -- 6.0.10
Luke Palmer added more qq delimiters and fixed a unary - bug. Yuval Kogman posted a fix that made anonymous blocks both parse and run. Stevan Little un-TODOed a bunch of tests that started working; he went on to add some new tests that do not yet pass. I suspect that he is just providing more for him to un-TODO later... Yuval Kogman submitted several patches including array interpolation, a CATCH {} test, a test for an assignment bug, and a fix for a conditional of expected. Garrett Rooney cleaned up given.t, added a test for %hash.kv, one for declaring variables in a loop, and another for $?LINE AND $?FILE.
groups-beta.google.com#cff970abd6a62365 -- qq patch
groups-beta.google.com#d191b263b71fdb88 -- unary minus
groups-beta.google.com#30667665e1970717 -- anon blocks
groups-beta.google.com#a0640651e3e524ba -- un-TODO
groups-beta.google.com#a6c2c99db32d599f -- more tests
groups-beta.google.com#36fed91745b2e290 -- array interpolation
groups-beta.google.com#8f7d4e923f476114 -- CATCH
groups-beta.google.com#8ec50febb0032f65 -- more un-TODO
groups-beta.google.com#5b89ee84bbff0601 -- assignment bug
groups-beta.google.com#adc8edf7725e98ea -- given
groups-beta.google.com#8d5ab10e8280682c -- conditional
groups-beta.google.com#72d1ea55ef640d1d -- more given
groups-beta.google.com#fa72d9e3826e2c07 -- %hash.kv
groups-beta.google.com#398067b4f8988f1f -- loop
groups-beta.google.com#1e37970e1d99368a -- $?FILE
Abhijit Mahabal wondered if p6c was the correct place to post questions about pugs and bugs in pugs. Patrick and Autrijus aggreed that p6c was indeed the correct place for most initial questions and things would be escalated to p6l only when the apocalypses|exegesis|synopses were not clear.
groups-beta.google.com#5d80e1f9dffd78b0
Abhijit Mahabal found and analyzed a bug in pugs argument binding. No solution yet.
groups-beta.google.com#055c8989dba2dfb3
Do to the space eating postfix dot, Larry declared that there would be no numeric postfix operators. A great cry went out as if there had been a huge disturbance in the force or not.
groups-beta.google.com#251aae525ef31ee3
Garrett Rooney was having trouble using the &?SUB variable in pointy subs. That is because they don't use it. &?SUB is only for full fledges subs. That way you can call &?SUB from within a for loop in a sub and get the nice recursive behavior you likely want.
groups-beta.google.com#93ba223afa857539
Autrijus asked Larry for clarification of which circumstances set $_. Larry explained that -> topicalized its first argument but full subs undefed it until something else set it, while methods bind it to their first invocant.
groups-beta.google.com#c19a5c1095d1dbd7
Luke Palmer was having trouble getting for %hash.keys { ... } to parse correctly. Larry replied that it is problematic if methods were to be parsed in the same manner as subs, fortunately the parens are mandatory when their are arguments in addition to invocants.
groups-beta.google.com#aaf8af577ca231b8
Autrijus wanted to verify that
my @x = @a; my @x = @a[]; my @x[] = @a;
were all the same. Larry confirmed it.
groups-beta.google.com#5c0b81012cd1c823
Terrence Brannon notices a very confusing error message from PUGS.
groups-beta.google.com#532ba4fc2b7ba60b
Darren Duncan has offered to get the ball rolling with Perl6 integration testing. He is going to translate a few modules he has written to Perl6 so that they can act as more wholistic tests for Pugs and Perl6. There is an interesting conversation about CPAN and Perl6 involved too.
Stevan Little found a bug involving refs in scalar context.
groups-beta.google.com#caf5e64af3e9c337
William Coleda found a bug in Parrot_get_runtime_prefix. Leo admitted that it was a mistake.
groups-beta.google.com#7a4f18bec9be251a
Leo put up his tiny Z machine for adoption. Steve Peters offered to adopt it.
groups-beta.google.com#1bc07cf6370561c5
Michal Jurosz posted a link to his guide to building parrot with MinGW.
groups-beta.google.com#7620ef482c7fb884 -- post
wiki.kn.vutbr.cz Parrot with MinGW -- link
Leo and Sam posted their thoughts about splitting VTABLEs.
groups-beta.google.com#6694c85f337d21b6
Cory Spencer wants to check for the existence of an attribute, or at the very least catch the exception thrown when an attribute is not found. Leo told him that it was on the list of things to do.
groups-beta.google.com#468a7048d6e6d20f
Vlad Florentino wanted to know if he could call C library routines from Parrot. The answer is NCI. Look at the SDL bindings as an example.
groups-beta.google.com#3ce522b99f512582
Bernhard Schmalhofer asked about adding heredoc support to PIR. This led to Melvin ranting that PIR was not meant to be written by people. PIR was intended to be an intermediate language targeted by compilers and was not supposed to have human niceties like heredoc. Of course, for PIR to reach that state, we need a high level language that actually targets it...
groups-beta.google.com#c8dbea9600f28198
Once more chromatic and Leo worked trying to fix Parrot for PPC Linux. groups-beta.google.com#dce84b845fefd8c5 groups-beta.google.com#f2cf0f9dff751b52
Steve Coleman wants to develop a research project to verify assembly for security purposes. Thus he had some questions about Parrot Assembly. Melvin happily provided some answers.
groups-beta.google.com#11a46c29f113b2ae
Bob Rogers supplied a patch that improved the .tail_call support in imcc. Leo applied it.
groups-beta.google.com#3280f958d81855a9
Leo announced that Dan's string patch has been merged into the current CVS head. Thanks go to Will Coleda for doing all the heavy lifting. String content in assemblers now require a charset prefix.
groups-beta.google.com#006aa1f97a89246e
Edward Peschko wondered where Dan was. Will Coleda provided the answer. He is MIA.
groups-beta.google.com#f35ecbe1eb110be2
Bernhard Schmalhofer found a bug with string encoding in PBC files. Leo fixed it.
groups-beta.google.com#ac6f56d4c1260f28
Leo proudly announced the release of Parrot 0.1.2. Thank you everyone for all your hard work.
groups-beta.google.com#cda0ac964ff089b0
Bernhard Schmalhofer provided a large patch which cleans up some of the test suite. Leo gave him the go ahead to apply it.
groups-beta.google.com#c4828a3fdaf21fa9
Leo posted a plea for a cleanup to dynclasses. No takers yet.
groups-beta.google.com#a0623ecb52992ed5
Olivier Thauvin wants to make a Parrot RPM for Mandrake. Leo and Will gave him pointers on where to start.
groups-beta.google.com#d6fd0922b5567ecc
Matt Diephouse wondered what the status of a patch he sent in was. Still no response. ::nudge::
groups-beta.google.com#df79bca00f4bab84
Will Coleda found an OS X build problem. Leo slapped himself on the forehead and fixed it.
groups-beta.google.com#c1bc9e1b53e14a76
Jarkko Hietaniemi posted a patch fixing a Tru64 build problem. Leo applied it.
groups-beta.google.com#8da4b3d7e23dd9a0
Ron Blaschke supplied a patch fixing gpm linkage. Leo applied it.
groups-beta.google.com#518a9a1cc4b377d4
Ron Blaschke posted a list of failing Win32 tests. He then mentioned that he was going to fix the missing export symbols problem.
groups-beta.google.com#92135acf907f8161
Leo posted a summary of his proposed changes and how they effect MMD and objects.
groups-beta.google.com#50830061f07ca34c
Jarkko Hietaniemi found some random 0xA0 characters in parrot header files. He removed them and Leo applied the patch.
groups-beta.google.com#588dcba2b2ac0743
Adrian Lambeck wondered how he could query Parrot config. Will pointed him to 'library/config.imc'.
groups-beta.google.com#d2e0eb269256fc08
Leo put out a request to get the tinderboxen revived. Steve Peters asked if it would be useful to build it into Perl's current smoke report.
groups-beta.google.com#75f2848b7d755eb3
Leo found and fixed a problem with dynclasses tests on OS X.
groups-beta.google.com#d6dabae0afd70060
Bob Rogers wants to flatten a variable number of return values. Just as he can flatten a variable number of arguments. Leo felt that it was reasonable request.
groups-beta.google.com#dc06de8aef8cef4c
Leo proposed a set of core changes that should take parrot to 0.2 and beyond. Roger Browne and Melvin Smith provided comments.
groups-beta.google.com#738c963e4b33f57d
Uwe Voelker had a problem with ncurses_life. chromatic sent him a patch to try and see if it fixed it.
groups-beta.google.com#e07908135bbc2c48
Posting via the google groups interface does not work. To post to any of these mailing lists please subscribe by sending email to <perl6-internals-subscribe@perl.org>, <perl6-language-subscribe@perl.org>, or <perl6-compiler-subscribe@perl.org>. 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 ubermatt@gmail.com
donate.perl-foundation.org -- The Perl Foundation dev.perl.org -- Perl 6 Development site planet.parrotcode.org -- Parrot Blog aggregator