Hacker News new | ask | show | jobs
by absdiff 876 days ago
Python and Haxe have a function-like cast like that, but the argument order differs between the languages. I prefer D's approach because it doesn't have this opportunity for confusion. The prefix operator only has one place for the type to go.

https://docs.python.org/3/library/typing.html#typing.cast

    typing.cast(typ, val)
https://haxe.org/manual/expression-cast.html

    cast expr; // unsafe cast
    cast (expr, Type); // safe cast
1 comments

it doesn't have this opportunity for confusion

1) it'll be a compiler error anyways

2) of course there's room for confusion. It could be

cast(T) var

Or it could be

cast(var) T

And you must remember which is correct.