タグ

rubyとllに関するyuguiのブックマーク (8)

  • LLいろいろ、スコープいろいろ : 404 Blog Not Found

    2007年12月01日18:45 カテゴリLightweight Languages LLいろいろ、スコープいろいろ このスコープの「レキシカルさ加減」が、実は言語によって結構違うので、この機会にちょっとつっこんでおくことにする。 ハタさんのブログ : javascriptを初めて学ぶ人についてのおさらい。その1 変数で宣言したものには、参照先が決まっています。その参照の範囲はスコープとも呼びます。ここでいきなり問題。以下のコードは何をalertするでしょうか? (function(){ var i = -1; for(var i = 0; i < 10; i++){ /* whatever */ } alert(i); })() (function(){ var i = -1; for(var i = 0; i < 10; i++){ /* whatever */ } alert(i);

    LLいろいろ、スコープいろいろ : 404 Blog Not Found
    yugui
    yugui 2008/07/18
  • 「Perl, Python, Ruby の比較」があまりにもいい加減な件 - odz buffer

    ref:Perl, Python, Ruby の比較 ref:はてなブックマーク - Perl, Python, Ruby の比較 ref:はてなブックマーク - Perl, Python, Ruby の比較 ちょっと遅くなったが以前宣言したとおり、書いておく。 「Perl, Python, Ruby の比較」はどうも調査が足りないのか、結果的にかなり嘘のまじった文章になっている。あくまで、初心者の私見ですので気軽に聞き流してください。とはあるものの、はてブのコメント等で「参考になる」とか言っている人もいる*1ので一応指摘しておこうと思う。 3.2 次に Python 変数はデフォルトで局所変数となるので、 Perl のように my で宣言する必要はありません。 my を強制することで変数の typo を防げるという視点が抜けるのは若干フェアではないですね。 それから、Python には

    「Perl, Python, Ruby の比較」があまりにもいい加減な件 - odz buffer
  • Microsoft、.NETに動的言語サポートを段階導入

    MSはPythonPHPPerlRubyなどの言語を求める声が高まっていることに応え、動的言語サポートへと踏み切った。 Microsoftでは、.NETプラットフォームでの動的言語のサポート改善に関しては、段階的なアプローチで臨む考えだ。 IronPython言語の作成者で、MicrosoftのCLR(Common Language Runtime)チームの開発リーダーを務めるジム・ハグニン氏がeWEEKに語ったところによると、Microsoftでは、さまざまなレベルあるいはフェーズを通じて、CLRの上に各種動的言語のサポートの導入を進める方針だという。 ハグニン氏によると、いちばん下のレベルでは、Microsoftは.NET構造全体に動的言語の追加サポートを組み込む予定だ。その1つ上のレベルでは、成功したソフトウェアパートナーの事例やベストプラクティスをコード化し、開発者がライブラ

    Microsoft、.NETに動的言語サポートを段階導入
  • まつもとゆきひろのプログラミング言語論(1)

    リスト2 動的型の言語で書いたソースコード<BR>Rubyで記述した。ソースコードで変数の型を宣言していないが,実行時にきちんと型整合性をチェックする。数値と文字列を加算しようとすると,エラーが出る。 プログラムを実行して初めて決まる事項が多い「動的言語」。柔軟性が高い,簡潔な表現が可能など複数の利点を持っている。さらに性能の問題などの欠点がコンピューティング環境の変化で目立たなくなってきた。速く柔軟な開発が求められる中で動的言語の存在感は増すばかりである。(誌) LAMP(Linux,Apache,MySQLPerl/ Python/PHP)という言葉(表1[拡大表示])が注目されています。オープンソース・ソフトウェアを利用したソリューション構築を意味する造語ですが,プログラミング言語の代表として挙げられているのはどれも動的言語です。 以前は,企業システムをPerlPHPのようなイ

    まつもとゆきひろのプログラミング言語論(1)
    yugui
    yugui 2006/04/04
  • 動的型言語の一番の問題点 - babie, you're my home

    自分の考える動的型言語の一番の問題点は、 log_puts(out, msg) ここのoutに何を入れられるのか、何を入れたらいいのか簡単に調べる方法がないという点です。 これは全く以ってその通りだなぁ。現時点で動的に使われているメソッドを割り出すエディタや IDE はない(はず)ので欠点と言ってもいいのではないだろうか?(静的型言語愛好者支援) ぼぉっと考えてたんだけどインターフェイス縛りっていうのはどうなんだろう。 現状の、 class Log ... def puts(obj) ... end ... endを、 class Log ... def puts([:to_s] obj) ... end ... endメソッド縛り。アノテーションみたいな?とか。 module Outable def to_s ... end end class Log ... def puts(Outp

    動的型言語の一番の問題点 - babie, you're my home
    yugui
    yugui 2006/04/04
    design by contract?
  • programmers-paradise.com

    This domain may be for sale!

  • Ruby, Pythonで並列に逆引きを行う - bkブログ

    Ruby, Pythonで並列に逆引きを行う ウェブサーバのログを解析するときなど、IPアドレスからホスト名を引く処理 (逆引き) を大量に行いたいときがあります。DNS への逆引きの問い合わせには場合によっては数秒待たされることがあるため、大量の IP アドレスをひとつづつ順に処理していくとかなり時間がかかります。 記事では Ruby または Python でマルチスレッドで並列に逆引きを行う方法を紹介します。 Ruby の場合 Ruby で逆引きを行うには socket ライブラリを使う方法と、Resolv ライブラリを使う方法があります。マルチスレッドで並列に逆引きを行うには Resolv ライブラリを使う必要があります。 socket ライブラリを使った場合、 Socket.gethostbyaddr か Socket.getaddrinfo を使って逆引きを行います。これらは同

    yugui
    yugui 2006/01/26
    [TCP/IP][report]
  • いやなブログ: 配列操作の比較表: Ruby, Python, JavaScript, Perl, C++

    配列操作の比較表: Ruby, Python, JavaScript, Perl, C++ プログラムを書いていると、他のプログラミング言語の記憶とごっちゃになって、「配列の後ろに要素を追加するのは push だっけ、 append だっけ」などと混乱することがあります。特に Ruby, Python, JavaScript はコードの書き方が似ているので、この問題が起きがちです。 そこで、備忘録として、 Ruby, Python, JavaScript, Perl, C++ の配列操作の比較表を作りました。一番慣れている Ruby を基準にしています。間違いなどがあったらご指摘いただけると助かります。他の言語のもあるといいなあ。 Ruby (Array) Python (list) JavaScript (Array) Perl (@) C++ (std::vector)

  • 1