「連載: Haskellプログラミング」のプログラム

$Date: 2006/06/09 15:06:12 $

記事は情報処理学会のページ http://www.ipsj.or.jp/magazine/promenade.html で見ることができます.

2005(Vol.46)       04 05 06 07 08 09 10 11 12
2006(Vol.47) 01 02 03                  

Vol.46 No.4 「関数プログラミングの妙味」和田英一

quicksort.hs クイックソート
factorial.hs 階乗
railsort.hs 車両のソート(和田)
railsort1.hs 車両のソート(電通大 岩崎)
railsort2.hs 車両のソート(東大 尾上)

Vol.46 No.5 「木(tree)で遊ぶ」山下伸夫

first.hs 二分木の列挙
second.hs 切符問題
make10.hs きっぷ問題のプログラム(和田)

練習問題

DumbTree.hs DumbTree モジュール
Ticket.hs Ticket モジュール
ex1.hs 練習問題1 解答例
ex2.hs 練習問題2 解答例
ex3.hs 練習問題3 解答例
ex4.hs 練習問題4 解答例
ex5.hs 練習問題5 解答例


Vol.46 No.6 「数当てゲームを解く」尾上能之

Moo.hs 出題/解答プログラム
MooDialogue.hs ストリーム対話型 Moo プログラム(山下)


Vol.46 No.7 「Rubic キューブと置換の乗算」和田英一

dice.hs サイコロ置換
rubic.hs ルービックキューブ
cycleperm.hs KnuthのAlgorithm B


Vol.46 No.8 「記憶(memo)する関数」山下伸夫

cc.hs 両替問題
memocc.hs メモ版(memocc)
memoise.hs 高階関数 memoise
Memo.hs Memoモジュール
memolcs.hs 最長共通部分系列(LCS)


Vol.46 No.9 「文字列間の距離——モナドを使って——」尾上能之

EditDistance.hs 編集距離


Vol.46 No.10 「関数画家」和田英一

hilbert.hs Hilbert 曲線
hilbert2.hs Hilbert 曲線: 関数合成版 (山下)
hilbert3.hs Hilbert 曲線: 状態モナド版 (山下)
squarelimit.hs Square Limit
cornersplit.hs Corner Split
fish.hs さかなの Square Limit
functionalprogrammer.hs Crowd of Fanctional Programmers


Vol.46 No.11 「ペンシルパズルを解く」山下伸夫

sudoku0.hs 数独ソルバ(未完)
sudoku1.hs 数独ソルバ
Puzzle.hs Puzzle モジュール
sudoku.hs Puzzle モジュールを利用した数独ソルバ
kakro.hs Puzzle モジュールを利用したカックロソルバ


Vol.46 No.12 「対戦型n目並べ」尾上能之

Mark.hs 印定義モジュール
Position.hs 局面定義モジュール
TicTacToe.hs 対戦型n目並べ
00README 使い方


Vol.47 No.1 「暦法算法」和田英一

Zeller.hs Zeller の合同式
Simauti.hs 島内の式
JulianDate.hs Julian Date
Calendar.hs カレンダーのプログラム
Calendars.hs 1年分のカレンダー
Easter.hs 復活祭
SolarLongitude.hs 太陽黄経
rekihou.hs 暦法算法(記事中のプログラムをひとつにまとめたファイル)

Vol.47 No.2 「構文解析器結合子」山下伸夫

words.hs 文字列の分解
lexer.hs 字句解析器
parser.hs 構文解析器


Vol.47 No.3 「自分自身を出力するプログラム」尾上能之

quine.hs Haskell 版 Quine
quine.pl Perl 版 Quine
quine.py Python 版 Quine
quine.l Scheme 版 Quine
quine.ml Ocaml 版 Quine
quine.c C 版 Quine
quine.ps PostScript 版 Quine
00README 使い方