On 2025-09-04 08:05, Sven Barth via fpc-devel wrote:
Michael Van Canneyt via fpc-devel <[email protected]>
schrieb am Di., 2. Sep. 2025, 14:28:

On Tue, 2 Sep 2025, Sven Barth via fpc-devel wrote:

Hairy Pixels via fpc-devel <[email protected]>
schrieb am Di.,
2. Sep. 2025, 09:50:

On Sep 1, 2025 at 3:44:17 PM, Nikolay Nikolov via fpc-devel <
[email protected]> wrote:

You're more likely to see things like:

a := if x > 10 then 1 else -1;

instead of

if x > 10 then
a := 1
else

a := -1;


Yes I agree but in C-like languages I do use it in function
parameters
just as often. Still feeling like IfThen if made a real intrinsic
would be
most readable and Pascal-like. Since this new expression exists
now making
the intrinsic would be extremely trivial.


It doesn't matter whether it's trivial or not. An IfThen()
intrinsic would
have a different behavior from *any* other function-like element
and thus
would be a bad idea. Thus there will be *no* auch intrinsic.

I don't think this is a good argument:

Write(), Writeln, WriteStr and Str() are also intrinsics with
"different
behaviour" from all other function, intrinsic or not:

The : formatting for one, and some arbitrarily limited varargs-like
behaviour for another.

Yet these are firmly entrenched in pascal.

So at least on these grounds, the IfThen() has as much reason for
existence as these
"real pascal" functions, in my opinion.

But that's also not a reason that there should be more intrinsics that
behave different from normal functions.

I agree on that.

I only meant to indicate the particular behaviour is not a reason to refuse a certain intrinsic. TypeInfo,SizeOf: they take types as argument. This is also different from regular functions. We have no choice of course, the intrinsics are necessary to be able to deviate from what is "normal" in pascal.

Personally, I think we already have too much intrinsics to begin with;
no matter their behaviour. But that is another discussion entirely...

Michael.
_______________________________________________
fpc-devel maillist  -  [email protected]
https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel

Reply via email to