CbCにおけるデータセグメントの設計

Kaito Tokumori

研究目的

当研究室ではプログラムをコードセグメント、データセグメントという単位を用いて書くという手法を提案しており、その手法を用いてプログラミングを行う言語として"CbC"の開発を行っている。

CbCにおいてコードセグメントは処理の単位に相当し、データセグメントはその対象となるデータの単位となる。

データセグメントは C の構造体のように複数のデータ型の値を持つことができ、後から拡張することが可能である。また、構造を示すシグネチャを持ち、それを参照することで異なるバージョンのプログラム間でも正しく動作することが可能になる。

今週やったこと

data segmentの宣言, アクセス

int main() {
  __data ds; // declaration
  goto code1(ds);
}

// deta segment definition should be generated automatically.
__code code1(input inds, output outds){
        :
  inds.intdata = 1; // access
  inds.string = "data segment";
        :
}
        

data segmentの実装