タグ

2016年3月31日のブックマーク (6件)

  • 佐藤先生がErlang、Scala、Javaなどの並行処理を斬る! - スティルハウスの書庫の書庫

    ここ数日の佐藤先生のエントリが熱い! Erlang、ScalaGoJavaなどの現代の言語(Erlangは古いか)における並行処理の扱い方について、それぞれの歴史的背景や意義、得手不得手などがわかりやすく紹介されてます。80年代から並行処理やオブジェクト指向を研究されてきた佐藤先生ならではの視点ですね。ちょっと長くなりますが特に私が興味深かった部分を引用します(強調は私): 佐藤一郎: Web日記 (2010年) 最近、興味深いのはオブジェクト指向言語のScalaやErlangが話題を集めていることでしょうか。どちらもActor Modelをベースにしているそうですが、オブジェクト指向言語の歴史でいうと、Actor Modelなどの並行処理用オブジェクト指向言語の研究が盛んになったのは1985年からの6,7年ぐらいだと思います(Actor Model自身はもっと古いですが)。そして19

    佐藤先生がErlang、Scala、Javaなどの並行処理を斬る! - スティルハウスの書庫の書庫
  • 目が見えなくてもプログラミングできるよ - Qiita

    はじめに こんにちは!@moutendです。私は視覚障害があるので、普段は画面を見ずにMacのVoiceOverというスクリーンリーダーの音声のフィードバックを頼りにプログラミングをしています。ところで最近@ssotoyaさんの記事にて音声を頼りにプログラミングする様子が公開されました。スクリーンリーダーの音声を聞いたことがありますか? - ラック公式ブログ - 株式会社ラック@ssotoyaさんは全盲のため全く目が見えないのですが、超高速でコーディングをされています。控えめに言って最高にロックです。私も負けていられません。ということで、この記事に触発されて、私も画面を全く見ずに音声のフィードバックのみを頼りにプログラミングしている様子をキャプチャしましたので公開してみます。具体的には、QuickTimeのスクリーンキャプチャ機能を使って画面を撮影しつつ、音声はsoundflowerという

    目が見えなくてもプログラミングできるよ - Qiita
    l-_-ll
    l-_-ll 2016/03/31
    そんなことが可能なのか……
  • メインの開発ツールをVimからRubyMineに変更した理由 - Qiita

    はじめに 突然ですが、僕は過去にこんな記事を書いてQiitaに投稿していました。 脱初心者を目指すなら知っておきたい便利なVimコマンド25選 (Vimmerレベル診断付き) 脱初心者を目指すVimmerにオススメしたいVimプラグインや.vimrcの設定 こういった記事を読んだことのある方はもしかすると「やっぱりjnchitoさんは普段からバリバリVimをつかいこなしてるんだろうな~」と思っているかもしれません。 が!! 実は1年前ぐらいからVimではなくRubyMineをメインで使っています。 そこでこの記事ではなぜ僕がRubyMineを使うようになったのかを書いてみます。 「なんでRubyMineにしたの?」 理由は大きく分けて2つあります。 理由1:Vimのプラグイン管理に疲れた Vimは無料で使えます。便利で高機能なプラグインもいっぱいあります。 プラグインを駆使すればRubyM

    メインの開発ツールをVimからRubyMineに変更した理由 - Qiita
    l-_-ll
    l-_-ll 2016/03/31
    プラグインを使ってはいけない
  • JavaScriptとコールバック地獄 - Yahoo! JAPAN Tech Blog

    ヤフー株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。LINEヤフー Tech Blog Yahoo!デベロッパーネットワークの中野(@Hiraku)です。JavaScriptでサンプルコードを書く機会があったので、どんなインターフェースで提供するのが便利なのか考えてみました。よく問題になるコールバックのネスト問題について、一般的な話をまとめてみます。 お題 突然ですが、次のような処理を行う必要があるとします。 「0」を出力する 1秒待つ 「1」を出力する 1秒待つ 「2」を出力する これをプログラムで書くとどうなるでしょうか? シェルスクリプトの場合(同期) たとえばシェルスクリプトで素直に書くと、次のようになります。

    JavaScriptとコールバック地獄 - Yahoo! JAPAN Tech Blog
  • JavaScript奇妙なふるまいまとめサイト

    This is a collection of those very special irregularities, inconstancies and just plain painfully unintuitive moments for the language of the web. 主要なすべてのWebブラウザはJavaScriptエンジンを搭載している。JavaScriptを含んだページをアップしさえすればブラウザ側で動作する。何らかのWebサービスを組み合わせてればそれだけで別のサービスを提供するページを作れる。ブラウザにおけるJavaScript実行性能は日進月歩で高速化しており、WebページやWebアプリケーションを作成する言語として日々その重要性が高まっている。 扱いやすい言語ではあるが、眉を寄せたくなることが多い言語でもある。その不可解で理解しにくい挙動に悩まされたプ

  • 仮想パネル: JavaScriptで非同期プログラミングを乗り切る方法

    これに対して、CommonJSグループはPromiseという形でこれに答えている。これは任意の時点で、完了しているかもしれないし完了していないかもしれない、非同期に実行されるアクションの結果を表現したオブジェクトとのインターフェイスを提供する。この方法では、さまざまなコンポーネントが非同期アクションのためのpromiseを返すことができ、コンシューマは予測可能な形でそのpromiseを利用できる。また、Promiseは非同期性を支援するために構文上便利な言語レベル拡張のために利用される基エンティティを提供することもできる。 Stratified JavaScriptはこれとは別のアプローチをとっており、JavaScript言語のスーパーセットを提供することで、この問題を解決している。しかし、使う言語を切り替えられないのなら、とるべき道はシーケンシャルなコードをエミュレート可能な、柔軟なA

    仮想パネル: JavaScriptで非同期プログラミングを乗り切る方法
    l-_-ll
    l-_-ll 2016/03/31
    InfoQはこうしたAPIとDSLについて調査し、それぞれの作者に問題、設計原則、従うべきパラダムなどにどうアプローチしたのか、そして、それぞれの限界がどこにあるのかについて質問した。