Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Comparing changes

Choose two branches to see what's changed or to start a new pull request. If you need to, you can also compare across forks.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also compare across forks.
Checking mergeability… Don't worry, you can still create the pull request.
Commits on Nov 29, 2011
@jnthn jnthn First steps towards getting NQP bootstrapping with QRegex. This just …
…twiddles the makefile so we always build QRegex during stage 2, and then build NQPQ as the stage 2 NQP.
@jnthn jnthn Add a temporary QHLL copy of HLL to help facilitate the bootstrap. 6060370
@jnthn jnthn Build QHLL in stage 2. 70ac5d0
Commits on Jan 05, 2012
@jnthn jnthn Merge latest master into QRegex bootstrap branch. 995bd15
Commits on Jan 06, 2012
@jnthn jnthn Merge branch 'master' into qbootstrap 7c4b557
@jnthn jnthn A missing s/SymbolTable/World/. 27a79fe
@jnthn jnthn Re-arrange things a little - just in stage 2 for now. This gets an NQ…
…P built that more fully uses QRegex. Lots to fix - this is mostly just shuffling around the build process and dependency chain somewhat.
@jnthn jnthn Update .gitignore. 467b83f
@jnthn jnthn Clean up some leftovers from the way the nqp-rx regex engine did debu…
…g stuff (we'd want to put it back as something MOP-level-ish).
@jnthn jnthn Start to partially get QRegex into stage 1 also (this is to about the…
… same level as the original NQPQ had it).
@jnthn jnthn Fix update-o. 2e25615
@jnthn jnthn Merge branch 'master' into qbootstrap e31290a
Commits on Jan 07, 2012
@jnthn jnthn A couple more dependency fixes. fed8d1f
@jnthn jnthn Remove currently unused rxtrace arg. 4223af2
@jnthn jnthn Some tweaks, one very much a hack, to get us through the build again. 3ec2f33
@jnthn jnthn Temporary hack during migration to NQP::Grammar.TOP. With this, we ac…
…tually get a little way into parsing.
@jnthn jnthn Fix MARKER/MARKED to work with QRegex. 0815cde
@jnthn jnthn Implement missing ww. a0c3e8a
@jnthn jnthn Add missing orig method to NQPMatch. e879f27
@jnthn jnthn Get make and .ast working with QRegex NQP match object. 308d64a
@jnthn jnthn Fix panic and...we successfully fail to parse anything. f34a0f8
@jnthn jnthn Update various rules in QHLL::Grammar for new !cursor_start API. 2d18985
@jnthn jnthn Get EXPR at least somewhat fixed up for QRegex. abb07dc
@jnthn jnthn Another bunch of updates to EXPR. Gets us closer to working OPP with …
@jnthn jnthn Another round of fixes to OPP with QRegex; actually seems to work now. 999c0e4
@jnthn jnthn Fix compilation of rules with parameters. 3efe24b
@jnthn jnthn Match objects should have the cursor associated with them. 5d63533
@jnthn jnthn Get quote parsing to work again under QRegex. Now we parse and pass s…
…ome of NQPs test suite again.
@jnthn jnthn Restore some basic rxtrace functionality. Unlike the previous version…
…, this is zero cost if you don't enable it.
@jnthn jnthn Implement non-:local case of .^methods in NQP's ClassHOW. 814b46f
@jnthn jnthn Remove stray proto in NQP grammar. 682544b
@jnthn jnthn Don't need to explicitly pass :local(0) - it's the default. 862bcc7
@jnthn jnthn Get a few more tests by fixing quotemod checking. a3bb381
Commits on Jan 08, 2012
@jnthn jnthn KnowHOW's find_method should not throw to indicate method not found (…
@jnthn jnthn Remove find_method exception handler, which is the wrong fix. Also, e…
…xplicitly implement can.
@jnthn jnthn Ensure tracing does not mess up NFA state lookup. af9aa47
@jnthn jnthn Handle French quote case of :sym (probably need something more genera…
…l in the long run).
@jnthn jnthn Couple of small tweaks that help trim various branches earlier, savin…
…g time and making the trace less noisy.
@jnthn jnthn Get LANG working-er. b24283c
@jnthn jnthn Ensure that we invalidate matches as needed. cfca054
@jnthn jnthn Try and have the NFA builder not explode upon recursion. 0ffa51b
@jnthn jnthn Add a circularity-breaking thingummy so that we can load QRegex by de…
…fault again; say('a fool' ~~ /foo/) now works again in NQP and QRegex compiled using QRegex.
Commits on Jan 09, 2012
@KrisShannon KrisShannon Make git ignore all *.pbc f500829
@KrisShannon KrisShannon The enumcharlist can be negated.
Fix the NFA building to pay attention to that.
Commits on Jan 10, 2012
@jnthn jnthn Quick and dirty port of to a dynop. For nqpop.t, takes time s…
…pent in from 51% of runtime down to 3.3%.
@jnthn jnthn Optimize match object construction a little. 6357dde
@jnthn jnthn Handle integer literals a bit less stupidly, which gives a ~15% impro…
…vement on !cursor_start, which is currently a hot path.
@jnthn jnthn Cache the protoregex table, to save re-computing it every time. Can s…
…ave quite a bit of time.
Commits on Jan 23, 2012
@jnthn jnthn Update qbootstrap with latest changes from master. 7e7e333
Commits on Mar 02, 2012
@jnthn jnthn Merge latest NQP master into qbootstrap. Note that this doesn't updat…
…e NQPQ, which will now also need to happen. As a result, it doesn't build again just yet.
Commits on Apr 06, 2012
@jnthn jnthn Merge branch 'master' into qbootstrap c1382c9
@jnthn jnthn Sync NQPQ's World with BS changes. 62d7bf3
@jnthn jnthn Update NQPQ's with BS-related changes. f15decd
@jnthn jnthn Sync NQPQ's up with BS changes; we now get through the bui…
…ld in this branch again, though the resulting nqp executable doesn't work again yet.
@jnthn jnthn Update QHLL's World with latest changes. Gets things a little further…
… towards working again.
@jnthn jnthn Make nqpattr work on the NQPRoutine code objects. Note that we can no…
…w probably kill off the PIR hack, though it's not pressing to do so. This appears to get qbootstrap back to passing the set of tests it did before bs happened, anyway, so now work on it can continue.
Commits on Apr 20, 2012
@jnthn jnthn Merge branch 'master' into qbootstrap 5a6c697
Commits on Apr 21, 2012
@pmichaud pmichaud Add --parrot-option to d6e4019
Commits on May 17, 2012
@jnthn jnthn Merge latest master into qbootstrap, especially to get mark commit fi…
@jnthn jnthn Update QHLL to not use ** with a separator. 44e1c14
@jnthn jnthn NQPQ's Grammar used the ** ',' syntax, which is now gone from QRegex,…
… but it builds this in stage 1 too, using the old regex engine which doesn't do %. So, eliminate those two cases for something a little more verbose.
Commits on May 21, 2012
@jnthn jnthn Merge branch 'master' into qbootstrap 4bac8c3
@jnthn jnthn First crack at making LTM transitivity extend into protoregexes. Basi…
…cally, just builds an alternation, as suggested by pmichaud++. Seems to help some with the NQP tests.
@jnthn jnthn Toss a couple of commented out lines from debugging/updating. 2e354d1
Commits on May 24, 2012
@jnthn jnthn Turns out that ResizableIntegerArrays aren't zeroed to start with, wh…
…ich caused random failures when running NFAs. This fixes the various sporadic, seemingly random parse failures under qbootstrap.
@jnthn jnthn Fix :w quotemod check in action method (this is faster than what was …
…done before, though it probably shoulda still worked the way it originally was). This means qbootstrap is down to just three test files with failures in t/nqp.
@jnthn jnthn Fix an off-by-1. f8878e7
@jnthn jnthn Start loading the new regex lib so userspace code can do things like …
…regex interpolation. Add a temporary flag for during the build - can go away once the bootstrap update is done. Gets another test file largely passing.
Commits on May 25, 2012
@jnthn jnthn Update a test for new cursor object name. All pass, getting us down t…
…o a handful of failures in a couple of test files, probably with one root cause.
@jnthn jnthn Stop building the now-unrequired PIR-based regex engine in stage 2, j…
…ust to be sure it's not required any more.
@moritz moritz copy changes to src/HLL/ over to src/QHLL 2c90c5d
@jnthn jnthn Fix up make install for qbootstrap. f135d3f
@jnthn jnthn Update bootstrap-files target. 19e3d85
@jnthn jnthn Move loading of NQPP6QRegex within --no-regex-lib guard. 127134a
@jnthn jnthn Temporarily change the way we do NFA caching so we don't end up with …
…SC refs between levels of the bootstrap.
@jnthn jnthn PASTRegex module needs to take care of exporting PAST namespace now t…
…hat NQPRegex is going away.
@jnthn jnthn Be sure that we still always have the PAST stuff available for the mo…
@jnthn jnthn Refactor/harden the rulename existence check in mergesubrules. 30c0341
@jnthn jnthn Workaround for <?{ ... }> parsing issue; should be able to clear this…
… up post-bootstrap, when only the new NFA implementation of LTM need care. This gets all tests passing in t/nqp again.
@jnthn jnthn Update the bootstrap, using the QRegex engine. This eliminates the de…
…pendency on the old PIR-based regex engine.
@jnthn jnthn Update a test that used the old regex engine's Match object. 4fd22b2
@jnthn jnthn Go around the bootstrap loop once more, to (hopefully) fully eliminat…
…e mentions of the old NQPRegex library. Things work, aside from a regex interpolation issue that needs looking in to (and that was broken last time around too).
@jnthn jnthn Start to clear up the Makefile, removing things we no longer use. 4b5e511
@jnthn jnthn Remove most of the old Regex engine; a constants.pir is still referen…
…ced, but everything else goes.
@jnthn jnthn Remove the old PIR-based regex compiler. 1fa3e21
@jnthn jnthn Collapse QHLL back into HLL. fea45a0
@jnthn jnthn Collapse NQPQ back into NQP. a57eda0
@jnthn jnthn Special-case <before ...> to be declarative for LTM purposes. Fixes r…
…eduction parsing (and maybe other things) in Rakudo on qbootstrap.
@jnthn jnthn Canonicalize name installed in %*RX<name> properly, so we call the co…
…rrect action method.
@jnthn jnthn Merge prog-name handling from master. 62c44da
Commits on May 26, 2012
@moritz moritz another attempt to get HLL::Compiler to the latest state 2cd24d0
@jnthn jnthn Bring preclim handling fix in to EXPR; diakopter++. 813a2d5
@jnthn jnthn ident could accidentally ord past end of string; check for this. Fixe…
…s at least one of the Rakudo regressions.
@jnthn jnthn Change the way <?> is handled so that it does not terminate LTM. Fixe…
…s parsing of C<...>.
@jnthn jnthn Build and use the protoregex table in a much smarter way. Immediately…
… shaves 25% off NQP test suite run time.
@jnthn jnthn Clean up the fate sorting silliness (temporary extra op due to needin…
…g a trip around the bootstrap to eliminate it; will keep the old one for another day or so in case the new way introduces issues). This shaves 10% off parse/actions time for CORE.setting.
@jnthn jnthn Optimize MATCH and CAPHASH to construct less objects. f8f164f
@moritz moritz use PASTRegex; avoids death in the interpolation tests 8982bd8
@jnthn jnthn Optimize MARKED and MARKER a little, and make it less PIR-y. afa9f9c
@jnthn jnthn Update bootstrap with lastest improvements. 594b59d
@jnthn jnthn Fix the prefix for nqpvar, so we parse /a$s/ correctly (tadzik++ for …
…discovering the issue).
@moritz moritz remove p6regex tests (use qregex-test instead)
also remove bogus dependency on qregex for qregex-test
@jnthn jnthn A little speedup to NFA evaluation. 5e21bba
@diakopter diakopter propagate --rxtrace (and its trace depth for indents) to inner languages 9befba5
Commits on May 27, 2012
@diakopter diakopter trash my crappy quant NFA generator (lots of bad code); replace with …
…one that works and handles % (and %%)
@diakopter diakopter fix off-by-two error; JimmyZ_++ spotted it. This means %/%% are in fa…
…ct not yet working. diakopter-- diakopter--
@jnthn jnthn Revert diakopter++'s NFA changes.
Unfortunately, they break various NQP tests and the Rakudo build.
@jnthn jnthn Workaround separator/NFA bug for now; gets us able to parse \x[...] a…
…nd \o[...] in regexes again.
@jnthn jnthn Complete guess-fix for the \c[...] issue. 16654ba
@jnthn jnthn Make <alpha> LTM-declarative. cf4bf1f
@jnthn jnthn Don't disregard backtrack modifiers directly placed on atoms. This wa…
…s why assertions.t failed in Rakudo.
@moritz moritz Merge remote branch 'origin/qbootstrap' 48f6a30