Skip to main content

You are not logged in. Your edit will be placed in a queue until it is peer reviewed.

We welcome edits that make the post easier to understand and more valuable for readers. Because community members review edits, please try to make the post substantially better than how you found it, for example, by fixing grammar or adding additional resources and hyperlinks.

Required fields*

5
  • 1
    What would the example you provided look like in the new form? Commented Mar 3, 2016 at 23:57
  • 1
    Are you certain that this is the answer? or is it one of many possible reasons that it uses such an approach? Commented Mar 4, 2016 at 1:24
  • 5
    This is true for C, and the circumfix type syntax has largely been recognized to be a mistake. However, other languages imitate C or Algol and put the type before the variable name without this insane circumfix syntax, e.g. Java or C#, or even C++ without the C subset. None of these have problems with higher-order functions, e.g. modern C++ might write std::function<int(std::function<int(int x, int y)> ff, int b)> fp which has none of the ambiguities you mentioned. Commented Mar 4, 2016 at 10:04
  • The C++ syntax you showed is doing something entirely different. To improve the C pointer syntax you use typedef or using in C++. Commented Jun 17, 2020 at 15:32
  • I can scan down the left side of the page and easily find my function names. -This alone should be reason enough to go with postfix languages Commented Feb 3, 2022 at 1:02