On 11/10/2012, at 11:35 PM, john skaller wrote: Actually its NOT a bug in the compiler as such .. its worse ..
> I was then panic-king because I got this: Dobes is going to kill me :-) > regdef binder = "ctor" (spaces vlist)?; > regdef spaces = " "*; Now, you must realise that "regdef" isn't magical. Here's the grammar: tstatement := "regdef" sdeclname "=" sregexp[ralt_pri] ";" =># """ `(ast_val_decl ,_sr ,(first _2) ,(second _2) (some (ast_lookup ( ,(noi 'Regdef) "regex" ()))) (some ,_4)) """; So you see, regdef just creates a "val" initialised to a data structure specified in the Regdef class, type regex: class Regdef { union regex = | Alts of list[regex] | Seqs of list[regex] | Rpt of regex * int * int | Charset of string | String of string | Group of regex | Perl of string ; So there's no magic. It's a simple user bug that the compiler SHOULD have caught. Let's rewrite it: val binder = ... spaces ... val spaces = .... -- john skaller skal...@users.sourceforge.net http://felix-lang.org ------------------------------------------------------------------------------ Don't let slow site performance ruin your business. Deploy New Relic APM Deploy New Relic app performance management and know exactly what is happening inside your Ruby, Python, PHP, Java, and .NET app Try New Relic at no cost today and get our sweet Data Nerd shirt too! http://p.sf.net/sfu/newrelic-dev2dev _______________________________________________ Felix-language mailing list Felix-language@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/felix-language