chromatic is currently certified at Master level.

Name: chromatic
Member since: 2000-03-20 04:52:20
Last Login: 2009-03-09 01:00:30

FOAF RDF Share This

Homepage: http://wgz.org/chromatic/

Notes:

chromatic @ wgz . org

Longtime free software hacker, a lead developer of the Parrot virtual machine, novelist, and small business owner.

I'd like to discuss good software development practices more frequently; we'll see if it happens.

ESR Doesn't Speak for Me.

Projects

Recent blog entries by chromatic

Syndication: RSS 2.0

3 Jul 2009 »

How to Count (Parrot Style)

<summary type="xhtml">

Parrot releases are harder to count because of their prolific release cycle.

Brian Wisti, In Which Brian Whinges About The Perl 5 Release Schedule

This is a trivial nitpick (read the rest of the article! It's very good!), but Parrot releases are very, very easy to count. The same goes for Rakudo releases.

The other day someone asked what Parrot might look like in a hundred years. I laughed and thought, "What would its version number be?" Then I realized that I can predict its version number in 100 years. Parrot 101.6 will be out, with Parrot 101.7 on the way.

For all of the lofty talk about "stability" and "maturity" and "predictability" which results in Perl 5 not getting released, the fact that I can predict the release date and version number of a piece of software one hundred years in the future says something about the stability, maturity, predictability, and reliability of a very different kind of development process.

(Oh, and Alias -- I can crash several so-called stable releases of Perl 5 with a one-liner the same way you crashed Parrot in December 2008 with a short program. If you want to make the argument that the 30 stable monthly releases of Parrot in a row don't actually exist because they had bugs, the two so-called stable releases of Perl 5 from the same time period don't exist either. Ontological debates are easy to lose.)

</summary>

Syndicated 2009-07-03 09:11:54 from pudge

2 Jul 2009 »

Perl 6 Design Minutes for 20 May 2009

<summary type="xhtml">

The Perl 6 design team met by phone on 20 May 2009. Larry, Allison, Patrick, Jerry, and chromatic attended.

Larry:

  • changed the time function to return a Rat
  • thinking about the traits that have been bothering Jonathan and others
  • have some changes to check into the spec when I'm happy with them
  • thinking about the primitives we use to define use
  • breaks down into load and import
  • thinking of establishing compile-time keywords for both concepts
  • intended so that I can import from anything acting like a module -- an inlined role, for example
  • otherwise trying to keep up with the flow of IRC

Allison:

  • working on the Parrot book
  • changed its focus to a small, 100-page PIR book from a monolithic Parrot book
  • the intent is to get something out for YAPC and OSCON
  • will send out a draft for review
  • will merge my changes into the repo later this week

Patrick:

  • released Rakudo #17 last week
  • was easy again
  • 875 more tests since #16, so we pass 68% of the spectest suite
  • finished implementing the root_new opcode in Parrot
  • cleans up a lot of the PMCProxy issues from moving Rakudo to its own HLL
  • gained half of the speed we lost from the migration
  • we'll get more back as we update more places that need it
  • NQP never expected anything like that
  • I have to rework some it and PCT
  • haven't quite figured out how to do that
  • refactoring use and import in Rakudo
  • the current implementation doesn't work
  • will hopefully match with what Larry's putting in the spec
  • it seems like the logical way to do things
  • updated Rakudo's ROADMAP in docs/ROADMAP
  • gives us an idea of dependencies and next tasks
  • may also help people understand what blocks features they want

Jerry:

  • the bonding period has ended for GSoC
  • time for students to start coding
  • everyone on the Perl 6 and Parrot projects is ready

c:

  • fixed some memory leaks in Parrot and Rakudo
  • there are still some in Rakudo, but the web examples should be able to live longer
  • did more profiling
  • think NFG is important for Parrot in the near term
  • have some documentation to write
  • have been editing the Parrot book

Patrick:

  • how's the command line for Rakudo coming?

Jerry:

  • I expect to get back to that

Patrick:

  • the "parens build captures" decision surprised me
  • what's the rationale?
  • I really liked "parens mean grouping"
  • maybe I haven't reconfigured my worldview yet, but it feels messy

Larry:

  • when used in an argument list, it has the same effect as a capture

Patrick:

  • it even works when they're used as a term

Larry:

  • they still mean that you have to look at what you're binding to and decide
  • am I binding this to a scalar or to an array?
  • (1, 2, 3) bound to an array...

Patrick:

  • I'm going to have to think about that
  • the zip operator in slice context....
  • is this three or one positional arguments? zip($a,$b,$c)
  • how many positional arguments are in this case? zip($a,$b,$c;$d)

Larry:

  • one slice
  • you wouldn't want to write that

Patrick:

  • what in the arg list distinguishes the use of the semicolon versus the comma
  • inside of an argument list we have to recognize a variety of syntactic things
  • comma, semicolon, colon, array or hash sigil, named parameters
  • seems like captures need more information than just positional
  • they need to store metadata about positional arguments
  • I like the syntactic stuff showing up in the argument list
  • but I don't want to handle them in three different ways

Larry:

  • I'll have to think about that

Patrick:

  • haven't figured out how to deal with slice context either

Larry:

  • might say that the presence of a semicolon implies the presence of other parens
  • the comma implies...
  • that might be more consistent binding for a top-level list

Patrick:

  • I half expected that answer
  • I can see the semicolon as just a lower precedence grouping operator

Larry:

  • otherwise you have a semicolon that's just not there in every other argument list

Patrick:

  • assuming that, the other commas form an argument list through the infix semicolon
  • an array in there means Capture of Capture of Capture
  • we were about to refactor List and Array in Rakudo anyway
  • the question is "Do we really have a List type now?"
  • Rakudo assumes that

Larry:

  • if we can unify args list with List, that's probably healthy

Patrick:

  • I'd really like that
  • that makes things a lot cleaner
  • infix comma and infix semis now just create arglists

Larry:

  • or Lists
  • if you define List as "something that has out of band metadata"

Patrick:

  • any more decisions that you can make about that will help our implementation
  • I probably won't get around to that this week

Larry:

  • we make syntactic distinctions
  • we know that this is an arg list
  • we treat pairs as named arguments
  • we don't do that if we know it's not an argument list
  • it stays positional
  • that's the only distinction between an arg list and a List
  • purely syntactic

Patrick:

  • to summarize
  • zip($a, $b, $c) has three positional arguments
  • zip($a, $b, $c; $d) has two, the first of which is itself a list/capture
</summary>

Syndicated 2009-07-02 23:03:51 from pudge

18 Jun 2009 »

Perl 6 Design Minutes for 20 May 2009

The Perl 6 design team met by phone on 20 May 2009. Larry, Allison, Patrick, Jerry, Nicholas, and chromatic attended.

Larry:

  • trying to delegate some of my spec writing
  • if someone has something that needs to change and that person understands the design principles, someone can go ahead
  • Moritz respecced each to make it a conjectural junction
  • other people are working on the NFG specification
  • I haven't seen any changes committed on that yet
  • thinking about how importation works
  • particularly with inlined modules
  • expect that there will be an import declarator implied by use but usable explicitly
  • if you say import with an inline module or role declaration, it'll perform the export
  • which won't happen by default
  • thinking about how that declaration works at the moment
  • instead of trait_auxiliary and trait_verb, which fill the same syntactic category, we have trait_mod
  • they all occur in the same spot
  • you're always looking for them both simultaneously
  • the hander routines are now all upperclass autocalled, like other handlers
  • IS or TRAIT_IS or APPLY_IS, or some such
  • still thinking about namespaces for typeless traits not based on classes
  • perhaps rw or readonly traits aren't types
  • they need to be in a namespace somewhere
  • maybe just a syntactic category
  • added the use of ampersand variables on method calls to STD,<nobr> <wbr></nobr>.&foo
  • you can already say $.foo, call a code reference as if it were a method
  • & is also a code reference; ought to be allowed there too
  • Jonathan was playing with ampersand attributes,<nobr> <wbr></nobr>.&!foo
  • the rudimentary POD parser now complains if you don't have a matching =end for your =begin, except in the case of =begin END
  • if you put a default onto a named parameter, parser assumed it to be a positional parameter
  • gave a bogus error message
  • I fixed that
  • another interesting grammar tweak
  • defining an infix:<< >> and then a signature
  • if you leave a space out between the name and the signature parentheses, it would misparse
  • French angles ambiguously hyper parentheses there
  • I didn't want to require the space there
  • it's nice that you can write the declaration as if it a were call with the parens
  • if you're going to hyperoperate on parentheses, you have to use the dot form
  • >>( is now specifically not a hyperoperator within interpolation
  • >>.( is
  • that seems to be pretty DWIMmy
  • everything else is cage cleaning and hanging out

Patrick:

  • did not write any posts
  • will fix that first
  • mostly worked with others to make these happen
  • Tene and I ported Rakudo to run in its own HLL namespace instead of Parrot's
  • caused a 40-50% slowdown in execution time
  • we know the cause and have a fix before tomorrow's Rakudo release
  • I'll compare Rakudo's speed to before the switch
  • want to credit chromatic for any performance optimizations

c:

  • I have a 6.5% improvement for all function calls

Patrick:

  • we have better error reporting now
  • can point to the point in your code with the error, rather than some point in generated PIR code
  • added the ability to define custom operators in Rakudo
  • infix, prefix, postfix
  • in select cases also circumfix
  • we can move even more parts of the builtins to Perl 6 as a Setting
  • exposed a few other places we need cleanup
  • Jonathan is working on those
  • added a variable to PCT which gives the compiler the names of the files it's compiling
  • improved error reporting there
  • added an inline PIR construct to NQP to match Rakudo's
  • added the qx// quoting term
  • can now run shell commands and capture the output into a variable
  • answering questions online and taking care of other little things
  • preparing for tomorrow's release
  • though it may occur very late tonight

Allison:

  • mainly release prep this week
  • lots of ticket review and patch application
  • submitted an article to Linux Magazine, "Why Parrot is Important"
  • more high-level than a tutorial
  • continuing to work on the book
  • a good week for high-level design discussions
  • seems like that happens when I have more time to be on IRC

Nicholas:

  • an update on smart-match
  • Paul Fenwick gave the position of a Perl trainer
  • the design decision of not being able to overload the left side of the smart match bothered him
  • there's more discussion there

c:

  • optimizing Parrot and Rakudo
  • finding bottlenecks
  • fixing many of them
  • editing the Parrot book
  • doing a little more design work on nanoparrot

Nicholas:

  • how far off are you from letting other people release Rakudo?

Patrick:

  • the instructions are in the repository
  • they're straightforward
  • I could turn it over to Jonathan or Jerry or any number of people with ease
  • they could just do it
  • it's basically a Makefile target
  • you do some prep work, run the target, then upload the tarball to the right places
  • I stole liberally from how Parrot does things
  • I can hand it off any time I get tired of making them

Nicholas:

  • so the bus number is low

Jerry:

  • any plans to turn it over soon?

Patrick:

  • if other folks think it's important, I can do that
  • I could pick someone at YAPC::NA to do it
  • the release day is the Hackathon day there
  • we could just walk a few people through it that day
  • even if they don't upload the tarball and push the tag
  • we'll target that for the June release, even if no one else releases an official release

Jerry:

  • I've been trying to get the Parrot release bus number above 10
  • we're close, which is a great place to be

Patrick:

  • that was evident, as yesterday's release manager couldn't make it, and Mark Glines picked it up

Jerry:

  • and it was his first release

Syndicated 2009-06-18 02:08:58 from pudge

16 Jun 2009 »

Perl 6 Design Minutes for 13 May 2009

The Perl 6 design team met by phone on 13 May 2009. Larry, Allison, Patrick, Jerry, Will, Nicholas, and chromatic attended.

Larry:

  • continuing to think about how braided languages work
  • implementing the notion in the STD parser
  • the notion of how you switch between these languages
  • now called slangs
  • thinking about how macros work in embedded lexical scopes
  • if you define a role which contains a trait auxiliary definition
  • label it is export
  • how does it export?
  • to which lexical scope?
  • when you do the role or what?
  • no defined way of exporting to outer
  • that's a problem in some tests
  • with augment slang, we have a way of embedding grammar modifications inline
  • when do ordinary macros embedded in subscopes desugar to that sort of thing?
  • %*LANG now holds the whole language braid
  • the $*PARSER variable is just the MAIN element of that
  • I backed off some of the errors in the STD parser to just warnings
  • don't really handle module and role long names yet
  • you get bogus "can't augment" warnings now
  • it thinks something isn't there that should be there and vice versa
  • fixed a test where STD needs to parse =for; now it does
  • added the slang declarator so that we could augment them
  • a twigil indicates a current slang subset of the current braid
  • fixed a bug to recognize the invocant marker after an unspace
  • that was a longest-token match problem
  • the message I added about a missing block gobbled by a function is now two separate messages
  • one talks about the function which needs parens
  • the other talks about the missing block
  • they point to two different areas as a matter of clarity
  • I'm really enjoying adding clever error messages

Patrick:

  • Rakudo now passes 11,200+ tests
  • up by 70 tests since yesterday
  • a couple of hundred in the past week
  • mostly doing little bug fixes and refactors
  • typically, I'll start to add a feature and find some code which doesn't look right
  • then I add the feature
  • slurpy arrays and hashes weren't added properly to subs
  • always added automatically regardless of the type of Block
  • I cleaned that up
  • also cleaned up lots of parameter handling in the code
  • that made actions.pm 100 lines shorter, and I removed three duplicate subroutines

c:

  • that also speeds up startup

Patrick:

  • every time we do that it helps
  • found a bug dealing with Unicode characters in grammars
  • prevented us from properly parsing French quotes as an angle delimiter
  • working on adding operator parsing to Rakudo today
  • define your own custom operators
  • refer to them using canonical names
  • expect to have that done today
  • they won't be lexically scoped
  • I'll work on fixing that, when we get more to lexical scopes and language braids
  • continuing to consider protoregexes and LTM in PGE
  • probably will implement contextual variables in NQP and Rakudo

Allison:

  • we'll have packages in Ubuntu soon
  • just a straight sync of the Debian packages
  • no reason to make Ubuntu-specific packages, if that works
  • working on editing the book
  • working on the calling conventions branch
  • writing a Parrot article

Jerry:

  • GSoC mentors and students seem to be bonding in their bonding period
  • set up parrot.org to accept donations from individuals
  • there's a sidebar link under the Foundation heading
  • and we received our first donation!
  • thank you, Bradley Kuhn
  • we'll work on placement and prominence
  • think I'll give a keynote at YAPC::NA, following Larry

Larry:

  • if you pay me enough, I'll run over

Patrick:

  • if you don't pay him, I suspect he'll run over
  • you are what stands between everybody and lunch

Will:

  • added some regression tests
  • made some stuff work in Perl 5.8.8, so we don't have to upgrade our dependency
  • wrote a script to summarize our old branches
  • convinced people to delete a bunch of old branches
  • hopefully we can weed them out
  • TPF's grant committee votes this week on the current crop of proposals
  • one of them is for Perl 6
  • if you have any comments, please post on that
  • Partcl is still dead
  • blocking on the ability to build a language from an installed Parrot
  • we've made some progress on that
  • there are still things that do not work
  • most of them have tickets

Patrick:

  • Rakudo's blocking on the same thing
  • Tene is working on getting Rakudo to run in its own HLL
  • he's blocking on the HLL load_library problem
  • I'll have him post to the list and give an update on the ticket

Nicholas:

  • Rafael has merged his smart-match branch back into blead
  • he tried to make smart-matches match ranges
  • it won't work for various reasons
  • precedence is the wrong way around for one
  • $foo ~~ [ 1, 2, [ 3<nobr> <wbr></nobr>.. 5 ] ] won't work either
  • Perl 5 ranges aren't lazy
  • smart-match can't interrogate Range objects lazily
  • that's why we can't emulate everything from Perl 6
  • we don't have the low-level infrastructure to do it all
  • even if we had that infrastructure, there are parsing issues
  • I don't see that coming in a hurry
  • if someone implements lazy ranges, maybe someone can add them to smart-match
  • giving the enjoyment people derive from implementing such things, I'll be surprised if anyone does that

c:

  • added some optimizations
  • heading toward the "not really worth doing" kind
  • fixed some bugs
  • including a Unicode parsing bug with named parameters and arguments in IMCC

Nicholas:

  • did you write about the abolition of unary equals, Patrick?

Patrick:

  • not yet
  • I feel badly about that
  • I need to catch up
  • there are so many interesting problems to work on
  • writing is not as interesting as working on code

Syndicated 2009-06-16 20:14:44 from pudge

16 Jun 2009 »

Pelr 6 Design Minutes for 06 June 2009

The Perl 6 design team met by phone on 06 May 2009. Larry, Allison, Patrick, Nicholas, and chromatic attended.

Larry:

  • refactored my phone
  • refactored various functions
  • comb now defaults to matching single characters
  • a words method now does what comb used to do
  • did some work on pick
  • looked at most of the functions in containers to see whether they out to return a List or a Capture which returns an Item
  • depends on whether the function would ever be used to pull a single thing out
  • whether people expected it to do the right thing as an Item
  • pick is one of those functions
  • worked on the semantics of has
  • the initializer semantics; the syntax hasn't changed
  • worked on the relationship between multiple has if you have multiple attributes
  • straightened out a mismatch between prefix parsing specification and implementation
  • turned the term "protoobject" into "type object"
  • thinking about the notion of braided languages
  • Perl isn't a single language
  • also a regexp language, a quoting language, a quasi-quoting language
  • they hand off to each other
  • they have to keep track of each other; I call that a "braid"
  • how you override one language in another
  • how do you handle regexp language changes from regular Perl, when you're not in the regexp language at the time?
  • thinking about how to get the derivations to work correctly
  • when you parse a regexp or a quote
  • now instead of starting at a language like q, it starts at the current q-ish language in your braid
  • in support of that, I implemented temporization of context variables in gimme5
  • used to temporize current braids to a lexical scope
  • added a block after try in parsing
  • it uses that rather than parsing the block as the first argument of a list operator
  • likewise the other statement prefix operators
  • added the auxiliary hides trait
  • the \c notation for characters allows any radix of integer inside the list
  • the \c, \o, and \x notations all parse consistently now
  • enums are parsed more correctly
  • they don't give bogus duplicate warnings
  • if you declare a lexical symbol with<nobr> <wbr></nobr>:: in it, assumes you're referring to a subpackage of the current lexical scope
  • means something different from a symbol intended to scan outward
  • along with the notion of braided languages and derivability, derived languages can add more parser variables ($?foo) with a virtual function for lookup
  • avoids clobbering the core definitions
  • worked on role parameters
  • they're now in the role's pad, like normal signature parameters
  • started playing with the YOU_ARE_HERE stub used to define the effective insertion location of your code into a Setting
  • determining which lexical pad to dump as the Setting's context for use by other compilation units
  • did a lot of work on error messsages
  • some of my ||s suppressed panic messages
  • more useful error message on the null pattern (//)
  • gives a better message if you slurp your control block in the preceding expression

Patrick:

  • had a lot of discussions online
  • not as much coding as I like
  • seem to be answering questions for others
  • quite a bit of work on Rakudo internals refactoring
  • that'll make it easier to switch it over to be its own HLL in Parrot
  • moved things around
  • made a single constant definition we can change when we move it over to its own HLL
  • also moved all of the Parrot HLL mangling into its own source code files
  • easy for us to manage there
  • fixed some bugs
  • talked with Jonathan about refactoring the P6object implementation
  • used in Rakudo and PCT for Perl 6 object-like behaviors
  • he's working on that refactoring now
  • found and fixed a couple of bugs handling implicit slurpy positionals
  • made Rakudo's standard IO handles default to UTF-8 encoding
  • gives people behavior more like they expect
  • working on changes to the Array and List implementation
  • currently List inherits from ResizablePMCArray
  • we'll change that to contain it
  • that should clean up a lot of behavior
  • Rakudo passed the 11,000 spectest mark as of two days ago

Allison:

  • spent some time on ticket, milestone, and roadmap maintenance
  • helping other people start or continue their tasks
  • launched the install PDD out of draft
  • it doesn't address every question, but I cleaned out all of the inaccuracies
  • fits our current plan
  • probably needs more expansion when we figure out the source of some of our problems building Rakudo and Partcl
  • the general problem is that we've built all of our languages from the build tree, never and installed Parrot

c:

  • I've been explaning Perl 6 roles on my new weblog
  • lots of feedback
  • still lots of explaining to do
  • also been profiling Parrot and Rakudo startup
  • Parrot's a lot faster now (cotto and bacek's work on vtable init helped immensely)
  • Rakudo's getting faster, but it has a ways to go
  • will keep working on that, but the progress has been decent with little investment
  • discussed exception handling with Allison
  • came up with a preliminary design to handle the interior runloop exit there
  • just syntax to hide tricky semantics

Patrick:

  • when dealing with exceptions, handlers, and returns for subroutines
  • it'd be nice to force a return from a subroutine higher up in the caller chain
  • akin to Perl 6's leave semantics
  • trying to do that without throwing an exception....
  • if we do it with exceptions requires every block to have a handler

Allison:

  • invoke the return continuation several levels back?

Patrick:

  • is that easily doable at this point

Allison:

  • we have all of the ability for that, but no syntax for it

Patrick:

  • I don't necessarily need syntax for it
  • the natural approach is to find the appropriate caller
  • I need to do that anyway
  • then ask for its ReturnContinuation
  • then invoke that with the values I want to return to its caller

c:

  • makes sense to me

Patrick:

  • that may exist in PIR syntax like that anyway
  • if the easy invoke doesn't work, use some combination of set_returns

Allison:

  • not sure if we have in PIR right now the way to ask the caller for its return continuation
  • you can do it from C
  • we can add something which does that

Patrick:

  • if I ask for a Sub's current context
  • I could write a method on a sub to do that
  • it'll be easier and nicer when our contexts are PMCs
  • as an intermediate case, that would be it
  • related to that, this might be there too
  • is there a way for a Sub to register behavior to execute just before it exits

Allison:

  • are those like the LEAVE hooks in Perl 6?
  • we have a place to store them now
  • we don't right now have a way of flagging a particular handler to execute at block scope exit
  • would it make sense to call that an event?

Patrick:

  • it might
  • before saying what we do and don't have
  • one piece of this is that there's still a push_action opcode

Allison:

  • it never worked
  • we're removing it
  • the global stack never synchronized with continuations
  • it dummied up to work, but it doesn't have the automatic stack cleanup behavior

Patrick:

  • the other possibility is the presence of ONEXIT or LEAVE hooks on Subs in Parrot

Allison:

  • do you want all Subs to have that
  • or at runtime would you want to attach a handler to that sub?

Patrick:

  • it might be nice to have that at compile time
  • I suspect it'll end up being an attached block

Allison:

  • can we tie that cleanly with other execution pieces?
  • NEXT and LAST etc

Patrick:

  • the biggest difference with LEAVE is that it's not exception-based
  • Larry thinks of it as natural to a block
  • PCT models the rest as exceptional

Allison:

  • it sounds like a handler to store in the local handler list
  • mark it so that it's clearly not an exception
  • we have handler flags -- exception, event, etc
  • we add to the execution code for Subs
  • as it returns or ends, it checks to see if there was a handler
  • invokes it if so

Patrick:

  • sounds good to me
  • it's come up if you're thinking about these issues anyway

Nicholas:

  • how useful is MAD that's in Perl 5 blead still?

Larry:

  • I don't know
  • it may turn out to be very important
  • depends on how possible it is to write a decent Perl 5 parser in Perl 6
  • where decent is a very peculiar definition meaning "indecent"
  • this is unknown
  • for interleaving Perl 5 and Perl 6 on various VMs, some VMs will use a Perl 5 compiler written in Perl 6
  • that may not be a solution as nice as using the real Perl 5 parser which knows its own idiosyncracies

c:

  • sometimes it does

Larry:

  • that's the point
  • I'd hate to have to have to hack it up again
  • that was a lot of work

Nicholas:

  • it seems to suffer slow bitrot
  • no one seems to try to keep it up to date
  • when people change the parser, they don't change it
  • the question is if people still use it

Larry:

  • the vision is still to have a Perl 5 to Perl 6 translator
  • that's been on hold until we have a viable target to translate to
  • the demand for that will re-arise at some point
  • if it bitrots, it bitrots
  • that doesn't bother me as much as if people felt like ripping it out
  • the way to unbitrot it was roundtripping the test suite and fixing any problems
  • we'd just go back to doing that again until everything was reannotated the way it needs to be
  • the standard for when you know you're storing enough information is being able to reproduce it

c:

  • is there a test target to handle that?

Larry:

  • I used special scripts to do that
  • didn't expect other people to maintain that
  • it's MAD for a reason
  • nobody's tried to write a Perl 5 parser in Perl 6 yet
  • it's theoretically possible

Patrick:

  • depending how much fidelity you need for the actual Perl 5, you can get a pretty good way

Larry:

  • considering how much effort has gone into PPI, you can get a PPI-like result
  • that only takes you so far though

Patrick:

  • maybe a GSoC project next year would be for someone to start hacking something together with PPI
  • it'd be a worthwhile project

Larry:

  • we already have a Perl 5 to Perl 6 translator based on the state of MAD

Syndicated 2009-06-16 01:38:38 from pudge

424 older entries...

 

chromatic certified others as follows:

  • chromatic certified mishan as Journeyer
  • chromatic certified jlp as Apprentice
  • chromatic certified jbontje as Apprentice
  • chromatic certified mcelrath as Apprentice
  • chromatic certified fozbaca as Apprentice
  • chromatic certified wrvh as Journeyer
  • chromatic certified hexmode as Journeyer
  • chromatic certified JB318 as Apprentice
  • chromatic certified dlc as Apprentice
  • chromatic certified thewatcher as Apprentice
  • chromatic certified japhy as Journeyer
  • chromatic certified extremely as Apprentice
  • chromatic certified renster as Apprentice
  • chromatic certified hoffman as Apprentice
  • chromatic certified ebizo as Apprentice
  • chromatic certified apgarcia as Apprentice
  • chromatic certified redmist as Apprentice
  • chromatic certified monk as Apprentice
  • chromatic certified dirtyrat as Apprentice
  • chromatic certified gary as Apprentice
  • chromatic certified bikeNomad as Journeyer
  • chromatic certified jmcnamara as Apprentice
  • chromatic certified footpad as Apprentice
  • chromatic certified OeufMayo as Journeyer
  • chromatic certified gregor as Journeyer
  • chromatic certified Simon as Master
  • chromatic certified jaybonci as Apprentice
  • chromatic certified kwoo as Apprentice
  • chromatic certified hv as Master
  • chromatic certified gbarr as Master
  • chromatic certified Abigail as Journeyer
  • chromatic certified freeside as Journeyer
  • chromatic certified adrianh as Journeyer
  • chromatic certified chip as Master
  • chromatic certified gc as Master
  • chromatic certified DaveGoehrig as Journeyer
  • chromatic certified tcopeland as Journeyer
  • chromatic certified RogerBrowne as Journeyer
  • chromatic certified bradfitz as Master
  • chromatic certified Purdy as Journeyer
  • chromatic certified Ward as Master

Others have certified chromatic as follows:

  • henrik certified chromatic as Apprentice
  • davej certified chromatic as Apprentice
  • jdube certified chromatic as Apprentice
  • mishan certified chromatic as Journeyer
  • kelly certified chromatic as Journeyer
  • lukeh certified chromatic as Apprentice
  • JB318 certified chromatic as Apprentice
  • jrennie certified chromatic as Apprentice
  • jlp certified chromatic as Journeyer
  • mojotoad certified chromatic as Journeyer
  • jbontje certified chromatic as Journeyer
  • mcelrath certified chromatic as Journeyer
  • lazarus certified chromatic as Apprentice
  • wrvh certified chromatic as Journeyer
  • fozbaca certified chromatic as Journeyer
  • beppu certified chromatic as Journeyer
  • nixnut certified chromatic as Journeyer
  • DrCode certified chromatic as Journeyer
  • hexmode certified chromatic as Journeyer
  • cwinters certified chromatic as Journeyer
  • Wheat certified chromatic as Journeyer
  • ErikLevy certified chromatic as Journeyer
  • manu certified chromatic as Journeyer
  • cpw certified chromatic as Journeyer
  • dlc certified chromatic as Journeyer
  • jimw certified chromatic as Journeyer
  • renster certified chromatic as Journeyer
  • sh certified chromatic as Journeyer
  • dneighbors certified chromatic as Journeyer
  • jao certified chromatic as Journeyer
  • thelema certified chromatic as Journeyer
  • apgarcia certified chromatic as Journeyer
  • redmist certified chromatic as Master
  • monk certified chromatic as Journeyer
  • OeufMayo certified chromatic as Journeyer
  • adulau certified chromatic as Journeyer
  • mdillon certified chromatic as Journeyer
  • jmcnamara certified chromatic as Journeyer
  • overclocker certified chromatic as Journeyer
  • MikeGTN certified chromatic as Master
  • footpad certified chromatic as Master
  • roguemtl certified chromatic as Journeyer
  • jono certified chromatic as Journeyer
  • robhudson certified chromatic as Journeyer
  • technik certified chromatic as Journeyer
  • omarius certified chromatic as Journeyer
  • ignatz certified chromatic as Journeyer
  • fxn certified chromatic as Journeyer
  • stevej certified chromatic as Journeyer
  • neurogato certified chromatic as Journeyer
  • merlyn certified chromatic as Journeyer
  • thraxil certified chromatic as Journeyer
  • Qbert certified chromatic as Journeyer
  • forrest certified chromatic as Master
  • jaybonci certified chromatic as Master
  • arhuman certified chromatic as Master
  • pop certified chromatic as Journeyer
  • ib certified chromatic as Master
  • kwoo certified chromatic as Journeyer
  • cm certified chromatic as Master
  • richdawe certified chromatic as Master
  • pasky certified chromatic as Master
  • IlyaM certified chromatic as Journeyer
  • gbarr certified chromatic as Journeyer
  • petdance certified chromatic as Journeyer
  • wiggly certified chromatic as Master
  • iamsure certified chromatic as Master
  • adrianh certified chromatic as Master
  • gobry certified chromatic as Master
  • kjwoo certified chromatic as Journeyer
  • rooneg certified chromatic as Journeyer
  • RogerBrowne certified chromatic as Master
  • mchirico certified chromatic as Master
  • pcburns certified chromatic as Master
  • tagishandy certified chromatic as Master
  • samanderson certified chromatic as Master
  • drwat certified chromatic as Master
  • Purdy certified chromatic as Journeyer
  • fzort certified chromatic as Master
  • tclark certified chromatic as Master
  • casey certified chromatic as Master
  • philiph certified chromatic as Master
  • mentifex certified chromatic as Master

[ Certification disabled because you're not logged in. ]

New Advogato Features

FOAF updates: Trust rankings are now exported, making the data available to other users and websites. An external FOAF URI has been added, allowing users to link to an additional FOAF file.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!

X
Share this page