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

Karoly Balogh (Charlie/SGR) charlie at scenergy.dfmk.hu
Tue Jun 21 14:27:49 CEST 2016


Hi,

On Tue, 21 Jun 2016, Mr Bee wrote:

> Keeping backwards compatibility [BC] is great. However, thinking about
> forwards compatibility [FC] is also necessary. Keeping BC too tight will
> also hold back our forward thinking. We will be stucked in the past
> forever. No matter how hard we keep the BC, we eventually will break it
> anyway. If we want FPC to be known as modern programming language, just
> let go off the past. Unless, we are happy to be still associated with
> the old 70's Pascal.

Well, actually, ObjFPC and other modes still have plenty of legacy...
Large chunks of the SysUtils unit are legacy. Not to mention the bunch of
Windowsism coming from Delphi all over the RTL and Packages. Heck, Lazarus
even reimplemented parts of the Windows API for better legacy Delphi code
compatibility...

Either we care about compatibility and FPC remains what it is, or if we
really want a *MODERN* language, just go the Oxygene path, and add a more
modern syntax as well. For example, I dislike the interface vs.
implementation separation, it's much better to mark the public stuff with
public, like in Java, etc... Also, some of the syntax limitations also
feel really archaic these days. Fix the dangling else. Add a better
for/foreach loop. Also, lets drop write(), which is an exception to any
Pascal language rule with its varargs syntax, etc... I could go on, and I
didn't even touch the RTL legacies topic... These would be the important
things IMO, not the name of the default stringtype (which is changed by
whoever owns Delphi every 3 years anyway), or a single option in the
config file, because that's so future...

My 2 c,
---
Charlie


More information about the fpc-pascal mailing list