Get the latest tech news

References are like jumps


are like jumps In a high-level language, the programmer is deprived of the dangerous power to update his own program while it is running. Even more valuable, he has the power to split his machine into a number of separate variables, arrays, files, etc.; when he wishes to update any of these he must quote its name explicitly on the left of the assignment, so that the identity of the part of the machine subject to change is immediately apparent; and, finally, a high-level language can guarantee that all variables are disjoint, and that updating any one of them cannot possibly have any effect on any other.

Unlike lazy streams, the monadic interface for IO was more effectively compositional, and it was adopted by the community around the primary pure functional programming language, Haskell, with great eagerness. To some extent this is the fault of the advocates of monads, who rather than trying to make their designs clearer to the uninitiated have fallen into a cult-like worship of the awesome power of category theory that convinces none but the true believer. Whether in Hylo or in another language, I eagerly await the development of additional techniques to provide this guarantee, so that, contra Tony Hoare, the introduction of references, like jumps, shall be a step backward from which we have well and truly recovered.

Get the Android app

Or read this on Hacker News

Read more on:

Photo of jumps

jumps

Photo of references

references

Related news:

News photo

Bye, robot: Atlas HD retires after 11 years of jumps, flips and falls

News photo

Final Fantasy 9 references in Final Fantasy 14 Dawntrail are "secret", says director

News photo

More references to new HomePod with a screen found in tvOS 17.4