Hello,
I'm pleased to announce that I will hold a 90 minutes session at the
next ACCU conference, Bristol, April 2015. The abstract follows:
Referential transparency is overrated
The expression "referential transparency" itself is already
confusing and subject to interpretation, according to whether you're
in the context of natural, functional or imperative languages. In
any of those contexts however, referential transparency is generally
regarded as a Good Thing(tm). In computer science for example, it
helps to reason about programs, prove them, optimize them, and even
enables some paradigms such as normal order (lazy) evaluation.
In this talk, we claim that referential transparency is overrated
because it also limits your expressive power. We demonstrate some
neat and tricky things that we can do only when referential
transparency is broken, and we explain the language constructs and
techniques that allow us to break it intentionally, both at the
regular and meta-programming levels. Such tools include duality of
syntax and syntax extension, mixing of different scoping policies,
intentional variable capture and free variable injection, lexical
communication channels, anaphoric macros.
Please fasten your seat belts, as we're going to explore mostly
uncharted territory. Whether these techniques are considered
extremely powerful, extremely unsafe, or extremely bad style is a
matter of personal taste. In fact, they are probably all of that,
and much more...
--
My new Jazz CD entitled "Roots and Leaves" is out!
Check it out:
http://didierverna.com/records/roots-and-leaves.php
Lisp, Jazz, Aïkido:
http://www.didierverna.info