CoCKTaiL
CCK - CoCKTaiL Part 3
BlogUpdate
As promised in my last post, I will present a CoCKTaiL-based code-generator, which accepts CoCKTaiL input and generates php suitable for importing into Drupal via the CCK Content-copy module.
DrupalCon Session
I have submitted a session proposal on Taming CCK configurations with CoCKTail for DrupalCon Boston. Please consider reviewing this and voting for it if you would be interested in seeing CoCKTaiL gain a wider following.
Code available via anonymous SVN
I have made code available via anonymous svn at Raincity's public SVN repository. I encourage anyone interested to have a look at this, take it for a spin, and contribute! But, be warned that this is still very experimental code.
Status
The current version of the code supplies a command-line validator, which checks CoCKTaiL code. The error reporting is extremely naive, still. Also, there is a template-based code generator, which will take CoCKTaiL as input, and generate php code suitable for import into a Drupal application. Both of these are specified as PHP Lemon input files, sharing a common grammar (and Lexer), of course.
CoCKTaiL, part 2
BlogThe CoCKTaiL grammar
In my last article I gave some examples and discussed the movtivation for CoCKTaiL, a Drupal CCK type language. I promised that I would describe the grammer I have been working on and say a few words about the tools I have been using.
I should begin by saying that this is very much a work in progress, so what you see here should not be regarded as a specification, or any kind of promise of the final shape of things to come. Rather, it is an invitation to join in the party and help to bring this tool into being. I welcome any comments, suggestions, and help with development, testing, and documentation. In particular, if you have thoughts on how the grammar itself could be changed to make it simpler, or otherwise better, I'd love your input.
Without further ado, then, here is the grammar (at the current moment) of CoCKTaiL. The following is the output of the relatively new lemon parser-generator, about which we shall say more just a bit later. Note: the numbers at the start of each line are not part of the output; they have been added to allow reference to particular lines in the following discussion.











