2007-08-01から1ヶ月間の記事一覧
ということはコード補完の論文も.と思ってCode Completion とかCode Assistとかで探してもこれ くらいしかまだ見つからない.意外とすきま研究か?
上で述べたような"Semantic Grammar" を書いておくだけで,Eclipseのプラグインを自動生成してくれる仕組みが欲しい.もちろん,次の機能は全部ついてくるものとする. リアルタイムなコンパイル コード補完 リファクタリング エラー修正候補
昨日の論文の中身:Semantic Grammar,つまり意味まで構文定義に書く方法...なんか普通にyaccとかに取り入れられている気もする command = variable ':=' expression ただし env :: name-> type com :: s -> s ( sはstateのこと ) exp :: s -> val var ::…
日頃から「パーサジェネレータは使えない.構文解析しかしてくれなくて,意味解析はサポートしてくれないから」とぼやいていたが,ちゃんと意味解析も考慮したパーサジェネレータ(というかコンパイラジェネレータ)もあるみたいだ.1982年から. A semantic…
SCIENCE CITATION INDEXprogramming で検索すると次の3件.ACMは読める. ACM TRANSACTIONS ON PROGRAMMING LANGUAGES AND SYSTEMSJOURNAL OF LOGIC AND ALGEBRAIC PROGRAMMINGMATHEMATICAL PROGRAMMING game で検索すると ***** No matches found for the q…
7月20日の続き?On the optimality of change propagation for incremental evaluation of hierarchical attribute grammarsプログラムの一部分の書き換えによる影響範囲が伝播するのを,どうやって最適化するかという話.
ゲームのネタで真面目な学会発表ができるかどうか? Game Developers Conference GDC 2008 Call for Submissions Call for Submissions for the Game Developers Conference 2008 will open on August 15th 2007 and will remain open until October 1st 200…
openJFXのフォーラムより Canvas { var circles = bind [] content: bind [circles, View { content: Button { onMouseClicked: operation(e:MouseEvent) { insert Circle { 略 } into circles; } } }] } ↑は,期待通り動くけど,↓は,動かないんだって Canv…
こんなクラスを作ってみた class RangedString { attribute src: String; attribute b: int; attribute e: int; attribute toString:String; } attribute RangedString.toString = bind src.substring(b,e); var r=RangedString {src: "aiue" b:1 e:4}; なぜ…
上のFlashスクリプト(仮称)のコンパイラがJavaで書かれているから,JavaFXに移植しようと思う(bind を使いたいから)どうせ中身はJavaなんだからコンバータ一発でうまくいくだろう.とおもったら class Tesuto2 { attribute list:Vector; // エラー } だ…
http://219.94.147.26/tonyu/flash/test/tonyumov.swfとりあえず x,y,setRotation, r,g,b あたりをいじって遊んでみてくださいActionScript の主要なクラスを呼び出せるようにしてある...はずだけど,製作者もためしていないあとエラーメッセージはDebugg…
return bind 式 という書き方ができるのか import javafx.ui.*; public class Tesuto2 { attribute x:String; attribute y:String; operation goukei():String ; } operation Tesuto2.goukei():String { return bind "{x}と{y}."; } var tes = Tesuto2 {x:"…
import javafx.ui.*; public class Tesuto2 { attribute x:String; attribute y:String; attribute goukei: String; } var tes = Tesuto2 {x:"山" y: "川"}; var goukei=bind "{tes.x}と{tes.y}"; // *A var win = Frame { title: bind " JavaFX" width: 200…
失敗するとバックトラックして構文解析をやりなおす点や,「a | b 」とは書かず「a / b 」 と書いて「aを失敗したらbを解析」という意味になる点など,これは実はTonyuのパーサがこの方式.しかもこのPackrat Parsing は公表されたのは 2002年,Tonyu の 公…
飲み会などで拾った単語を列挙KL-1[言語]の部分リスト,Rats[パーサジェネレータ], fortress[言語], Scala[言語], SXML[記法] ガード[言語要素], Transaction Memory[並列処理], LLVM/LVM[汎用アセンブラ], RTL[中間コード] ,Specint[ベンチマーク],…
「並列」に関するワークショップなのでTonyuの並列性について述べた発表. ゲームはオブジェクトがたくさんでてきて,それぞれ自分の意思で動く 状態遷移を自然に書くには,それぞれが実行単位をもったほうがよい この仕組みを実現するにはコルーチンが一番…