pacc logo

News

Default expressions

I finally got round to implementing a simple but highly useful feature in the language, which I'm calling default expressions. It's probably simplest to explain by showing the test case: Read More...

A new bug

Unfortunately, there are too many projects in this world, and pacc has been neglected for too long. However, I have been looking at one of those other projects recently, in fact, the one that convinced me I needed to write pacc in the first place! A new bug has turned up. (Hooray?) Read More...

Tying the loop tighter

If it seems to have gone quiet around here recently, that's only partly because it's summer, and the lure of the outdoors is stronger than staying in with my head in a chunk of code. I have been gnawing away at a major subproject: converting a real language based on yacc over to pacc. This has been quite an eye-opener! Read More...

Feeding finale

That was almost too easy. It took just a few minutes to implement $ as new syntax to indicate feeding points (the new node type in the AST is called cafe), then update the cooker, eat a few test cases, and wash up by removing the -r option. Read More...

Rethinking feeding

I thought I'd cracked it. Following Bryan Ford, I have always written my spacing at the end of “lexical” rules, with an additional call at the beginning of the start rule. For example, picking up again a slightly improved version of our trivial digit adder, and again ignoring feeding for the moment I would have written: Read More...

Documenting feeding

I've always been very proud of feeding. It solves a problem which Bryan Ford highlights in his original thesis, and as far as I know nobody else has solved this problem. (If anybody would like to award me a PhD for this, please get in touch at the usual address.) Life has taught me that ideas are cheap. To implement an idea, well, that's... Read More...

Back it up

This has got out of hand. I really like the work that I've been doing, and I'm certain that I will incorporate it into pacc. But not this release. Read More...

See older news

feed

Donate

Support the development of pacc with a donation! We accept donations in BitCoin or via PayPal who handle almost any other form of payment.