Typestate: A Programming Language Concept for Enhancing Software Reliability
変数の型だけでなく、宣言されただけなのか、領域が割り当てられ たのか、値が代入されたのか、といった状態まで追いかけることでプログラムを安全にしようという論文。「状態」を typestate と言って、いわゆる状態遷移系として定義する。あとはプログラムの制御フローにしたがって typestate の変化を追いかけて、変な状況になったらそのプログラムはよろしくないと判断する。考え方は面白いと思うから、応用を探したい。
author="Robert E. Strom and Shaula Yemini",
title="{Typestate: A Programming Language Concept for Enhancing Software Reliability}",
journal="IEEE Transactions on Software Engineering",
volumn="12",
number="1",
pages="157--171",
year="1986"