タグ

ブックマーク / bugrammer.hateblo.jp (2)

  • 「値が無い」ということをどう表現するか、あるいはOption型について - Line 1: Error: Invalid Blog('by Esehara' )

    はじめに 現在、「イケている」と呼ばれる関数型言語について、大抵の場合は「Option型」と呼ばれる型が実装されていたりします。具体的には、OCamlとScalaであり、HaskellにもMonadの一つとしてMaybe型というものがあります。 この「Option型」とは何か、といえば、要するに「値があるかどうかわからない型」という型であり、値として「値を持っていない」か、「値を持っている」という二つのパターンをとります。そして、「値を持っている」という状態のときだけその値に対してアクセスすることができます。 とはいえ、これだけだと何が嬉しいのかさっぱりわかりませんので、その辺りについて、少しだけメモしておきます。 「値が無い」ということを表現すること 素朴に考えて、「何らかの値が無い」ということを示すためには、二つの方法で表現することが出来ます。 値が無い場合は、None(Python

    「値が無い」ということをどう表現するか、あるいはOption型について - Line 1: Error: Invalid Blog('by Esehara' )
  • 一人でコードを書きなさんな - Line 1: Error: Invalid Blog('by Esehara' )

    とりとめのない話をメモがてら。 最近、コードを読むことが多くあるのだけれども、「このコードは一人で書いているな」という感想を覚えることが多い。もちろん、基的にはコードというのは、物理的には一人で書くものであるのは間違いないのだが、たぶん、それとはまた別種のものだ。 僕がこの世界でメシをう数年前に、PHPユーザーは他の言語を知らないから、他の言語の良いプラクティスを知らないという批判が議論を呼んだことがあるようだ。このさいPHPはどうでもよく、問題は「他の言語の良いプラクティスを知らない」ということだ。プログラミング言語というのは、そのときに共存しているお互いのパラタイムと関係している。例えば、最近ならJava8がOption型を導入しようとしているのは、やはり「関数型言語」というのが成熟してきて、その方法論が有益なものとして受け止められるようになってきたからだ。C++もラムダを取り入れ

    一人でコードを書きなさんな - Line 1: Error: Invalid Blog('by Esehara' )
  • 1