アフィリエイト広告を利用しています

2023年02月19日

Haskell: 簡単なプログラムを実行してみる

昨日実行環境を整えた Haskell を使ってみる.

教科書は Graham Hutton 著/山本和彦訳『Programming in Haskell 2nd edition』を使う.

本に載っているリストの和を求めるプログラムを sum.hs の名前で保存する.

sum :: Num a => [a] -> a
sum [] = 0
sum (n:ns) = n + sum ns

これを Haskell インタープリターからロードする.

ghci> :load sum

ところが以下のようなエラーが出た.

ghci> :load
sum [1 of 1] Compiling Main ( sum.hs, interpreted )

sum.hs:3:18: error: Ambiguous occurrence ‘sum’ It could refer to
either ‘Prelude.sum’, imported from ‘Prelude’ at sum.hs:1:1
(and originally defined in ‘Data.Foldable’) or ‘Main.sum’,
defined at sum.hs:2:1
||
3 | sum (n:ns) = n + sum ns
| ^^^ |
Failed, no modules loaded.

少し調べたら, sum という関数は Haskell 自身ですでに定義されているので, 同じ名前の関数を定義しようとしたことで名前の衝突が起こったためとわかった.
これを回避するために sum.hs の冒頭に次の一行を追加する.

import Prelude hiding (sum)

sum :: Num a => [a] -> a
sum [] = 0
sum (n:ns) = n + sum ns

これでロードができるようになる.

[1 of 1] Compiling Main ( sum.hs, interpreted )
Ok, one module loaded.

いくつかの計算をしてみる.

ghci> sum [1,3,5,7,9,11]
36
ghci> sum [1..10]
55

この調子で勉強を続けていくつもりである.

パン屋に行く

7 時半起床.
やや鬱が辛いが起き上がる.

体を動かせば気分が上向くかと思い, 駅の近くのパン屋まで行く.
ちょうど店が開いたばかりで, まだパンの品揃えは十分ではなかったが, カレーパンとショコラパンとバンズを買った.

歩いて気持ちが落ち着いてきた.

帰宅してゆっくり朝食をとる.
このパン屋でカレーバンを買ったのは初めてだが美味しい.
ショコラパンもいい.
バンズにはハムを挟んで食べた.

午前中はプログラミングの勉強をする.

午後からアルコール依存症の自助グループに行く.
のんびりした雰囲気だった.

買い物をして帰る.

夕方になって食事をとる.
蕎麦と大根おろし.

食べて早めに布団に入る.
posted by 底彦 at 23:30 | Comment(0) | TrackBack(0) | 日常生活

2023年02月18日

クリニックに行く

3 時起床.

数学をやる.
教科書の練習問題を考える.

今日はクリニックに行って診察を受けて薬をもらってこないといけない.

早い時間に家を出る.

朝一番に受付をする.
そのおかげで 40 分ほど待っただけで診察を受けることができた.

薬も早い時間に受け取れて, そのまま帰宅.

午後はプログラミングの勉強をする.

夕方に食事.
牡蠣と小松菜のパスタ.

やはりクリニックに行くと疲れる.
早めに休む.
posted by 底彦 at 23:30 | Comment(0) | TrackBack(0) |

プログラミング: Haskell をインストールする

圏論でモナドを勉強して, Haskell を使いたくなった.
GHC (Glasgow Haskell Compiler) をインストールする.

ところがエラーになった.

# pkg_add -v ghc
Update candidates: quirks-6.98 -> quirks-6.101
quirks-6.101 signed on 2023-02-14T11:05:49Z
quirks-6.98->6.101: ok
Can't install ghc-9.2.5p0 because of libraries
|library c.97.0 not found
| /usr/lib/libc.so.96.1 (system): bad major
| /usr/lib/libc.so.96.2 (system): bad major
| /usr/lib/libc.so.96.4 (system): bad major
| /usr/lib/libc.so.96.5 (system): bad major
|library pthread.27.0 not found
| /usr/lib/libpthread.so.26.1 (system): bad major
| /usr/lib/libpthread.so.26.2 (system): bad major
| /usr/lib/libpthread.so.26.3 (system): bad major
| /usr/lib/libpthread.so.26.4 (system): bad major
Direct dependencies for ghc-9.2.5p0 resolve to libffi-3.4.4 libiconv-1.17 gmp-6.2.1p0
Full dependency tree is libffi-3.4.4 gmp-6.2.1p0 libiconv-1.17
Read shared items: ok
Couldn't install ghc-9.2.5p0

libc.so と libpthread.so のメジャー番号が古く, インストールできない.
最新の GHC パッケージにシステムが対応していない.

それで, https://cdn.openbsd.org/pub/OpenBSD から安定板の ghc-9.2.4p2.tgz をダウンロードしてインストールする.

# pkg_add -v ghc-9.2.4p2.tgz

これで GHC がインストールされた.

Emacs から Haskell を使うためには haskell-mode を使う.

M-x run-haskell

これで Haskell インタープリターが起動する.

2023年02月17日

夕方まで寝込む

9 時に目が覚める.
鬱が苦しい. 理由不明.

よろよろと起きて朝食をとる.
キャベツとベーコンエッグとコーヒー.

気分の落ち込みが辛い.
頓服を飲んで寝込んだ.

夕方前に何とか起き上がれた.
頓服が効いたせいか, 鬱も少し回復した.

夕食をとる.
メカジキのムニエルと小松菜炒めとご飯.

早めに休む.
posted by 底彦 at 23:30 | Comment(0) | TrackBack(0) |

2023年02月16日

作業療法の友人の個展に行く

1 時半起床.

本を読む.
カント『人倫の形而上学の基礎づけ』.
実践理性の行為法則について.

それから数学をやる.
教科書の練習問題を考える.

朝までやってから朝食をとる.
キャベツとベーコンエッグとコーヒー.

作業療法の友人が個展を開催しているので, 午前中はそれを観に行った.
その友人の作品は色彩が豊かで, 観ていると気持ちが明るくなる.

個展を観た後, また別の作業療法の友人と待ち合わせてある喫茶店に行く.
その喫茶店を自分に紹介したかったのだと言う.

小さな店だったが, マスターの雰囲気が良くいい雰囲気だった.
絵の個展なども無料で開催できるという.
友人からは, 自分の個展もここで開催してはどうかと言われた.
もう少し新しい絵がたまったら, 考えてみようと思う.

夕方前に別れて帰宅.

夕食をとる.
メカジキのムニエルとキャベツ.

一休みして布団に入る.
posted by 底彦 at 23:30 | Comment(0) | TrackBack(0) |

2023年02月15日

デイケアに行く

0 時半起床.

本を読む.
カント『人倫の形而上学の基礎づけ』.
実践理性の限界について語られる.

それから数学をやる.
教科書を読み進める.

昼までやって区切りを付ける.

午後からデイケアに行く.
今日のプログラムは「生きづらさをつぶやく」.
人が怖いことや, 気力がなかなか出ないことなどを話した.
話すことですっきりする.
このプログラムは毎月あるので, 来月も参加したい.

夕方に帰宅して食事.
真鯛の刺身と大根おろしとご飯.
ゆっくり味わって食べる.

早めに布団に入る.
posted by 底彦 at 23:30 | Comment(0) | TrackBack(0) | 日常生活

2023年02月14日

アルコール依存症の自助グループ 〜 数学の勉強

6 時起床.
体がだるい. 若干の鬱もある.

ゆっくり起きて朝食をとる.
キャベツと目玉焼きとソーセージとコーヒー.

どうしてこんなに体がだるいのだろう.

体を無理にでも動かせば倦怠感も薄れると思い, アルコール依存症の自助グループに行く.
開始時間を過ぎて会場の教会に到着.
今日のテーマは「自分を信じろ」.
自分の過去行ってきたことを思い返すととても自分を信じることはできない, というようなことを話す.
何とかこの自己否定の感情から解放されたいが...

買い物をして帰宅.
体のだるさは治まった. 動いたのがよかったのかも知れない.

数学をやる.
教科書を読み進める.

夕方までやって区切りを付ける.

食事をとる.
麻婆豆腐とご飯.

片付けをして布団に入る.
posted by 底彦 at 23:30 | Comment(0) | TrackBack(0) | 日常生活

2023年02月13日

何とか鬱から回復する

6 時半起床.
どうにか酷い鬱は治まった.

朝食をとる.
キャベツと目玉焼きとソーセージとコーヒー.

午前中は数学の勉強をする.
教科書を読み進める.

昼過ぎに買い物に行く.
野菜や肉を買う.

午後は本を読んで過ごす.
ルシア・ベルリン『すべての月、すべての年』.
読了.
「ミヒート」という短編がいい.
すでに子どものいるアメリアという 17 歳の少女の物語. それが少女と ER の看護士双方の視点から描かれる.
とてもいい.

夕方に食事.
蕎麦と大根おろし.

早めに布団に入る.
posted by 底彦 at 23:30 | Comment(0) | TrackBack(0) | 日常生活

2023年02月12日

午前中から寝込む

4 時半起床.
やや鬱が辛い.

朝まで何もできず.

朝食をとる.
パンと紅茶.

次第に気分の落ち込みが酷くなってくる.
自分は駄目だという思い, 自分のやってきたことに何の意味も無いという思いが強い.
苦しい.

寝込んだ.
布団の中で縮こまる.

夜まで起きられず.
そのまま休む.
posted by 底彦 at 23:30 | Comment(0) | TrackBack(0) |
ファン
検索
<< 2024年12月 >>
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31        
最新記事
最新コメント
眼科の定期検査 〜 散歩 by コトタマ (02/15)
眼科の定期検査 by 三文字寄れば文殊のヒフミヨ (09/21)
本を読んで過ごす by 底彦 (12/13)
本を読んで過ごす by ねこ (12/12)
数学の計算をする by 底彦 (12/04)
タグクラウド
カテゴリアーカイブ
仕事(59)
社会復帰(22)
(44)
コンピューター(211)
(1451)
借金(8)
勉強(13)
(13)
数学(97)
運動(8)
日常生活(1406)
(204)
健康(38)
読書(21)
プロフィール

ブログランキング・にほんブログ村へ
にほんブログ村
にほんブログ村 メンタルヘルスブログ うつ病(鬱病)へ
にほんブログ村
にほんブログ村 科学ブログ 数学へ
にほんブログ村
にほんブログ村 IT技術ブログ プログラム・プログラマーへ
にほんブログ村