エントリーの編集
![loading...](https://b.st-hatena.com/bdefb8944296a0957e54cebcfefc25c4dcff9f5f/images/v4/public/common/loading@2x.gif)
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
コルーチンをCommon Lispで簡単に定義 - さくらんぼのlambda日記
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
![アプリのスクリーンショット](https://b.st-hatena.com/bdefb8944296a0957e54cebcfefc25c4dcff9f5f/images/v4/public/entry/app-screenshot.png)
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
コルーチンをCommon Lispで簡単に定義 - さくらんぼのlambda日記
また更新滞ってしまいました...。なかなか長続きしませんね。 久しぶりに日記のネタが浮かんだので、メ... また更新滞ってしまいました...。なかなか長続きしませんね。 久しぶりに日記のネタが浮かんだので、メモがてら書きます。 ゲームを作っているとコルーチンが欲しくなることが多々あります。例えば、敵の行動が「飛行状態から通常攻撃をして着地から必殺技を出す」という連携攻撃を考えると、普通に状態遷移でやると、 飛行状態 通常攻撃 着地 必殺技 こんな状態を考える必要があるのではないでしょうか?そしてStateパターンなどを使って実装している場合には、このすべての状態に対してクラス定義をしたり、関数定義をしたりする必要があります。 コルーチンを使うとこういう時に便利です。コルーチンは、「関数を途中まで実行して、次に同じ関数を呼んだ時には前回の続きから実行する」というものです。pythonのジェネレータとかで同様のことができますね。 で、common lispでそれを実現するのはcl-contでできるの