タグ

ブックマーク / hiratara.hatenadiary.jp (2)

  • 式と型と値 - Pixel Pedals of Tomakomai

    JavaもHaskellも静的型付けの言語だけど、Javaをやっている人とHaskellをやっている人で、「静的型付け」という言葉で頭に描くイメージはだいぶ違うと思う。 じゃあどう違うのかってのを説明すると小難しい話になりがちなのだけど、Haskell 2010 Language Reportにそれを簡潔に示したいい一文を見つけたので記しておく。 An expression evaluates to a value and has a static type. https://www.haskell.org/onlinereport/haskell2010/haskellch1.html#x6-120001.3 Haskellの式に対して、2つの操作が可能である。1つが式を評価して値を求めること。もう1つが、式を型付けして型を求めること。この観点に立つと、型を持っているのは値ではなく式であ

    式と型と値 - Pixel Pedals of Tomakomai
    atsushifx
    atsushifx 2017/01/01
  • git型の共同作業とSVN(CVS)型の共同作業の違い - Pixel Pedals of Tomakomai

    ずっと gitとsvkの違いってなんなのよ? と思ってたんですが、この図とか説明読んでようやくわかりました。 Gitでは旧来のCVS型とGit型の二つの共同作業のモデルが使えます。これが混乱の元でした。 Gitのすごさを当に体感するなら、gitを使うだけでは不十分でGit型のモデルにそって開発することが必須です。 CVS型 従来のSVN(CVS)のモデルです。pullをしてきて、pushで更新を戻します。 1つの公開リポジトリに対し、複数人がpushを行う pushにより他の人と競合するかも メインのリポジトリにpushすることを目指す 能動的 → 悪意のあるpushも可能 → "コミッター"を絞る必要あり Gitgithubっぽいモデルです。pullをしてきて、pullで更新を持って行ってもらいます。 全体がpullでまわるため、pushがプライベートな操作として隠蔽されてるのがポ

    git型の共同作業とSVN(CVS)型の共同作業の違い - Pixel Pedals of Tomakomai
    atsushifx
    atsushifx 2009/02/09
    Gitのバージョン管理モデルの説明。Suversion、Svkはツリー型。Gitはインターネット型
  • 1