タグ

Programmingとセルクマに関するVoQnのブックマーク (2)

  • Programming-language - なぜ null はそのプログラミング言語にあるのか(その1 - ”無”の無い世界) - Qiita

    前提 TaPL 読みながら Haskell/Denotational semantics 見て、自分なりに納得した己が解釈を文芸的に綴っていくだけの内容です 序: void, null, undefined, (), [], ⊥ どんな言語でも「空っぽ」なり「無い」なり「未定義」なりを意味する値が用意されており、型付けが動的だろうと静的だろうとこれらに対してだけはヤケに自由度の高い用法を許されています。 Haskell の undefined と ( ) 型 Haskellであっても、以下のコードは「正しく型づけされ、正しく動作する」としてコンパイルが通ります fib :: Integer -> Integer fib 0 = 1 fib 1 = 1 fib n | n > 1 = fib (n - 2) + fib (n - 1) | otherwise = undefined -- (

    Programming-language - なぜ null はそのプログラミング言語にあるのか(その1 - ”無”の無い世界) - Qiita
    VoQn
    VoQn 2014/09/09
    あくまでも「考察」を綴っただけですが、まずC言語の例を書くだけで力尽きました
  • Vows で クライアントサイドの CoffeeScript / JavaScript のテストをする時の Tips

    0. node.js の Vows フレームワークがとてもかわいい JavaScript のTDD, BDDフレームワークはたくさんあるけど,テスト結果の見た目の良さと記述の楽さで Vows というフレームワークを使っている.RSpec からの影響を受けていて,Rack アプリケーションのテストと同じような感覚で書ける,というのが良い. たとえばこんな感じでテストコードを CoffeeScript で書く で --spec オプションをつけて実行するとこういう風に表示してくれる. assertion でテストが通らないと黄色く,内部エラーの場合は赤にラベルが表示される. しっかり全部通すと このように表示される.見た目が良いし,ラベリングを丁寧にやるとテストの内容がわかりやすい. 元々 node.js のテスト用なので,require exports など, pure JavaScript

    Vows で クライアントサイドの CoffeeScript / JavaScript のテストをする時の Tips
  • 1