Need a metavalue singleton kinda thingy as a reserved key...

Noah noah at
Sun Aug 11 18:20:24 CEST 2002

Oh, so you want a motivation for doing this?

I'm creating a generic Finite State Machine class.
As part of the input to the FSM you specify a map from
    (input_symbol, state)  -->  (action, next_state)
The input_symbol can be any object or value you want.
I want a convenient way for the user to specify
special symbols that the FSM treats differently
than regular symbols. For example, some types of
special symbols might be "MATCH_ANY", "MATCH_ALWAYS", 
"LAMBDA", "DEFAULT_MATCH". These meta-symbols are
special in that the FSM will check for a match on them
before or after other possible transitions. 
I suppose I could specify the special meta-transitions 
using a separate method so that there is no ambiguity, but 
my initial goal was to limit the number of methods.

And I admit this is a bit pedantic anyway since I have never
seen anybody use an FSM to match anything except characters.
Originally I used None as a meta-symbol for "ANY", but then 
I came to a situation where I actually wanted to match None
Later I came up with more than one meta symbol, but
I had only one None :-) ...

Since I could not cleanly do what I wanted I thought
that maybe I was looking at this the wrong way.


-----Original Message-----
From: holger krekel [mailto:pyth at]
Sent: Sunday, August 11, 2002 7:46 AM
To: Noah
Cc: python-list at
Subject: Re: Need a metavalue singleton kinda thingy as a reserved

Noah wrote:
> I have a class where you can add values to a dictionary.
> I want to have a special meta key that I can use to reserve a spot
> in the dictionary. The problem is that the keys in the dictionary
> can be almost anything including None, so I can't use None as my
> reserved value. Plus I may want to defined more than one reserved key. 
> Is there a smarter way to create meta values to denote reserved keys?

Would you mind describing the problem where this is supposed to be
the solution for? 


More information about the Python-list mailing list