Uniform function call syntax: Difference between revisions

Content deleted Content added
Yobot (talk | contribs)
m Examples: WP:CHECKWIKI error fixes using AWB (12002)
m v1.38 - WP:WCW project (Heading start with three "=" and later with level two)
Line 2:
using the syntax for method calls (as in [[Object-oriented programming]]), by using the [[receiver (object oriented programming)|receiver]] as the first parameter, and the given arguments as the remaining parameters.<ref>http://dlang.org/function.html#pseudo-member</ref> UFCS is particularly useful when function calls are chained.,<ref>http://ddili.org/ders/d.en/ufcs.html</ref> behaving similar to pipes, or various dedicated operators available in functional languages for passing values through an expression. It allows free-functions to fills a role similar to [[extension method]]s in some other languages. Another benefit of the method call syntax is use with 'dot-autocomplete' in IDEs, which use type information to show a list of available functions, dependant on the context. When the programmer starts with an argument, the set of potentially applicable functions is greatly narrowed down, aiding discoverability.
 
=== C++ proposal ===
It has been proposed for addition to C++ by [[Bjarne Stroustrup]] and [[Herb Sutter]], to reduce the ambiguous decision between writing free functions and member functions, to simplify the writing of templated code. Many programmers are tempted to write member-functions to get the benefits of the member-function syntax, however this leads to excessive [[Coupling (computer programming)]] between [[Class (computer programming)|classes]].