takuto_hのブックマーク (460)

  • リアルタイムWebアプリケーションフレームワークMeteorについて - Qiita

    はじめに 初めてAdventCalenderに参加させていただきます。 先月頭に初めてMeteorに触り、1ヶ月しか触っていないですが、 その素晴らしさに感動し、DiscoverMeteorの翻訳作業に参加させて頂いたりしてます。 その感動したポイントをお伝えしたいと思い今回Meteor AdventCalenderに記事を投稿することにしました。 目標は、「ちょっと触ってみるか」と思っていただくことです。 Meteorに出会う経緯 もともとiOSアプリ開発をやりたくて組み込み系エンジニアからWeb系エンジニアに転向しました。 その状態でWebアプリ開発に触れ、ネイティブアプリと比較して 違和感というか納得いかない感を感じており、 それを解決してくれたのがMeteorでした。 納得いかない点を説明させていただくところから始めさせてください。 Web開発の違和感(SPA以前) Web開発で納

    リアルタイムWebアプリケーションフレームワークMeteorについて - Qiita
    takuto_h
    takuto_h 2015/05/16
  • ruby trunk changes

    今日は主に irb の組み込みコマンド disable_irb の追加や VM 命令コンパイル時の最適化の不具合修正などがありました。 [83618f2cfa] Peter Zhu 2024-02-26 20:07:28 UTC MSAN のメモリリーク検出対応のためにプロセス終了時に可能なかぎりメモリ解放を徹底することを指示するフラグの値をチェックする C API ruby_free_at_exit_p() というのを追加しています。うーむ、これを使ってまでメモリ解放してくれる拡張ライブラリがどのくらいあるかという問題はあると思いますが……。 [ruby-core:116963] [Feature #20306] [3822ca9884] hogelog 2024-03-14 15:40:21 UTC irb の組み込みコマンドの disable_irb というのを追加しています。どうい

    ruby trunk changes
    takuto_h
    takuto_h 2014/12/15
    ruby-trunk-changes
  • 2008-04-26 - トーフサロン

    Objective-Cコンパイラを作るためにメッセージ送信の最適化について調べたことをとりまとめてみるよシリーズも、一通りとりまとめました。これまでの記事へのリンクと参考文献をとりまとめておきます。 言語の性質 キャッシュ法 ディスパッチ表法 直接束縛法 (1) クラス階層解析、実行履歴による解析 直接束縛法 (2) カスタム化、スペシャル化 参考文献 方法論、言語の設計など オブジェクト指向言語におけるメッセージ送信の高速化技法 今回の一連のとりまとめに大変参考にさせていただきました。 Smalltalk-80 The Language and Its Implementation Smalltalk-80の言語仕様と実装について。 Rubyソースコード完全解説 Rubyインタプリタの実装について。 The Self Programmer's Reference Manual Selfの

    takuto_h
    takuto_h 2014/10/11
  • 限定継続を使ってmrubyでモナドを作ったり非決定計算したりしてみる - wasabizの日記

    2013-10-05 限定継続を使ってmrubyでモナドを作ったり非決定計算したりしてみる ** この記事はmrubyで限定継続(shift/reset)を実装した話の一部です mruby用の限定継続モジュールを作ったので色々と遊んでみます。限定継続でできることは様々です。ざっと挙げてみれば 非ローカルジャンプ イテレータ データ構造のトラバース コルーチン(ファイバー) 非決定計算 モナド 非同期処理(async/await) といったところです。静的型付き言語ならさらに型付きprintfみたいなことが出来るらしいですがよく知りません。浅井先生の論文を読んでください。非同期処理はコルーチンがあれば実装できるので一旦置いておくとして、コルーチン、モナド、非決定計算あたりを作ってみました。 モナド 参考: 函数プログラミングの集い 2012 in Tokyo で発表してきました。 限定継続を

    takuto_h
    takuto_h 2014/08/20
  • model の decorator の話

    最近の sapporo.rb などでは ActiveDecorator など、model の Decorator の話で少し盛り上がっているようだ。view に関わるコードをどう整理するか?という話について、共通見解が定まってきたということだろう。 rails の MVC に沿ってコードを書くと、view 回りがだんだんごちゃっとしてくる。scaffold のように単純に model の property を表示するような view なら良いが、STI のタイプに応じて表示内容を変えるとか、新規登録の場合と更新の場合で表示を変える、ユーザの権限に応じてどこまで情報を見せるか制御するなど、model のデータやセッションのデータに基づく条件分岐と html の描画が絡み合うような場合にこれをどこに書くのか?というのが問題になる。 伝統的な rails のレイヤーわけだと候補としては view

    takuto_h
    takuto_h 2014/07/25
  • Refinementsを使ったRails Presenter - カメログ

    Ruby2.1のRefinementsを使って、RailsのPresenter層ライブラリを作れるんじゃないかと週末にがんばってみたところ、いい感じに実装できた。 現状はサンプルのRailsアプリケーションで動くようになったところ。 https://github.com/kmdsbng/refinements_rails_presenter_test 動きを一言で説明すると、特定のViewのファイルでのみ、refineで定義したメソッドが生える。例えば、あるViewでのみ、modelにメソッドを生やす、ということができる。 これはRuby2.1のRefinementsの機能を使って実現してるだけなんだけど、Viewのなかでusingを呼び出すだけでは動いてくれなかったので、動くようにActionpackに手を加えてる。 まず、refine定義するモジュールのサンプル。 https://gi

    Refinementsを使ったRails Presenter - カメログ
    takuto_h
    takuto_h 2014/07/25
  • local open - OCaml.jp

    このページは最後に更新されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。 OCaml 3.12 で導入された local open 機能を使うと、 open によって導入される識別子のスコープを単一の式に限定することができるようになります。 let open Complex in conj (add one i) (* 1-i *) conj one (* error *) これが特に便利なのは演算子と組み合わせた場合です。 例えば、 32 ビット整数の計算を行なう場合、 Int32 モジュールを使って Int32.add a b のように書くことができますが、毎回 Int32 と書くのは少し面倒です。かといって、 open Int32 として add や sub といった一般的な名前で現在の名前空間を汚されてしまうのも面白くありません(succ のように

    takuto_h
    takuto_h 2014/07/03
    局所的なメソッド定義が出来たらこれ相当のものも便利そう
  • Rubyist Magazine - スはスペックのス 【第 1 回】 RSpec の概要と、RSpec on Rails (モデル編)

    『るびま』は、Ruby に関する技術記事はもちろんのこと、Rubyist へのインタビューやエッセイ、その他をお届けするウェブ雑誌です。 Rubyist Magazine について 『Rubyist Magazine』、略して『るびま』は、Rubyist の Rubyist による、Rubyist とそうでない人のためのウェブ雑誌です。 最新号 Rubyist Magazine 0063 号 バックナンバー Rubyist Magazine 0063 号 Rubyist Magazine 0062 号 Kaigi on Rails 特集号 RubyKaigi Takeout 2020 特集号 Rubyist Magazine 0061 号 Rubyist Magazine 0060 号 RubyKaigi 2019 直前特集号 Rubyist Magazine 0059 号 Rubyist

    takuto_h
    takuto_h 2014/07/03
    Refinementsの活用例(のはずだったもの):*_evalと組み合わせてsexy_regexp
  • https://okmij.org/ftp/Scheme/scheme.ml

    takuto_h
    takuto_h 2014/06/16
    Dynamic OCaml: OCaml as Scheme
  • call/ccと古典論理のカリー・ハワード対応 - 再帰の反復blog

    「直観主義論理のカリー・ハワード対応」の続き。 call/ccと継続 call/ccというのは、gotoを強力にしたものだと思っておけば良い。ただしScheme以外のプログラミング言語では、あまり見かけない機能。 例えばブロック構造から抜け出すための命令がある言語を考える。どのブロックから抜け出すかはラベルで指定する。またラベルはギリシャ文字で表すことにする。とりあえず次のような感じになるだろう。jumpの部分を実行するとブロックから抜け出す。 :α{ ... ... jump α; ... // ここは実行されない }でも、ブロック自体が値を持っている(値を返す)ようにした方が汎用的になる。例えば、次のプログラムはflagが真ならxに1が代入され、偽なら2が代入される。 x = :α{ ... ... if (flag) { jump α 1; } ... 2; }値を返すにしても返さな

    takuto_h
    takuto_h 2014/05/16
  • ニコニコ動画iPhoneアプリの作り方@スマートフォン2011講演資料

    そう、UE4ならね。あなたのモバイルゲームをより快適にする沢山の冴えたやり方について Part 2 <Texture Streaming, メモリプロ...エピック・ゲームズ・ジャパン Epic Games Japan

    ニコニコ動画iPhoneアプリの作り方@スマートフォン2011講演資料
    takuto_h
    takuto_h 2013/09/03
    osec(おせち)形式
  • Real World OCaml が出ました - camlspotter’s blog

    一昨年から少しずつ書かれていた OCaml プログラミングの、 Real World OCaml (以下 RWO)がついに public beta になり公開されました。 ( https://realworldocaml.org/beta1/en/html/ ) 版元の O'Reilly ではこのベータ版の状態の e-book が 今なら安く手に入ります。完全版には後から無料でアクセスできるように なるそうです。( http://shop.oreilly.com/product/0636920024743.do ) !!!!!安く買いたい人は http://shop.oreilly.com/category/deals/early-release.do?code=WKERRLS をよく読んでね!!!!! このは、今まで外に伝わりづらかった OCaml プログラミングの最前線の一面を 伝

    Real World OCaml が出ました - camlspotter’s blog
    takuto_h
    takuto_h 2013/06/28
  • http://www.ccs.neu.edu/home/matthias/Presentations/11GS/gs.pdf

    takuto_h
    takuto_h 2013/06/17
    "Functional Programming is Easy, and Good for You"
  • Bitbucket

    takuto_h
    takuto_h 2013/06/14
    "ASTなどの複雑な相互再帰データ型のマップ、フォールドなどのためにクラスのオープンリカージョンが便利ですね。(snip)私は型定義からそういうクラスを自動生成したりします。" https://twitter.com/camloeba/status/345172370148966400
  • JSでローカルスコープ作るときのアレの意味

    programming notes. mainly about JavaScript / jQuery. [@Takazudo] [takazudo@gmail.com] Hint: alt + / JSでこういうの見たことあるんじゃないかと思います。 何これと思ってたんだけど、Paul Irishがスクリーンキャストで解説していた。 まず、undefinedについて。これは、undefinedという値はJSでは上書き可能なので、こうやって、渡されない引数を使えば、このfunction内では確実にundefinedがundefinedであることを保証できる$=jQueryは、$がjQueryであると中で保証させるするためwindow, documentについては意味ないんじゃ?と思いきや、これは、主にJSのminifierのため。これをやると、JSのminifierは、関数内でwindow

    JSでローカルスコープ作るときのアレの意味
    takuto_h
    takuto_h 2013/06/10
    (function($, window, document, undefined){})(jQuery, this, this.document);
  • Bitbucket

    takuto_h
    takuto_h 2013/05/30
  • enzui

    かつて作っていた Max/MSP風のヴィジュアルプログラム言語です. [RUN]で実行できます. 三角マークの数字はドラッグで値を変更, [●]はボタン, [×]はトグルスイッチです. ダブルクリックとかで編集もできる (細かいことは忘れた)

    takuto_h
    takuto_h 2013/05/21
    Max/MSP風のヴィジュアルプログラム言語
  • Cello • High Level C

    #include "Cello.h" int main(int argc, char** argv) { /* Stack objects are created using "$" */ var i0 = $(Int, 5); var i1 = $(Int, 3); var i2 = $(Int, 4); /* Heap objects are created using "new" */ var items = new(Array, Int, i0, i1, i2); /* Collections can be looped over */ foreach (item in items) { print("Object %$ is of type %$\n", item, type_of(item)); } /* Heap objects destructed via Garbage

    takuto_h
    takuto_h 2013/05/08
  • OBB vs AABB - Radium Software Development

    iPhoneの一般修理店は予約なしでも来店できる? 基的には飛び込みで修理に行ってもOK iPhoneを置いていたソファにうっかりと腰かけてしまい、パネルを割ってしまった、こんな時はスマホの一般修理店へ行きましょう。画面割れは、スマホやタブレットの故障原因として非常に多いものです。予約なしで突然お店に行っても平気かしらと、不安に思う方々もいらっしゃるかもしれません。結論としては特に問題はなく、予約なしで訪問しても画面割れの修理はお願いできます。 ただし他のサービス業のお店同様、予約なしの場合、お店が混雑していると順番待ちをしなければいけないです。特に繁盛しているスマホ修理のお店だと、行列が店内で出来ており、予約なしだと、自分の順番が巡ってくるまで長時間待たされる可能性があります。平日の朝、昼なら利用客が少ない場合が多く、飛び込みでも比較スムーズに修理が頼めます。 予約は入れた方が時短に、

    takuto_h
    takuto_h 2013/05/05
    Non-Virtual Interface Idiom
  • C++11時代におけるクラスの書き方 - イグトランスの頭の中

    記事は、C++11 Advent Calendar 2011 : ATNDの2日目の記事です。 C++のclassは様々な使い方ができます。後発のほかの言語ではいくつもの概念に分かれているものも、C++ではすべてclassということもあります。 そこで、C++でclassを定義する際も、classと一括りにせず、自分がいったいどんなclassを書こうとしているのか明確に意識するとよいのではないだろうかと考えました。そのために、私なりのclassの分類をまとめ、この記事を書くことにしました。 これは、各々のプログラミング言語の経験により違いが出ることと思います。異論もあると思いますので、ご自身でも考えてみるとよいと思います。 以下、この記事では4種類に分類しています。 1つ目は「オブジェクト指向プログラミング (OOP) を実現するクラス」です(長いので以下OOPクラスと略します)。 vi

    C++11時代におけるクラスの書き方 - イグトランスの頭の中
    takuto_h
    takuto_h 2013/05/05