110: [里々]遅延関数の追加案:whenlist

ばぐとら研究所統合ToDo管理システムへようこそ!バグ報告に限らず様々な要望を扱うシステムです。
まずは同じような内容がないか [検索] した後、無ければ [新規レポート] で作ってみましょう。
Windows 8以降、高速スタートアップが実装された関係で、SSP以外の部分に起因する不具合発生が出てきました。
何か挙動がおかしいかな、と思ったら、一度再起動(シャットダウン->起動ではなく)してみてから再度確かめてみてください。

最新状況

名前 ななっち
概要 [里々]遅延関数の追加案:whenlist
状態 [済]処理済
作成日時 2015-01-18 00:46:28
最終更新日時 2015-05-11 23:21:45

履歴

1 | 2015-01-18 00:46:28 | [−]新規
中山蓮
現行の里々に遅延関数whenlistの追加を希望します。
実装は添付ファイルのパッチになります。

基本的にssuに存在しているiflistと同等ですが、条件により選択される
引数の括弧展開が、各条件のどれかが一致するまで行われないことが特
徴となります。
ssuのifに対するwhenの立ち位置と言っていいでしょう。

過去の里々では、iflistの遅延評価版が存在しないために、whenを入れ
子に用いてその代替とする方法がありました。しかし、複数の条件を判
断する際にwhenをネストしなければならず、括弧により非常に見づらい
辞書にならざるを得ませんでした。whenlistを加える事により、そのよ
うな状況を緩和することができるように思われます。

・使用例
@だんごを与える動物
いぬ
さる
きじ
おに

*
(whenlist,(だんごを与える動物)
	,==いぬ,(set,animal,わんわん)
	,==さる,(set,animal,うきうき)
	,==きじ,(set,animal,けーん)
	,(set,animal,アカオーニによこすオニ))(animal)

単語群「だんごを与える動物」に「いぬ」が選ばれた場合は、
(set,animal,わんわん)が括弧展開され、末尾の(animal)に「わんわ
ん」が表示されます。「さる」と「きじ」に関しても同様。
「おに」が選ばれた場合は、指定したどの条件にも合致しないため、一
番最後の(set,animal,アカオーニによこすオニ)が括弧展開されます。
なお、最後の括弧を含む引数は省略可能です。
satori.txt (text/plain, 1468 bytes) [表示] [ダウンロード]

2 | 2015-01-18 01:47:58 | [−]新規
中山蓮
上のパッチに、条件を含む引数のうち右辺に当たる値の括弧が展開され
ないという問題があったので、修正したものを出し直します。
satori.txt (text/plain, 1509 bytes) [表示] [ダウンロード]

3 | 2015-05-11 23:21:45 | [済]処理済
ななっち
Mc156-1 にて実装されました。

[リプライをつける]
Bug Tracking System 影舞 0.8.8
Powered by Ruby 1.8.7