タグ

プログラミング言語に関するdaisuke-mのブックマーク (14)

  • プログラミング言語の使いわけ - アドファイブ日記(ミラー版)

    私は色んなプログラミング言語を触るのが病的*1に好きで、どの言語をどういう場面で使うのが良いのか凄く興味があります。 そこで、今の私の知識範囲でのそれぞれのプログラミング言語の使いどころを(自分用の整理もかねて)書いてみます。 C/C++ - C=OSやミドルウェア、C++=効率化のための再実装 安直に「メモリとスピードが第一優先のとき」と思いたいところですが、同等程度のスピードでもっといい言語はいっぱいあります。計算集約的ならJuliaとか、オブジェクト指向で組むようなソフトならD言語とか。なのでまずC言語は、Swigみたいのを使って他の言語の拡張ライブラリを書いたり、システムコールを使ってOSやミドルウェアを書くときじゃないかと思います。C++はテンプレートを駆使したりして効率を維持しながら抽象度の高いコーディングをするような場面がしっくり来ると思います。既に他の言語で実装したソフトウ

    プログラミング言語の使いわけ - アドファイブ日記(ミラー版)
  • あなたが理解できない,たった一行のRubyのコード (動的言語に対する静的解析の限界) - 主に言語とシステム開発に関して

    あなたは,下記のコードを理解できない。 p f /g+h/i これはRubyのコードである。「p」は,コンソールに出力する関数である。 問: だいたい,何をやっているコードですか? ※例えば,四則演算など。 構文をおおまかに説明して下さい。 どれが変数で,どれが関数で,どれが演算子か? ↓回答 回答: 一意に決定できない。 下記に, このコードの複数の解釈方法と, この件が引き起こす問題 について述べる。 ※なお,この問題が起きるのは動的言語に限らず,静的言語でも同様に発生しうることを前もって述べておく。 (1)分数の計算とみなすパターン 先行するコードを下記のように書いた場合: test1.rb # 変数に数値を代入 f = 2 g = 1 h = 2 i = 1 # 演算結果をpで出力する p f /g+h/i 実行結果: >ruby test1.rb 4 「分数の計算」とみなされる。

    あなたが理解できない,たった一行のRubyのコード (動的言語に対する静的解析の限界) - 主に言語とシステム開発に関して
  • 喜びの多いプログラミング言語はObjective-CとPHPと判明

    いやいやもっと楽しい言語あるでしょ?と思った方にとっても興味深い調査結果がExploring Expressions of Emotions in GitHub Commit Messages(GitHub上のコミットメッセージの感情表現の調査)として公開されていました。記事の作者はベルリンのRamiro Gómezさんで、自然言語とプログラミング言語の双方に関心のある彼はGitHubが公開した統計情報からさまざまな感情表現をコミットメッセージから探して分析するという調査を行いました。これによりanger(怒り), joy(喜び), amusement(楽しみ) surprise(驚き)の表現が多く使われているプログラミング言語のランキングを生成して公開しています。 怒りの言語はVimL、C、Shell 怒りのランキングではangry(腹を立てる)、annoying(いらいらする)、cra

    喜びの多いプログラミング言語はObjective-CとPHPと判明
  • プログラミング言語を刃物に例えた画像 : あごひげ海賊団

    2012年06月22日09:00 カテゴリ画像 プログラミング言語を刃物に例えた画像 明解 C++ 「画像」カテゴリの最新記事 タグ :#画像

    プログラミング言語を刃物に例えた画像 : あごひげ海賊団
  • 言語女子会: undefとnullは両方必要? - 西尾泰和のはてなダイアリー

    Twitterのタイムラインが面白すぎて、ついうっかり言語を擬人化して脳内で言語女子会なるものを開いてしまいました。なお、登場人物と実在の人物は1対1に対応しません。 undefinedとnullの両方必要なの? とあるプログラミング言語が集う女子会にて: Perl: そういえばさ、なんでJavaScriptちゃんってundefinedとnullの両方もってるの? JavaScript: えっ、未定義の変数にアクセスした時undefined返したいじゃない? Python: 例外投げて死ねばいいじゃん Ruby: 例外投げて死ねばいいよね Python & Ruby: ねー♡ Java: いやそこは参照型ならnull、数値型なら0で初期化すべきでしょ C: これだから最近の若い子は…初期化にだってコストが掛かるんだからね!デフォルトで初期化するなんて無駄遣いよ!必要な人だけが責任をもって初

    言語女子会: undefとnullは両方必要? - 西尾泰和のはてなダイアリー
    daisuke-m
    daisuke-m 2012/03/17
    外なのに声だして笑ったw
  • 最近のウェブ系スタートアップが採用しているプログラミング言語やフレームワークまとめ - laiso

    http://www.quora.com/Node-js-Ruby-Python-who-wins-in-5-years を読んでて「勝利条件としてより多くの”スタートアップ”に選択されること」という話がでてたけど、そもそも今は何が採用されているのか状況がよくわかたっていなかったので調べた。 スタートアップ? 一般(自分の周辺)に「ウェブサービス」みたいな呼称されているもの。消費者向けというかなんというか、企業向けシステムとか、ソーシャルゲーム単品とかは含めないことにした なんでスタートアップ?(小規模な企業) 企業が大きくなってくると、いろんな領域で必要なことがあってこの企業は→このプログラミング言語みたいなひもづけができなくなるので 項目は =企業ではなく=サービスでわけた 順番、国内外は適当。できるだけ知名度のありそうなサイトを選んだ いわゆるサーバーサイドのアーキテクチャの話(それ

    最近のウェブ系スタートアップが採用しているプログラミング言語やフレームワークまとめ - laiso
  • 遺伝子をモチーフにした言語「Genomy」を作りました - 西尾泰和のはてなダイアリー

    最近、3年くらい前に書いた「そろそろ例のプロジェクトについて言及するか」についてTwitterで言及があったので思い出しました。「条件を満たしたものをすべて呼び出す」という設計思想でプログラムが書けてしまうという点について意外とみんなピンと来ないみたいだからコンセプトプルーフを実装してみようと思っていたんでした。 という訳で作りました。https://github.com/nishio/genomy 解説 「遺伝子はタンパク質の設計図」というところまでは教科書などでもよく言及されます。でも、その設計図には「どういう状況になったら作るべきか」「どういう状況では作るべきではないか」という情報も書かれています。 この「作るべきではない」(発現の抑制)がどう実現されているか、ザックリ説明しましょう。体の中にあるタンパク質があると、これがある遺伝子の周辺にへばりつき、その遺伝子からタンパク質を作る過

    遺伝子をモチーフにした言語「Genomy」を作りました - 西尾泰和のはてなダイアリー
    daisuke-m
    daisuke-m 2011/12/27
    これ、可能性が面白いなぁ。発想が凄いと思う。
  • 「動的型付言語は使い物にならない」か? - give IT a try

    はじめに RubyScala, 動的型付言語は使い物にならないという興味深いWeb記事を読みました。 はじめに断っておきますが、おいらは別にRubyが嫌いなわけではないですし、「動的型付言語は使い物にならない」と思っているわけではありません。 そもそもRubyや動的型付言語での大規模開発経験がないので、良し悪しを正当に評価できません。 ましてやScalaなんて文法すらまともに知らないので、Scalaバンザイ!なんて言えるわけもありません。 ただ、おいら自身も「Rubyとかで開発したらこんな問題が起きるかも〜」と想像していたことが、結構そのまま書かれていたのが印象的でした。 これまで中規模〜大規模なシステムはJavaやC#で開発してきたので、IDEやコンパイラの支援はたっぷり受けてきました。 Ruby on Railsで開発してみたい!という憧れはありますが、IDEの入力補完やリファクタリ

  • Engadget | Technology News & Reviews

    Hands-on with the new iPad Pro M4: Absurdly thin and light, but the screen steals the show

    Engadget | Technology News & Reviews
    daisuke-m
    daisuke-m 2011/09/10
    また何か出て来たぞぅ。。
  • どのプログラム言語を選ぶべきか・・・ - きしだのHatena

    PHP-erはダメな言語でいかにまともなものを作るかっていうマイナスからのスタートだし、 JavaScript-erは何もないところで何か動いて楽しいっていう0からのスタートだし、 Ruby-erはRuby好きって言ってるだけだし、 Java-erはJavaの仕様にしか興味がないし。 Scala-erは生ぬるいこと言うと狩られるし、 Smalltalk-erは過去の栄光語ってるだけだし、 COBOL-erは苦労話しか出ないし、 FORTRAN-erはプログラムに興味ないし、 Perl-erは同窓会みたいだし、 Python-erは仲間探すの大変だし、 Erlang-erはどこにもいないし、 C-erは目先の仕事にしか興味ないし、 C++-erはC++の復興にしか興味ないし、 C#-erはWindowsにひきこもるし、 ActionScript-erはAdobe税はらうのに大変そうだし、 O

    どのプログラム言語を選ぶべきか・・・ - きしだのHatena
  • どうも周知徹底が不足しているようなので再度のお願いとなりますが、C死ね。

    確かにCでしか書けない類のプログラムは存在する(例を挙げるならKernel)が、それはCの存在を赦す理由にはならない。確かにCに輪をかけてさらにダメな類のプログラミング言語は存在する(例を挙げるならC++)が、それはCの存在を赦す理由にはならない。確かにCでしか書けないダメプログラマは存在する(例を挙げてほしければここにおまえの名前を入れろ)が、それはCの存在を赦す理由にはならない。結論:C死ね。 そもそも計算機にできて算盤にできないことなど存在しない。存在しないんだぞ。なのに何故人はプログラムを書くのか。それはオートメーションのためなのであり、奴隷的使役から人類の尊厳を開放して、この地上に楽園を築くためである。まあそこまで大上段に振りかぶって普段から書いてる輩はいないにせよ、プログラミングとは楽をするため、豊かな人生を実現するため、誰かの幸福のために行うものだ。違うか?じゃあなぜプログラ

    どうも周知徹底が不足しているようなので再度のお願いとなりますが、C死ね。
    daisuke-m
    daisuke-m 2011/05/17
    執念を感じるw
  • TPCI - TIOBE Programming Community Index

    Let op! Internet Explorer wordt niet meer ondersteund. Hierdoor kan de website mogelijk niet goed functioneren, gebruik een alternatieve browser om optimaal gebruik te maken van deze website. Klik hier om een alternatieve browser te downloaden. Home » TIOBE Index TIOBE Index for June 2024 June Headline: C++ surpasses C for the first time in history C++ is the new number 2 in the TIOBE index. Origi

    daisuke-m
    daisuke-m 2010/10/16
    言語人気度ランキング。RSSで観測を続けると市場が見えて面白いかも。
  • クラスが持つ3つの役割 - 西尾泰和のはてなダイアリー

    某所のチャットで話題になって、流れ去りそうだったのでもったいないから転載しておいた。事後承諾で。 MIYAMOTO Daisuke: 型の継承と実装の継承を区別する方法がないんだよな。 西尾泰和(nishio.hirokazu): 型を継承させずに実装を継承させたい→それ移譲で ってことかな? MIYAMOTO Daisuke: そそ。そもそも、クラスに「型としての役割」と「実装としての役割」という複数の責務があることに、俺は長い間気づかなかった。これに気づかないと、型継承と実装継承が頭の中で整理できない。 西尾泰和(nishio.hirokazu): 僕が最近気づいたことも加えると、クラスには「ユーザ定義型」「インスタンスを作成する道具」「実装の再利用の単位」という3つの役割がある。 MIYAMOTO Daisuke: あぁ、インスタンスの生成器ね。 西尾泰和(nishio.hiroka

    クラスが持つ3つの役割 - 西尾泰和のはてなダイアリー
    daisuke-m
    daisuke-m 2010/10/13
    / 2011/3/8 ググってたら自分が出て来て面食らった。
  • Befunge - Wikipedia

    Befunge は難解プログラミング言語の一つ。手続き型、スタック型で、自己変更的な言語である。実用言語ではない難解プログラミング言語のひとつ。 この言語のプログラムの命令は一次元の列ではなく二次元の格子上に並んでいて、実行する向きを上下左右に変更できる。この言語の任意の1命令は、ソースコード中で1文字で表現される。したがって、ソースコード中の行と桁がプログラムの格子の位置に対応する。 1993 年、Chris Pressey が「コンパイルが困難な言語」として作った。Befunge-93 はプログラムのサイズが 80 桁 25 行に固定されている。Befunge-93 の拡張 (一般化) である Funge-98 にはこの制限は無く、チューリング完全である。さらに Funge-98 には任意次元への拡張やマルチスレッド対応等が含まれている。 プログラム例[編集] "Hello, Worl

    daisuke-m
    daisuke-m 2010/09/27
    これでコードを書ければ、パズル作家の気分に浸れると思う。で、何て読むんだ?
  • 1