2019年1月7日のブックマーク (2件)

  • TypeScript で幽霊型っぽいものをつくる - Qiita

    TypeScript で幽霊型(Phantom Type)っぽいものを作る場合に必要なテクニックを紹介する。 TL;DR TypeScript の型検査の仕組み上、普通の方法で幽霊型はできない が、 intersection type などをうまく用いることで、幽霊型と同じような目的を達成することはできる モチベーション たとえば URL のエンコード。次の encode() 関数は、まだエンコードしてない文字列だけを受け取りたいとする。このとき、

    TypeScript で幽霊型っぽいものをつくる - Qiita
  • 三角関数は何に使えるのか 〜 サイン・コサイン・タンジェントの活躍 〜 - Qiita

    「他にこんなのがある」というのがあったら是非いっぱい教えてください! 歴史的に最も古くからある用途は「測量」でしょう。三角関数誕生のキッカケはまさに測量の必要性にありました。比較的日常生活でも見る機会がありそうな用途でしょうか。 ログハウス ケーキカット 震災時の家の傾き推定 現代では「波」としての用途が多いでしょうか。Twitter での様々な人のコメントを見ていても、 おっぱい関数 jpeg 画像 音声処理 といった具合に、波に関する話がかなり多いイメージです。これらの三角関数の使われ方を特集してみます。様々な分野に共通する三角関数の使い方のエッセンスを抽出したつもりですが、これでもかなり分量が多くなりました。摘みいするような感覚で読んでいただけたら幸いです。 2. 三角関数の 3 つの顔 最初に三角関数には大きく 3 つの定義があったことを振り返っておきます。以下の記事にとてもよく

    三角関数は何に使えるのか 〜 サイン・コサイン・タンジェントの活躍 〜 - Qiita
    pf_siedler
    pf_siedler 2019/01/07
    Box-Muller法が入ってないやん(一様乱数を正規分布に従う乱数にするやつ)