[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Prefix, not postfix

This page is part of the web mail archives of SRFI 88 from before July 7th, 2015. The new archives for SRFI 88 contain all messages, not just those from before July 7th, 2015.

   Date: Tue, 11 Apr 2006 18:22:37 -0400
   From: Marc Feeley <feeley@iro.umontreal.ca>

   I'm not sure I understand your point.  I'm advocating for a colon  
   suffix.  SRFI 42 uses a colon prefix on identifiers (which by the way  
   is illegal in R5RS except for a lone colon).  So keyword objects  
   using a colon suffix syntax do not hinder in any way SRFI 42 or any  
   R5RS compliant code, but a colon prefix syntax does.

My point is just that changing the meaning of a colon as either a
prefix or a suffix will break some existing R5RS-compliant code.
According to R5RS section 7.1.1, a trailing colon is most certainly
allowed in identifiers:

  <identifier> ---> <initial> <subsequent>* | <peculiar identifier>
  <initial> ---> <letter> | <special initial>
  <special initial> ---> ... | `:' | ...
  <subsequent> ---> <initial> | <digit> | <special subsequent>

Since `:' is a special initial, it is also an initial, and
transitively also a subsequent; it may therefore be used at the end of
an identifier, according to the rule for <identifier>.

   I know that some code has used colon suffixes on identifiers (for  
   example the withdrawn iota: function in SRFI 1), but there are very  
   few uses of this and it is not portable anyway so I don't think this  
   argument has much weight.

Not portable?  Only to Scheme systems that are already non-compliant.
Of the Schemes I use regularly, all allow colon suffixes in