@hackage yhseq0.2.1.1

Calculation of Y-sequence Hexirp edition

  • Installation

  • Dependencies (1)

  • Dependents (0)

yhseq

やあ。みんなは巨大数を知ってるかな? そして、巨大数論も知ってるかな? 巨大数を作るのはとても楽しいんだ!

さて、このライブラリは巨大数論に関連している。つまり、このライブラリは "Y数列" を計算する関数を実装している。ただ、正確に言えば "Y数列 Hexirp 版" だ。

元々の定義は数列で書かれている。ここにある。

でも、数式だけだとあまりにも読みづらい。これは私自身でも痛いほどわかっている。それに作った本人でも計算がめんどくさい!

だから、こうしてプログラムで実装しているわけだ。使っている言語は Haskell だ。数式に近い形でプログラムを記述できて、さらに文字列や入出力も上手く取り扱える。

私にはウェブページの上で動かすなんて気の利いたことなんてできないから、このプログラムはコマンドラインツールだ! でも、このプログラムを JavaScript などのウェブ上で動かせるコードにコンパイルする方法がいくつか (GHCJS, Asterius) あるから、それを使って頑張ってみるつもりだ!

でも、手元でビルドするのも簡単だ。このリポジトリをクローンして Stack でビルドするだけである。この Stack については "haskell stack" とでも検索してくれればすぐ理解できると思う。 "stack" だけじゃ検索結果にゴミが入るから、きちんと "haskell" といれるんだぞ!

名称

Y数列 Hexirp 版は英語に訳すると Y-sequence Hexirp edition になる。 Y は Yukito の略だから必ず大文字になる。さて、これを縮めると Y-Seq H E にでもなるだろう。しかし、これじゃクールではない。だから H を前に持ってきて yhseq とした。

使い方

yhseq には沢山のオプションがある。クールだろう!

yhseq [version] [seq] [num]

これは基本だ。出力は [seq] の基本列の [num] 番目だ。ここで [num] は自然数でなければならない。ただし 0 は自然数だ。また [version] はバージョン名だ。

  • -h, --help - これはヘルプを表示するオプションだ。
  • -v, --version - これはプログラムの全体としてのバージョンを表示するオプションだ。
  • -d, --detail - 詳細な展開の過程を表示するオプションだ。
  • -f, --force - 致命的なバグが発見されているバージョンを使おうとするとエラーになる。これを無理に押し通るオプションだ。

他にも連続して展開するモード、対話的に展開を続けるか選択できるモードを構想している。楽しみに待ってほしい!