![見出し画像](https://assets.st-note.com/production/uploads/images/97745312/rectangle_large_type_2_6bb283d01b599e49ef807ea84dfdd639.png?width=1200)
wc コマンド Cでつくった。 Yotubeから学ぶ古典言語
Yotube => Learn C Programming with Dr. Chuck (feat. classic book by Kernighan and Ritchie)より
古典的な Cプログラムを復習してみたら
WC ワードチェックのコマンドを作るという機会ができたので
早速挑戦してみた。
![](https://assets.st-note.com/img/1676080077570-Gjmuz4JFq9.png?width=1200)
$ gcc wc_base_cprogrm.c
$ ./a.out
qwe 1234 455
ghjk 234 6789
122
3 4567 iop
4 10 42
4 行数
10 単語数
42 文字数
応用動作
コマンドWCと比較するために
$ ls -la | ./a.out
50 443 2748
$ ls -la | wc
50 443 2748
一致しました。
これでコマンドを10万個くらい作れればOSまでたどり着くのかも
しれませんが、現実として、たった一人の人間がすべてのコマンドソース
を理解しているのかといったら、それは可能性がかなり低いでしょう・
なぜなら、あくまで私の体験ですが、自分で過去に作ったプログラムを
何度も何度も作っていたりしています。
理解していたら、その再生して作り直すプログラムは、いとも簡単にできるはずですが、そうではありません。
これが問題なのかもしれません。
これがもんだいなのかもしれません。
コレが問題7日もしレマセン
人間は、必ず老化します。
おそらく、数年後にはこの記述の記事を読んでも
まさか、自分が書いたのかとは思わないのかもしれません。
大切なことは、ノートに書け
大切なこととはなにか、時間が節約できること。
完成した書類やデータを保存するのはだれでもわかるけど
大切なのは、なぜその完成形に至ったのか、
このプロセスをあとからトレースするためには
一見落書きのような状態のメモがとても、重要になります。
汚い文字で、だれも読めない。 ==> なにか、急いでいたのか?なにか瞬間に思いついたのか? ここでラーメン食ってたな。・・
この汚い文字の汚いノートからいろいろ想起してくると、そのときの背後の状況がわかる。思い出します。
デジタルデータでは、読み取れないこと
デジタルデータでは、その文字の脇に、ラーメンの汁の汚れとかコーヒーの残香などもないから、背後状況はその文面だけから判断しなければならない。
完成系のデータはこれが一番いいと思うけど、だいたい仕事の90%がトレースとか、創作とか修正ですから、その経緯がわかるのとわからないのは
大きく時間が変わります。
これが体験というものの積み重ねで出てくるわけですが、
体験をしてそれを記載するにしても、その根拠や出典などが不明確のメモは
全く機能しなくなる。
面倒だけど、時短のために、そして正確性のためにもメモは重要なのです。
そうは、
言うわやすし
でできんのよね、
それでは
この記事が気に入ったらサポートをしてみませんか?