Path: utzoo!attcan!uunet!lll-winken!lll-tis!helios.ee.lbl.gov!nosc!ucsd!rutgers!njin!princeton!mind!romero From: romero@mind.UUCP (Antonio Romero) Newsgroups: comp.lang.lisp Subject: Disabling colons in CommonLisp Keywords: help! Message-ID: <2694@mind.UUCP> Date: 1 Aug 88 15:35:21 GMT Organization: Cognitive Science, Princeton University Lines: 20 I'm currently porting a production system from FranzLisp to Lucid CommonLisp 2.1.1 running on a Sun. I've run into a problem which I can't find a good answer for, myself. What i need to be able to do is end certain keywords in the productions with colons -- e.g. "action:" or "belief:". My first thought was to try just making ":" into a macro character whose associated function would return no values, so that colons effectively disappear from the input stream. This worked for most purposes, but broke things like "(member 'someatom somelist :test 'equal)" because ":test" was no longer recognized as a keyword-- all lisp ever saw was "(member 'someatom somelist test 'equal)." My solution also made it impossible to reference symbols in other packages. So I need a solution which would allow tokens to end in colons, without breaking the other special interpretations associated with colons. Ideally this would be possible within the CommonLisp standard, so as to be portable, but I'll settle for a non-portable solution if I have to. Has anyone out there solved this one already? -Antonio Romero romero@confidence.princeton.edu