[fpc-pascal] typed constants...
Michael Van Canneyt
michael at freepascal.org
Mon Oct 23 19:30:17 CEST 2006
On Mon, 23 Oct 2006, David Mears wrote:
> is this bit of syntactic weirdness a fpc element, or from delphi. I've
> largely been away from pascal since the early 90s, mostly only using it to
> write dos-y non-object-y utilities, for which it excels.
> typed constants seem to basically to be like the static keyword from c.. but
> not a var modifier.. It just seems it should be a modifier for var. such as
> var st:string static;.. since.. constant is usually pretty wrapped up in the
> meaning of "not changing." and that it has a constant, initialized, reserved
> place in memory is.. well.. abstract. Especially since you can initialize
> your variables now, then the only thing that makes it special is that it is a
> global variable with a local scope.
> I'm not the sort who thinks pascal should be C, because I hate having to work
> with C or it's work likes. I just think that being able to call something
> constant and change it muggles the syntactic clarity of the language, which is
> otherwise rather good.
Initialized constants are deprecated, and should be replaced by initialized
variables, as in Delphi:
A : String = 'Some string';
"Real" constants (in the sense of 'not changing') do not need to be typed in
the first place so
A = 'Some String';
Will do just fine. You now have both possibilities and they each have clear
and unambiguous meaning.
More information about the fpc-pascal