Java: The Good Partsの本のタイトルに触発されて、逆にJava言語の使いにくい部分をいくつかピックアップしてみました。Java EEなどの業務系のアプリケーションプログラマーの視点で書いていますので、別の立場ではここで指摘している事項が必ずしもBad Partではないという指摘もあるかもしれませんし、他にもいろいろなポイントがあると思いますが、とりあえず、私の独断で思いついたものを10個説明したいと思います。 1.標準APIのチェック例外が扱いにくい Java言語のチェック例外は本当にGood Partなのか? - 達人プログラマーを目指してでも取り上げましたが、Bad Partの第一番目として標準APIのチェック例外が扱いにくいという点を指摘させていただきたいと思います。チェック例外については、理屈上コンパイラーによって例外の処理をプログラマーに強制させることができるす
1 An example 2 Accessing and Importing Java Classes 2.1 Require a jar file to make resources in the jar discoverable within JRuby 2.2 Naming a Java Class 2.3 Import a Java Class to Use It Without The Full Path Name 2.4 Use include_package within a Ruby Module to import a Java Package 2.5 Gotchas 3 Calling a Java Method 3.1 Alternative Names and Beans Convention 3.2 Beware of Java generics
Hello and welcome to my corner of the Web. I'm a senior computer scientist interested in all scientific aspects of computer programming. I'm a professor at Collège de France, where I hold the chair of software sciences, and a member of Académie des sciences. I'm also a member of the Cambium research team of Inria. News [04/2024] Lecture material: slides in English are now available for my Collège
This is the common project page for: LuaJIT — a Just-In-Time Compiler for Lua. Coco — a Lua extension for True C Coroutines. DynASM — a Dynamic Assembler for code generation engines. Lua Bitop — a Lua extension for bitwise operations on numbers. Privacy Policy This website does not request, store or process any private data. This website is fully static and does not allow entry of personal informa
$Date: 2009/11/19 10:29:48 $ はじめに ヤマハルーター上で、ユーザーが開発したプログラムを実行することができます。Windowsのバッチファイル、UNIXのシェルスクリプトに相当する機能で、Luaという言語をベースにしているため、「Luaスクリプト機能」と呼びます。 Luaスクリプト機能を使うと、大量の設定変更を一気に行ったり、接続、切断などのイベントに応じて設定変更をしたりメールを送信したりといったアクションを行わせることができるようになります。 この文書は、ヤマハルーターのLuaスクリプト機能を利用するためのチュートリアルです。ヤマハルーター用のLuaスクリプトが書けるようになるのが目標です。読者は、ヤマハルーターをコマンドにより設定したことがある人を対象にしています。また、PCでテキストエディターが使えること、TFTPコマンドが使えることも必要です。 チュ
TTではpure Ruby版とpure Perl版のクライアントライブラリを自分で実装していたが、KTでは各種pure実装は自分では書かないことにする。私はC++版のクライアントライブラリを作成しメンテナンスするが、その他の言語に関しては、その言語で生活していて腕に覚えのある方々にお任せしたい。その前提として、プロトコルを明らかにしておく必要がある。英文の仕様書を後で書くが、そのたたき台としてまずは日本語で書いてみる。 ---- 概要 KTのサーバプログラム(ktserver)は、HTTPに基づいてクライアントと通信を行う。デフォルトのサービスポートは1978番だが、ユーザの設定によって変わることもある。サーバは、HTTP/1.0およびHTTP/1.1のリクエストを解釈することができ、それに対応するレスポンスを返す。 HTTP/1.1のリクエストにおいてContent-Typeヘッダの値が
The Haskell programming language community. Daily news and info about all things Haskell related: practical stuff, theory, types, libraries, jobs, patches, releases, events and conferences and more... ICFP 2010 papers are in ACM DL, but not freely available. The program is here: http://www.icfpconference.org/icfp2010/program.html And a (growing) list of freely available pre-prints: Monday Keynote:
日経エレクトロニクス9/6号によると Communicating Sequential Processes が一部で熱いらしい。知らなかったが、CSP自体は Transputer 向けの Occam 言語の基になっているとのこと。 そもそも XMOS という名前でもしやと思ったが、案の定、Inmosの流れを汲んでいるとは。 マルチコアだからといって、Transputerが復活することはないと思うが、Occamの復権はありえますね。 Transputerの遺産といえばIEEE1394で使われた DS-Linkを思い出します。
10:01 10/07/20 それでも2倍だ 先日のvectorの伸長度合いの記事に関して 本当に1.5倍のほうがメモリ効率がよいのか という反応をいただきました。とても興味深い。みんな読みましょう。 自分の理解メモ: 「再利用ができるから嬉しい」等の議論をするなら、 今までに確保したメモリ (1 + r^1 + ... + r^k) のうち、 有効に使えてるメモリ r^{k-1} (バッファ拡大直後) や r^k (次のバッファ拡大直前) の割合で評価してみようじゃないかという。 まず簡単のために再利用をしない場合を考えると、この割合はそれぞれ (r-1)/r^2、 (r-1)/r になります(途中計算略)。 この利用率が最悪になる瞬間 (r-1)/r^2 を最善にしよう、 という一つの指標で考えてみると、式を微分なりなんなりしてみると r = 2 で最大(25%)となることがわかります
原文: チャールズ=オリバー=ナター 今日ツイッターで、「JVM及びJDKが、あらゆるプログラミングにおいて真にイケてるプラットフォームになる為には未だ幾つかの欠陥が有る」と呟きました。沢山の人から「もっと詳しく」とせっつかれたので、ここに短く書き起こしておきます。勿論、これで全部という訳ではないのでしょうが、今日思いついたのはこれだけです。 ゼロから起動する際のパフォーマンス現存するJVMの起動はかなり速いですが、Java 7でのHotSpot(訳注:Sun及びオラクルのJVM)にはこれをより良くする為の改良が盛り込まれています。普通、こういった改良は、バイトコードを予め検証したり(或いは検証の為のヒントを与えたり)、クラスデータを幾つかのプロセスで共有したり、在り来たりではありますがプログラムのロード時間やリンク時間を短縮する工夫を凝らす事で成し遂げられます。ところが、多くのアプリケー
RISE rapport över första halvåret visar på en stark utveckling relativt föregående år. Vi ser fortsatt att behovet av forskning och innovation är stort inför de utmaningar som både industri och samhälle står inför. RISE rapport över första halvåret visar på en stark utveckling relativt föregående år. Vi ser fortsatt att behovet av forskning och innovation är stort inför de utmaningar som både indu
夏が近づくとウキウキしてくるmikioです。昨日ついにリリースされたKyoto Cabinet 1.0について今回は報告します。 1.0の位置づけ コミュニティ毎や製品毎にバージョン番号割り当ての方針は異なるわけですが、私の個人的なポリシーでは、1.0には特別な意味があります。すなわち、0.xのバージョンはbeta版的な位置づけで、「実サービスに使うのはちょっと待った方がいいですよ」ということを意味します。一方で、1.xはstable版的な位置づけで、「よろしければ実サービスでも使ってみてください」ということを意味します。私がstable版に設定する原則を以下に列挙します。 安定稼働を至上命題とする(バグがあればその修正を最優先する) APIを変更しない(変更するとしても後方互換性を維持する) DBファイルのフォーマットを変更しない(変更するとしても後方互換性を維持する) なるべく機能追加
昨年の12月から翻訳していた、「エキスパートPythonプログラミング」(原題「Expert Python Programming」) という本が、5/31に発売になります。 エキスパートPythonプログラミング 著者:Tarek Ziade 販売元:アスキー・メディアワークス 発売日:2010-05-28 クチコミを見る まだAmazonには目次が載っていませんが、 http://dl.dropbox.com/u/284189/epp/index.html で翻訳中時点の目次を公開しています(出版されるものと若干違いがあります)。 キャッチコピーにもありますが、この本はPythonの入門書ではなく、 すでにある程度Pythonのプログラムを書ける人がこれから活躍していく上で必要な 知識を網羅的に習得するための本です。 コンテキストマネージャーやメタクラスなどの高度なイディオム、 パッケ
■ [rails] Rails2/3用の認証プラグイン「devise」 http://github.com/plataformatec/devise Railscastsに簡単な紹介が上がってますのでそちらをどうぞ。 動画:Railscasts - Introducing Devise テキスト起こし:ASCIIcasts - “Episode 209 - Introducing Devise” 特徴は 必要なモデル・コントローラはUserのみ (Sessionは使わず、/user/sign_in とか create_user_session_path とかを使う) 認証周りのいろいろな機能がそれぞれモジュール化されている (confirmable, :recoverable, :rememberable...) とか。 Ruby Toolboxの他のプラグインとの比較は: Authlog
私はパターンマッチ大好きです。PEG も好きだし、Haskell や Erlang のパターンマッチも好きだし、オブジェクト指向言語のメソッドディスパッチもパターンマッチみたいな物です。しかし最近自家製 lisp しか触っていなくて、何をするにも car と cdr で大変フラストレーションが溜まっています。そこでちょっと変わった所で Scala のパターンマッチについて調べてみました。 Scala の使い方 いつの間にか私の macports に scala が入っていたのでそれを使います。コマンドラインで scala と入力するとそのまま実行出来るみたいです。 $ scala scala> 3 + 4 res0: Int = 7同じ jvm 言語でも clojure と比べてかなりマッタリしてますが、repl が使えるだけ有り難いです。 プログラムを保存するには .scala という拡
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く