k. tanaka-ishii, semiotics of programming

2
Artificial Intelligence 175 (2011) 930–931 Contents lists available at ScienceDirect Artificial Intelligence www.elsevier.com/locate/artint Book review K. Tanaka-Ishii, Semiotics of Programming. Kevin McGee National University of Singapore, Singapore article info Article history: Received 30 September 2010 Accepted 28 November 2010 Available online 19 January 2011 This book is an important, substantive contribution to both semiotics and to the formal analysis of programming lan- guages. Tanaka-Ishii’s main goal with this book is to provide a rigorous semiotic analysis of what computers can and cannot do – and to use that analysis to show how computational systems can be developed that overcome some of their current limitations (specifically, problems associated with self-reference). Readers most likely to benefit from the book are semioticians who would like to understand how concepts from that domain elucidate formal aspects of programming (and how insights from formal program analysis can illuminate and po- tentially resolve semiotic debates) – and likewise for those engaged in the formal analysis of computer programs. It also explores several key topics relevant for AI researchers (e.g., self-reference, the formalization of semantics, temporal changes to natural language), suggesting an affinity with other work at the intersection of AI and creative systems [4,5,3]. To date, there has been surprisingly little research exploring how semiotics and formal program analysis can inform each other (although, see the early paper [6]). And although there has been semiotic analysis of computational [1] and HCI [2] topics, the authors of such works tend to be primarily either semioticians analyzing technology or technologists using semiotic concepts (sometimes quite broadly) to discuss technology. Tanaka-Ishii is clearly expert in both domains and her analysis has significant formal depth and insight. The book is structured into three main parts: what signs are (models of signs), what kinds of signs exist and what they represent, and what systems can be constructed from signs. The main concept used to frame this exploration is ’reflexivity’ (or self-reference); indeed, one of Tanaka-Ishii’s premises is that “a sign is essentially reflexive with its signification articu- lated by the use of itself” [p. 1]. Self-reference is famously problematic in formal systems, but, she argues, it is essential to meaning-making (signification) in natural language so addressing the issue of reflexivity is crucial to extending the capabil- ity of formal systems. The author shows how reflexivity is dealt with by two major semiotic paradigms: that of Ferdinand de Saussure in which signs are modeled as dyadic (a sign consists of a label and a meaning) – and that of Charles S. Peirce in which signs are modeled as triadic (a sign consists of a label, an idea, and a referent). She then argues that the dyadic model corresponds to the functional programming paradigm while the triadic model corresponds to the object-oriented paradigm. By the end of the book, she is able to say a great deal about the different interpretive strategies for reflexive expressions used in different sign systems, about different classes of reflexivity, and about the degree of reflexivity that current computer systems can exploit. Along the way, Tanaka-Ishii delves into difficult technical problems in both semiotics and the formal study of computer programs. This is, of course, challenging: for work that involves using concepts from two different disciplines to illuminate each other, it is never easy to present the right combination of introductory versus specialized material. For the most part, Tanaka-Ishii succeeds admirably with this. For example, many chapters set the stage for the more detailed discussion of E-mail address: [email protected]. doi:10.1016/j.artint.2010.11.023

Upload: kevin-mcgee

Post on 26-Jun-2016

241 views

Category:

Documents


16 download

TRANSCRIPT

Page 1: K. Tanaka-Ishii, Semiotics of Programming

Artificial Intelligence 175 (2011) 930–931

Contents lists available at ScienceDirect

Artificial Intelligence

www.elsevier.com/locate/artint

Book review

K. Tanaka-Ishii, Semiotics of Programming.

Kevin McGee

National University of Singapore, Singapore

a r t i c l e i n f o

Article history:Received 30 September 2010Accepted 28 November 2010Available online 19 January 2011

This book is an important, substantive contribution to both semiotics and to the formal analysis of programming lan-guages. Tanaka-Ishii’s main goal with this book is to provide a rigorous semiotic analysis of what computers can and cannotdo – and to use that analysis to show how computational systems can be developed that overcome some of their currentlimitations (specifically, problems associated with self-reference).

Readers most likely to benefit from the book are semioticians who would like to understand how concepts from thatdomain elucidate formal aspects of programming (and how insights from formal program analysis can illuminate and po-tentially resolve semiotic debates) – and likewise for those engaged in the formal analysis of computer programs. It alsoexplores several key topics relevant for AI researchers (e.g., self-reference, the formalization of semantics, temporal changesto natural language), suggesting an affinity with other work at the intersection of AI and creative systems [4,5,3].

To date, there has been surprisingly little research exploring how semiotics and formal program analysis can informeach other (although, see the early paper [6]). And although there has been semiotic analysis of computational [1] andHCI [2] topics, the authors of such works tend to be primarily either semioticians analyzing technology or technologistsusing semiotic concepts (sometimes quite broadly) to discuss technology. Tanaka-Ishii is clearly expert in both domains andher analysis has significant formal depth and insight.

The book is structured into three main parts: what signs are (models of signs), what kinds of signs exist and what theyrepresent, and what systems can be constructed from signs. The main concept used to frame this exploration is ’reflexivity’(or self-reference); indeed, one of Tanaka-Ishii’s premises is that “a sign is essentially reflexive with its signification articu-lated by the use of itself ” [p. 1]. Self-reference is famously problematic in formal systems, but, she argues, it is essential tomeaning-making (signification) in natural language so addressing the issue of reflexivity is crucial to extending the capabil-ity of formal systems. The author shows how reflexivity is dealt with by two major semiotic paradigms: that of Ferdinandde Saussure in which signs are modeled as dyadic (a sign consists of a label and a meaning) – and that of Charles S. Peircein which signs are modeled as triadic (a sign consists of a label, an idea, and a referent). She then argues that the dyadicmodel corresponds to the functional programming paradigm while the triadic model corresponds to the object-orientedparadigm. By the end of the book, she is able to say a great deal about the different interpretive strategies for reflexiveexpressions used in different sign systems, about different classes of reflexivity, and about the degree of reflexivity thatcurrent computer systems can exploit.

Along the way, Tanaka-Ishii delves into difficult technical problems in both semiotics and the formal study of computerprograms. This is, of course, challenging: for work that involves using concepts from two different disciplines to illuminateeach other, it is never easy to present the right combination of introductory versus specialized material. For the most part,Tanaka-Ishii succeeds admirably with this. For example, many chapters set the stage for the more detailed discussion of

E-mail address: [email protected].

doi:10.1016/j.artint.2010.11.023

Page 2: K. Tanaka-Ishii, Semiotics of Programming

Book review / Artificial Intelligence 175 (2011) 930–931 931

semiotics and the formal characteristics of programs by first presenting a fundamental semiotic or programming concept(or conceptual distinction) in terms of different works of art.

In some cases, this use of art works to illustrate concepts is less successful. The semiotic paradigms of de Saussure(dyadic) and Peirce (triadic), for example, are introduced in relation to two seemingly realistic paintings. The argument ismade that one of them “excludes deeper meanings” but that, in the case of the other painting, “every object . . . carries ameaning and interpretation, and as a whole the painting conveys a message” [p. 27]. As with the other artistic examplesin the book, these are used to effectively highlight the main concepts and issues. However, one of the problems with theseparticular examples is that the “carried meaning” of the second painting is not immediately obvious – and in order to arriveat an understanding of the several proposed symbolic interpretations requires a great deal of cultural knowledge, familiaritywith symbolic conventions and allusions that are period-specific (the painting in question is from the mid-1600s), and thelike. This is, of course, consistent with the triadic model of signs, but it is not clear why the same symbolic interpretationmight not apply to the other painting.

All in all, however, the point just made is quibbling relative to the significant strengths and merits of the book as awhole. This is a book of depth that will reward careful reading and rereading.

References

[1] Peter B. Andersen, A Theory of Computer Semiotics: Semiotic Approaches to Construction and Assessment of Computer Systems, Cambridge UniversityPress, April 1997.

[2] Clarisse S. Desouza, The Semiotic Engineering of Human–Computer Interaction, The MIT Press, March 2005.[3] Ricardo Gudwin, Joao Queiroz (Eds.), Semiotics and Intelligent Systems Development, Idea Group Publishing, 2006.[4] Douglas R. Hofstadter, Gödel, Escher, Bach: An Eternal Golden Braid, Basic Books, New York, 1979.[5] Michael Mateas, Expressive AI: A semiotic analysis of machinic affordances, in: Proceedings of the 3rd Conference on Computational Semiotics and New

Media, University of Teesside, UK, 2003.[6] H. Zemanek, Semiotics and programming languages, Communications of the ACM 9 (3) (1966) 139–143.