I have a question about enumerations and modules. I have an enumeration for all ascii characters in a module, like this (abbreviated):
Code: Select all
Enumeration ascii 0
#NUL
#SOH
#STX
#ETX
#EOT
#ENQ
#ACK
#BEL
#BS
#HT
#LF
#VT
#FF
#CR
; and so forth
EndEnumeration
EndDeclareModule
Module ASCII
EndModule
Code: Select all
Procedure.b IsSingleCharToken(c.i)
Select c
Case #LF,
ASCII::#LPAREN,
ASCII::#RPAREN,
ASCII::#COLON,
ASCII::#COMMA,
ASCII::#PERIOD,
ASCII::#LBRACKET,
ASCII::#RBRACKET,
ASCII::#LBRACE,
ASCII::#RBRACE
ProcedureReturn #True
Default
ProcedureReturn #False
EndSelect
EndProcedure
That's no problem in this example, but seems pretty bad in general. When I write a module, shouldn't I be able to be sure that no name clashes can occur because of things defined outside of the module as long as the module is not used?
Is that a bug?