# HG changeset patch # User Kaito Tokumori # Date 1425374435 -32400 # Node ID ddc8ec20ed6e5c0da941c02830de37e5b2a352e3 # Parent bd84d247e3c4da06856ebb0f5eb9e211f4bdd8e3 fix date diff -r bd84d247e3c4 -r ddc8ec20ed6e s6/2015_02_24.html --- a/s6/2015_02_24.html Sun Feb 22 01:23:53 2015 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,156 +0,0 @@ - - - - - Presen - - - - - - - - - - - - - - - - - - - - - - - - -
- - -
- -
- - - -
- - - - - - - -
-

CbCにおけるコードセグメントのプロトタイプの自動生成

-
- Kaito Tokumori - -
-
-
- -
-

研究目的

-

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

-

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

-

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

-
- -
-

今週やったこと

-
    -
  • コードセグメントのプロトタイプ宣言を自動生成する手法の考案 -
-
- -
-

前提条件

-
    -
  • プロトタイプ宣言の自動生成はコードセグメントに対してのみ行う。 -
  • プロトタイプ宣言を自分で書くことも許す。 -
  • 定義が見つからなかった場合は何もせず、エラー出力はclang/LLVMに任せる。 -
-
- -
-

Plan A : 構文解析中にプロトタイプ宣言の自動生成を行う

-
    -
  1. プロトタイプ宣言のないコードセグメントへの継続を発見次第その定義を検索 -
  2. 定義に基づいてプロトタイプ宣言の自動生成 -
-

利点

-
    -
  • プログラマが書いたプロトタイプ宣言との衝突を気にしなくて良い -
  • 引数に構造体を含む場合にその定義を気にしなくて良い -
-

欠点

-
    -
  • 自動生成を行う度に全体を検索することになる -
-
- -

Plan B : 最初にファイル全体を読んで自動生成を行う

-
    -
  1. 構文解析前にファイル全体を読み込む -
  2. 構造体の定義を解析 -
  3. コードセグメントの定義からプロトタイプ宣言の生成 -
-

利点

- -

欠点

- -
- -
- -
- - - - diff -r bd84d247e3c4 -r ddc8ec20ed6e s6/2015_03_03.html --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/s6/2015_03_03.html Tue Mar 03 18:20:35 2015 +0900 @@ -0,0 +1,156 @@ + + + + + Presen + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+ +
+ + + +
+ + + + + + + +
+

CbCにおけるコードセグメントのプロトタイプの自動生成

+
+ Kaito Tokumori + +
+
+
+ +
+

研究目的

+

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

+

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

+

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

+
+ +
+

今週やったこと

+
    +
  • コードセグメントのプロトタイプ宣言を自動生成する手法の考案 +
+
+ +
+

前提条件

+
    +
  • プロトタイプ宣言の自動生成はコードセグメントに対してのみ行う。 +
  • プロトタイプ宣言を自分で書くことも許す。 +
  • 定義が見つからなかった場合は何もせず、エラー出力はclang/LLVMに任せる。 +
+
+ +
+

Plan A : 構文解析中にプロトタイプ宣言の自動生成を行う

+
    +
  1. プロトタイプ宣言のないコードセグメントへの継続を発見次第その定義を検索 +
  2. 定義に基づいてプロトタイプ宣言の自動生成 +
+

利点

+
    +
  • プログラマが書いたプロトタイプ宣言との衝突を気にしなくて良い +
  • 引数に構造体を含む場合にその定義を気にしなくて良い +
+

欠点

+
    +
  • 自動生成を行う度に全体を検索することになる +
+
+ +

Plan B : 最初にファイル全体を読んで自動生成を行う

+
    +
  1. 構文解析前にファイル全体を読み込む +
  2. 構造体の定義を解析 +
  3. コードセグメントの定義からプロトタイプ宣言の生成 +
+

利点

+ +

欠点

+ +
+ +
+ +
+ + + +