[fpc-pascal] Bls: Quick Modern Object Pascal Introduction, for Programmers

Marc Hanisch marc.hanisch at googlemail.com
Tue Jun 21 08:15:56 CEST 2016


Thanks Michalis for your excellent work! It's very important to left the
early 90s associated with Pascal programming behind us and to encourage new
developers to have a look onto the modern aspects of Object Pascal!

Maybe a little bit offtopic, but I have a question regarding the compiler
directives: is there a way to tell Lazarus to use these directives in every
new unit?

Best regards,
Marc

2016-06-21 7:47 GMT+02:00 Michalis Kamburelis <michalis.kambi at gmail.com>:

> 2016-06-20 5:31 GMT+02:00 Mr Bee <pak.lebah at yahoo.com>:
> [...]
> > I have a little suggestion though. I prefer to use {$J-} directive in my
> > Pascal program. I think it encourages good programming practice in
> Pascal.
> > The {$J-} means constant is a constant no matter how you declare it. To
> bad
> > FPC is still using {$J+} as the default even in the {$MODE OBJFPC}, which
> > means a constant becomes a variable once you include the data type
> > eventhough it's declared within a 'const' block. CMIIW.
> >
>
> Ouch. For some reason, I thought that {$J-} is the default in {$mode
> objfpc} since years, and we have left that mistake behind us. Quick
> test showed me that I was mistaken. This makes a *lot* of my code less
> safe that I assumed, as in many recent projects I didn't bother to
> explicitly use {$J-}.
>
> This is an excellent suggestion then, thank you. I updated the
> document to encourage everywhere doing
>
>   {$mode objfpc}{$H+}{$J-}
>
> at the beginning.
>
> I definitely *do not want* to explain to any new programmer what a
> "writeable constant" is... This concept should remain buried:)
>
> Regards,
> Michalis
> _______________________________________________
> fpc-pascal maillist  -  fpc-pascal at lists.freepascal.org
> http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freepascal.org/pipermail/fpc-pascal/attachments/20160621/826149f0/attachment.html>


More information about the fpc-pascal mailing list