タグ

tomoasleepのブックマーク (355)

  • ラムダ計算で代数的データ型を表現する方法 - @syamino はてなダイアリー

    ラムダ計算でEither Either型の値をパターンマッチする状況を考えます。 「データコンストラクタのパターンマッチ」は,下図のようにしてラムダ計算で表現できます。 ラムダ計算でBool 今度は,Bool型の値をパターンマッチする状況を考えます。 TrueやFalseには引数が無いので,(3)や(4)はλで囲みません。 パターンマッチ = 「データコンストラクタを他の関数に置き換えること」 パターンマッチによって,Leftがlに置き換わります。以下同様です。 「データコンストラクタを置き換える」という概念について,もう少し詳しく考えていきます。 データコンストラクタの置き換え方は2種類ある リストのような再帰的なデータ型では,データコンストラクタの置き換え方が2種類あります。 data List a = Cons a (List a) | Nil (1) 全てのデータコンストラクタを置

    ラムダ計算で代数的データ型を表現する方法 - @syamino はてなダイアリー
  • Gitのデータモデル

    近藤です。こんにちは。Gitは様々な利用の仕方ができますが、その基盤となるモデルは8個だけの簡単なモデルです。これらのモデルを理解していない状態でGitを利用すると、あたかもリポジトリが壊れたように見えてしまいます。Gitは難しいと言われますが、そういう感想を持つ人はGitのモデルを理解していない事が多いようです。 今回はGitを構成する中心モデルと、基的なコマンドを実行した時のオブジェクト関係を解説します。 基概念 Gitの基概念は大きく2つにわかれます。 GitObject Reference GitObjectはGitで管理するオブジェクトです。CommitなどがGitObjectです。Gitリポジトリである.gitを開くとobjects配下にあるファイルがGitObjectです。GitObjectはそのコンテンツをハッシュ化した文字列を元に、先頭2文字で配置フォルダ、残りの文

    Gitのデータモデル
  • 東京大学への不正アクセスによる情報流出被害について | 東京大学

    東京大学が管理する業務用PCがマルウェアに感染し、情報の流出被害が確認されましたので、経緯と今後の対応についてお知らせします。 平成27年6月30日に、東京大学の教職員の一部と学生の一部のメールを管理する学内メールサーバの管理画面の設定(モード)が変更されていることを発見し、調査を行ったところ、同PCに保存されていた東京大学が学内向けに行っているサービスの業務用アカウントが流出していたことが確認されました。このほか同PC及び同サービスのサーバ等に保存されていた情報が流出した可能性があることが判明しました。東京大学としては直ちに、流出した可能性のある全てのパスワードの変更等の対応を実施するとともに、同PCを隔離保全するという対策を取り、被害拡大防止措置を実施しました。 今回の不正アクセスにより流出した可能性がある情報は、 (1) 平成25年度と平成26年度の学部入学者及び平成24年度と平成2

  • 「関数型Ruby」という病(1) - Symbol#to_proc, Object#method - ( ꒪⌓꒪) ゆるよろ日記

    この記事は、Rubyを書くにあたって「いかにブロックを書かずにすませるか」を追求した、誰得な連載である。 だって、ブロックって汚いじゃん?仮引数の|x|とかキモイ。 Symbol#to_proc 基中の基。 instance method Symbol#to_proc 以下のようなArrayがあって、 irb(main):003:0> arr = [:user, :entry, :article, :comment, :category] => [:user, :entry, :article, :comment, :category] 各要素をto_sしたかったら、 irb(main):004:0> arr.map{|s| s.to_s} => ["user", "entry", "article", "comment", "category"] と書くかわりに、 irb(main)

    「関数型Ruby」という病(1) - Symbol#to_proc, Object#method - ( ꒪⌓꒪) ゆるよろ日記
  • Transpec 開発記 – 前編 – blog.yujinakayama.me

    Transpecという、RSpecの古い記法で書かれたspecを、最新の記法に自動で書き換えるツールを作った。 最初のバージョン0.0.1をリリースしたのが2013年8月9日なので、すでに一年前になる。 先日のRSpec 3の正式リリースからもしばらく経って一段落したところだし、 この辺で一旦振り返って、 開発中のその時々で何を考えていたのか、忘れてしまう前に長々と残しておくことにする。 きっかけ そもそもTranspecを作り始めたきっかけは、 should記法を使っていた自分のプロジェクトのspecをexpect記法に書き換えようとしたところから。 これは2013年の7月下旬の話で、まだRSpec 2.99/3.0のベータ版も出ていない頃。 正直なところexpect記法が導入された当初は違和感があったし、 更にはThe Plan for RSpec 3も発表され、 「このままRSpec

    Transpec 開発記 – 前編 – blog.yujinakayama.me
  • シンプルでかつ最高のJavaScriptプロファイラ sjsp を作りました! ― Webアプリケーションが複雑化する中でプロファイラに求められるものとは何か - プログラムモグモグ

    あらすじ Web技術が複雑になる中で、JavaScriptのプロファイリングをとる方法とは。 プロファイリングを取るためのコードを手で書いてみましょう。 とてもシンプルで、かつ最高のJavaScriptプロファイラ sjsp を作りました。 当にあった怖い話 上司 「とにかくJavaScriptのコードを速くしてくれ」 私 「分かりました、速くします」 (次の日) 私 「いいプロファイラがないなら作ればいいじゃない」 同じチームの人 「えっ?」 私 「最高のJavaScriptプロファイラ作ったよ」 同じチームの人 「「えっえっ???」」 私 「早速使ってみたらこことここが遅いって分かったよ」 同じチームの人 「「「この子は一体…」」」 JavaScriptのプロファイリングの難しさ 近年、Webブラウザーの処理速度は著しく向上し、その可用性の高さから、アプリケーションのプラットフォーム

    シンプルでかつ最高のJavaScriptプロファイラ sjsp を作りました! ― Webアプリケーションが複雑化する中でプロファイラに求められるものとは何か - プログラムモグモグ
  • 更新の滞ったプロジェクトを引き継ぐ - Shinnosuke Watanabe

    Node、ひいてはJavaScriptを取り巻く環境は目紛しく変化し、ライブラリやフレームワークもそれに合わせて日々更新され続けています。特にNodeモジュールの場合は、それ自体のコードはもちろん、頻繁に行われる依存パッケージのアップデートも精査の対象としなければなりません。そんな環境の中で、大量のコードまたは複雑なパッケージ依存関係を持つにも関わらず、何ヶ月、あるいは何年も更新されていないNodeモジュールを使うのは、少なからぬリスクがあると考えるべきでしょう。 放置されたモジュールをそのまま使わずに、フォークして自身の用途に合わせて修正を行うというのも(オープンソースらしい)一つの手段です。同様の目的を果たすモジュールをコードベースから書き直して作成する手もあります。あるいは、既に別の開発者が代替手段となるモジュールを作ってくれている場合もあるでしょう。 そういった、代替物を探す/作る

  • 『誰でも知ってるこの座り方の名前は?』ツイッターで集めたアンケート結果に一同「えっ!?」

    飯間浩明 @IIMA_Hiroaki 小アンケートにご協力くださいませんか。添付の画像のような座り方を、あなたは何と言いますか。このツイートにリプライの形でお答えいただければ幸いです。付加情報もあればお願いします。結果は、のちにまとめてご報告します。 pic.twitter.com/7oHL0O4Ytj 2015-05-01 22:21:07 飯間浩明 @IIMA_Hiroaki 1967年10月21日、香川県高松市生まれ。国語辞典編纂者(出版社社員ではありません)。『三省堂国語辞典』編集委員。著書『日語はこわくない』PHP、『日語をもっとつかまえろ!』毎日新聞出版、『知っておくと役立つ 街の変な日語』朝日新書、『ことばハンター』ポプラ社 他。『気持ちを表すことばの辞典』ナツメ社 も監修。 asahi-net.or.jp/~QM4H-IIM/ 飯間浩明 @IIMA_Hiroaki お

    『誰でも知ってるこの座り方の名前は?』ツイッターで集めたアンケート結果に一同「えっ!?」
  • Vim起動時に出てくるウガンダへの寄付を行う手順 - 今日学んだこと

    最近、コーディングする際はEmacsを利用してました。 プログラムを勉強し始めた時に、(当時メジャーだった)秀丸じゃない、別のエディタは無いかと探したところ、xyzzyというEmacsライクなエディタに出会いまして、そこから少し前にEmacsに乗り換えた感じです(Mac買ったというのもあって) 先日、Python(Django)で作ったWebアプリの紹介&α版試してみて依頼記事を書いたのですが、それがVimコミュニティの方たちに多く利用して頂けたんですね。ありがたい意見も沢山頂戴して。 趣味プログラミングの勧め:仕事しながら1週間で作ったサービスを紹介してみる - 今日学んだこと で、VimコミュニティのLingerやTwitter見てたら僕もVimを使ってみたくなり、先ほど会社PCに導入してみました(現在ちょっと遅めのお昼休み中。) Vimを起動すると ここからが題なんですが、Vim

    Vim起動時に出てくるウガンダへの寄付を行う手順 - 今日学んだこと
  • TechCrunch | Startup and Technology News

    Amazon has agreed to acquire Indian video streaming service MX Player from the local media powerhouse Times Internet, the latest step by the e-commerce giant to make its services and brand popular in smaller cities and towns in the key overseas market.  The two firms reached a definitive agreement for…

    TechCrunch | Startup and Technology News
    tomoasleep
    tomoasleep 2015/06/04
    あなたと
  • 独学のプログラミング | κeenのHappy Hacκing Blog

    誰向けなのか分からない。多分5年後くらの初心を忘れた自分が読めば良いと思う。あるいは、独学でプログラミングを始めようとしてる人が参考にするのかもしれない。 私はプログラミングを独学で学んだ。 初めて触ったのは中学生のとき、ネットゲームのギルドのホームページを作ろうとなってHTMLCSSJavaScriptという存在を知った。イヌでもわかるJavaScript講座を見てメモ帳で書いた20行くらいのスクリプトが当時の最高傑作だった。 それから名前の訊いたことのあったC言語を学ぼうとしたが、Vijuaru Stajioのインストールが出来なくて挫折した。CとC++とC#の違いも分ってなかった。 その後、ネットゲームもしなくなり高校の間は全くプログラミングに触れずに大学に入った。 1年夏学期の情報の授業でシェルを知った。最初は慣れなかったが次第に使えるようになって、家でもコマンドプロンプトを使

    独学のプログラミング | κeenのHappy Hacκing Blog
    tomoasleep
    tomoasleep 2015/05/14
    Ruby逆引きハンドブック!カタログみたいで面白かった記憶ある
  • OCaml入門の手引 | POSTD

    OCamlを学ぶには、まず何から手を付けたらいいでしょうか? あなたなら何をしますか? 私はこれまで、恐らく10数回はOCamlを覚えようとしました。そして手を付けては諦め、また付けては諦めの繰り返しで、ついには数えるのをやめてしまったくらいです。 でも、今回は続いています。ひょっとすると、コミュニティそのものに何か根的な変化があったのかもしれません。 私にとって功を奏したのが実際は何だったのか、以下に考察してみたいと思います。 役に立つは? 『 Real World OCaml (以下、RWO)』がお勧めです。というよりも、 それ以外にお勧めはありません 。RWOは、私の生涯の中でも1、2を争うことができるくらいのコンピュータ言語解説書です。 ちなみに、その他にも解説書はありますが、大体が不正確な内容を含んでいるか、あるいはフランス語で書かれているかなので、 読まない 方がいいでしょ

    OCaml入門の手引 | POSTD
  • Estraverseの動きを可視化する

    EstraverseというJavaScript ASTのtraverseを行うライブラリがあります。 JavaScript ASTについては以下を参照して下さい。 JavaScript AST Walker カジュアルJavaScript AST このtraverse関数にはそれぞれのnodeの通り方としてenterとleaveというものが用意されています。 estraverse.traverse(ast, { enter: function (node, parent) { if (node.type == 'FunctionExpression' || node.type == 'FunctionDeclaration') return estraverse.VisitorOption.Skip; }, leave: function (node, parent) { if (node

    Estraverseの動きを可視化する
  • JSVerify — property based testing for JavaScript. Like QuickCheck.

    JSVerify is a property-based testing library, highly inspired by QuickCheck. It is testing framework agnostic, you could use JSVerify with Mocha, nodeunit, Jasmine or any other framework. Property based testing Write properties about your function that should hold true for all inputs, instead of enumerating expected inputs and outputs. Tests written this way are concise and powerful. Property-base

  • 欧美亚洲色欲色一欲WWW - 欧美大片欧美激情免费看 - 欧美特黄特色三级视频在线观看

    欧美亚洲色欲色一欲WWW - 欧美大片欧美激情免费看 - 欧美特黄特色三级视频在线观看
  • FF6に任意のコードを実行できる脆弱性が発見される | スラド IT

    スーパーファミコンの人気RPG、ファイナルファンタジー6(FF6)にて、任意のコードを実行できる脆弱性が発見された(ニコニコ動画で公開されているデモ動画)。 FF6には、来キャラクターが装備できないアイテムを武器として装備できてしまうバグがあるのだが、この際に特定のアイテムを装備させて戦闘中に攻撃すると、メモリ内の$000Fおよび$0010部分に格納されているデータをアドレスとして参照し、対応するデータをコードとして実行してしまうという。$000Fは「戦闘開始からの経過時間をカウントするカウンターの2バイト目」で、$0010は戦闘中いくつかに変化する値が格納されているとのことだが、これだけでは任意のコードを実行できない。しかし、$000Fが0xC7、$0010が0xCEという値になっていた場合、「シャドウ」というキャラクターの名前データが格納されているメモリ領域のコードが実行されてしまう

    tomoasleep
    tomoasleep 2015/04/21
    発売してから21年経っても攻撃されるのつらすぎる
  • Tumblr

  • MIT Course 16.399: « Abstract Interpretation »Home Page

    Spring term 2005 Content: Course information Instructor Course objective and themes Course description Course notes Course schedule Assignments Personnal project Grading Final exam problem Bibliographic reference Course Information: Course number: 16.399 Title: Abstract Interpretation Units: H level course, 3-0-9 Lecture hours: Tuesday 11:00–12:30 and Thursday 11:00–12:30 (see the course schedule

  • ValueRestriction

  • 研究倫理

    研究倫理 資料 2014$2.pdf (31-Jul-2014) NEW! GnuPG detached signature: 2014$2.pdf.sig 2014$2.pptx (31-Jul-2014) GnuPG detached signature: 2014$2.pptx.sig GnuPG detached signatureの検証方法 [gnupg.org]

    tomoasleep
    tomoasleep 2015/04/09
    marquee