Holywar

From Lazarus wiki
Revision as of 22:45, 27 February 2010 by Skalogryz (talk | contribs) (→‎Q&A)
Jump to navigationJump to search

The page is dedicated to holywars about Pascal language (any kind of pascal included).

If you're Pascal developer being involved into a next flame about Pascal language, you're encouraged to use the page.

Why do we use Pascal

(if you don't use (Object) Pascal, please don't edit the section)

Often programmers are free to choose their tools, especially then coding as a hobby (rather than for their living). Lots of Pascal programmers choose the language because of:

Q&A

Q: Why there're so many limitations on what expressions i can use in "for" and "while" operators? Why can't i define a really complex type in one line?

A: to force you to create maintainable and readable code


Q: Pascal doesn't allow to specify complex types without intermediate types. I.e. "an array of pointers to a function that accepts 2 ints and returns a pointer to function that returns a float" <c> float (*(*a[10])(int, int))() </c>

A: Has it any advantage to define no intermediate type? <delphi> type

 TFloatRetFunc = function : single; 
 TSomeArray = array [0..1] of function (a, b: Integer): TFloatRetFunc;

</delphi>

Advantages over C/C++

  • no preprocessor (better code reading and understanding)
  • no hardly readable and poorly debugged STL