Stories
Slash Boxes
Comments
NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.

All the Perl that's Practical to Extract and Report

use Perl Log In

Log In

[ Create a new account ]

chromatic (983)

chromatic
  (email not shown publicly)
http://wgz.org/chromatic/

Blog Information [technorati.com] Profile for chr0matic [technorati.com]

Journal of chromatic (983)

Saturday October 13, 2007
02:23 PM

Perl 6 Design Minutes for 10 October 2007

[ #34671 ]

Larry:

  • mostly glaring at various implementations of tagged DFA algorithms
  • I want something like that for my lexer
  • played with the Perl 5 bindings to TRE by the person who did the NFA paper
  • it's buggy
  • now I'm looking at the equivalent implementation under Haskell, which supposedly fixes these bugs
  • it's a little less accessible to someone without Haskell-fu
  • I'd love to have it if someone would hack a Pugs binding for it
  • might have to translate it to Perl 6 myself
  • it's possible that I might need to do that anyway
  • most of these things use a POSIX interface
  • it's not quite what I want
  • they're good at telling you which submatches matched where
  • they're not so efficient at telling you which branch the match took
  • you end up going back out and looking at the submatches
  • it already had that information when it matched the thing
  • in the long run, we'll end up writing it ourself
  • the tagged DFA knows which transition it makes when it's making it, but throws away the whichness in favor of the POSIX interface
  • it's very close to what we need to intermix the imperative and declarative worlds of pattern matching

c:

  • are you blocking on anything?

Larry:

  • if someone hacked the interface to TDFA in, I could play with it without having to translate it
  • it's a slowdown
  • but if we're going to end up with that algorithm in Perl 6 anyway, it's not really a block
  • more of a frustration
  • haven't done anything else that anyone's asked me to do

Jerry:

  • helping with the OO cleanup
  • there are about 25 failing tests remaining
  • we're really close
  • inspired by a question on #parrot this week
  • looking at the Warren Abstract Machine (PDF) which underlies most Prolog engines
  • I wonder if the Perl 6 regex machine alone is enough to implement that

Larry:

  • you can certainly play with the backtracking for that
  • you need something to do the unification for you

Allison:

  • Curtis Poe played with implementing Prolog in Perl 5

Larry:

  • there'll be enough primitives there to do it at one level or another
  • all you need is a Turing-complete language

Allison:

  • also working primarily on the object model
  • we went down from 2000 failing tests to 24 in the past week
  • we did find at least one GC bug
  • we decided to wait to merge the object branch until just after the next release
  • Will might want to do the release earlier
  • I'll leave that up to him
  • also working on the Events PDD, which is due next Monday
  • will finish that in between fixing tests on the PDD15 branch
  • we've only just started talking about the exceptions implementation
  • I know Jerry wants to wait to branch until after we roll the PDD15 branch in
  • we can wait on that
  • hopefully the changes for the Events PDD won't be too big there

Patrick:

  • the exceptions implementation doesn't seem too far off
  • mostly we're missing definitions of some of the standard exceptions

Jerry:

  • the exception hierarchy

Allison:

  • it's a mess

Jerry:

  • I have a feeling we'll change a lot of real_exception() calls to create_exception()

Allison:

  • we're using real_exception() in a lot of places we should be using something internal
  • that's because internal_exception() doesn't really work

Jerry:

  • that's more of a cleanup and refactoring

Patrick:

  • mostly worked on the new object model as well
  • didn't get to everything else I hoped to
  • they're still on deck
  • expect to get to them later this week
  • will finish up the TGE things for PDD15 tonight
  • hopefully that'll clear up some of the failing tests
  • then I'll be back to writing the AST PDD
  • then working on the AST refactor
  • the codebase is getting smaller, which I like

c:

  • also working on PDD 15
  • fixed some scary bugs
  • will work on the OrderedHash problem if there's a test case

Jerry:

  • I have one for you

c:

  • poked at Lua, but the code isn't clear enough for me to get good wins there
  • I broke it pretty badly, but hopefully it'll get better
  • no checkin there yet
  • also did some profiling, but inconclusive yet
  • it'll be easier to profile when languages/perl6 runs completely
  • I have some ideas

Allison:

  • we had a long discussion of alternate programming styles for PGE yesterday in #parrot
  • it's not quite OO and not quite procedural

A long discussion of continuations, coroutines, and ratchet followed.

The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
 Full
 Abbreviated
 Hidden
More | Login | Reply
Loading... please wait.
  • I used to like the Warren Abstract Machine, but eventually I realized that it suffers from a very common problem in logic and declarative languages: it's bag-oriented instead of set-oriented and is thus a flawed model forcing people to do grunt work to filter duplicates. This is a huge mistake. I don't (yet) know of a natural common language which avoids this, but if one is found, it's worth looking at.