タグ

関連タグで絞り込む (0)

  • 関連タグはありません

タグの絞り込みを解除

esotericとTeXに関するyshlのブックマーク (2)

  • LaTeX 上で色々と実装してみる話(ナベアツ編-7) - マクロツイーター

    (前回の続き) Grass (bxgrassator パッケージ) (参照:アレ) 「LISP on TeX もいいけど、たまには草を植えてみたい」という人は、bxgrassator パッケージを利用すると、LaTeX 文書で Grass のコードを利用できる。 grassator パッケージバンドル(GitHub/zr-tex8r) この中の bxgrassator*.* のファイル(3 つ)が「TeX で実装された」Grass のインタプリタである。インストール手順は過去の記事を参照。ちなみに、ixgrassator.sty の方は LuaLaTeX 用のパッケージで Lua で実装されたインタプリタを用いるものである。 このパッケージを使って、ナベアツを実装してみる。((Grass のコード自体は過去の記事で掲載したものと全く同じであるが、ここでは、\NabeAzz 命令の定義をプレ

    LaTeX 上で色々と実装してみる話(ナベアツ編-7) - マクロツイーター
  • TeX で Brainfuck

    TeX というプログラミング言語があります。配列とループがないのが特徴です。配列とループがなくて困ることはあまりありませんが、その数少ない困る場面が、プログラミング言語 Brainfuck の実装でしょう。Wikipedia の記事を読む限り、バイト型の配列とそれを指し示すポインタ、それに while ループさえあれば、Brainfuck は簡単に実装できそうです。 しかし、ないものはないので、別の手段を考えます。ぱっと思いつく配列の実現手段は TeX のレジスタです。レジスタには、ある種のトークンやトークン列を一時的に保存できます。ちなみにトークンというのは TeX の入力の最小単位で、文字や整数のほか、グループ({...} でくくられたもの)やコントロールシーケンス(\foo のようないわゆる TeX コマンド)も 1つのトークンです。 レジスタにはいろいろな種類があるのですが、個々の

    TeX で Brainfuck
  • 1