Kenichi Asai
Kenichi Asai
For the following program: ``` table = table: field1, field2 end table.row-n(-1) ``` Pyret's error message reads: ``` Evaluating this expression errored: table.row-n(-1) It was expected to produce a "NumNonNegative",...
issue #10 への暫定対応として、型エラーを起こす部分を try catch で囲み、型エラーを起こした場合は undo することにしました。これで、明日の授業は乗り切ります。が、以下の問題がわかっています。 - 以下のプログラムで、`x` を `f` の body 部分に入れると(落ちることはなくなりましたが)接続を拒否された `x` のブロックがメインワークスペースに残ってしまいます。 ``` let f x = ? let test = f 0 = true...
generator で改行を入れるようにしました。 - `if b then e` のあと `else e` の前で - let 文で、関数定義なら `=` の後で、また `in` がある場合は、その前で - レコード定義で、各フィールドごとに
(レコードのサポート、ありがとうございます。) 現在、match 文で、レコードのパターンを使うと、パターン変数に同じ変数がデフォルトで入っていますが、異なる変数にしたいです。加えて、ユーザが同じ名前のパターン変数に rename しようとしたら拒否したいです。
レコードのパターンに出て来るパターン変数の名前を `フィールド名_v` にしました。(これで issue #21 の問題のうち同じフィールド名が使われてしまう問題だけは回避できます。ただ、ほかのパターン変数と重なる名前に変更できてしまう問題は残っていますが。)
メッセージ日本語化に向けて、とりあえずメニューに日本語が出るようにしました。この先、これを土台に、文字列を多国語対応していく予定です。本当は、web page 上にメニューが出てきて言語を選べるようになるとテストしやすいんだけど、その方法はまだ不明。今は en.js と ja.js の両方を入れているけど(ぼくの環境が日本語だから?)日本語が出てくる。 先日、メールした dev モードなら日本語が出るけど、圧縮すると出なかった件は、update_docs.py を更新したら出るようになりました。
match 文でレコードのパターンを使った際、そのパターンの矢印の右側ではパターン変数を普通の変数としてドラッグして使えるようにしたいです。現在は、x :: xs のパターンなら x や xs をドラッグできますが、レコードのパターン変数はドラッグできないようです。加えて、これらのパターン変数がスコープお砂場にも現れて欲しいです。
match ブロックを出し、パターンワークベンチを出して、pair または x :: xs を選び、一度、それを match ブロックのパターンのところに接続する。そのあと、それを外してパターンワークベンチに置こうとするとクラッシュするっぽい。