0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

自己(本当に)啓発記事

Last updated at Posted at 2019-04-05

#テスト
markdownね。知ってる知ってる。
あれでしょ。めくるマール、めぐるめぐる、風ェ〜〜〜。
ショッピングモール。ポッピンQ。

E = mc^{2}

おっけーまる。理解した。完全に理解した。

Rubyって等価な書き方が複数、メソッドだな、メソッドで等価なのが複数在るのよね。
複雑な気分になるけど、まあそれは、分かってる人が書けば良いんだと思う。
分かっている人なら分かる。自由度が高いだけだという、ポジティブに考えています。
部分的に一致しているだけだと、全く同じメソッドというわけではなかったりするのでね。
nilとかendとかアレだし、破壊的変更とか、クラスのアレとか、
純粋関数型言語信者からしたらヤバイなというのは分かる。
Haskellの好きな私が未だにRubyを書くのは何故なのか???

1upto10.rb
p (1..10).to_a
p [*1..10]
p (1..10).map{|i| i }

他にもループで書くというのが在るけど、それは馬鹿なんじゃないか。
イテレータの方が直感的に決まってる。
関数は数学用語であるし、より数学の関数のように書きたいし、書いたほうが良いと思っている。見地的にも数学的見地だろうと思うのでね。
map関数は好き。返り値に配列が返ってくるの良い。

rle.hs
import Data.List
rle = concatMap (\s -> head s : show (length s)) . group

関数の返り値をバンバン関数に渡していくのと、煩わしい副作用と処理の冗長だったりする記述が一切ない(これはね)。
だから美しいなあと思っちゃう。

何だかお酒飲みながら書きましたらポエムになっちゃいましたねこれ。
取り敢えずアウトプットする意思表示ということで、
先ずは試してみようみたいな感じで数行だけのつもりでしたけど、
しょうもなく綴ってしまいました。すみません。
次からはまともな記事を書くことをここに誓い、宣言します。
おやすみなさい。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?