4月のブログコンテストのエントリを勝手に批評するシリーズ(その3)。
「良い補完付きのIDEが欲しい」というもの。言語そのものとは直接関係ない。
IDEについては、NetBeansが頑張っていることは知られているわけだが、
Eclipse系でも
と結構な動きが出ている。Rubyのプレゼンスが上がるにつれ、
もっと良いものが登場して来るんじゃないかな。
4月のブログコンテストのエントリを勝手に批評するシリーズ(その4)。
現在のブロックコメント(「=begin」から「=end」まで)に変わる新しいものを導入しよう、というもの。
提案されているのは「#*」から「*#」。
個人的にはブロックコメントの必要性はあまり感じていない。
ツール(たとえばEmacsのruby-modeでのruby-encomment-region)で
簡単に対応できるからだ。
たとえ導入するにしても記法はよく考える必要がある。
少なくとも「#*」では既存のコメントに重複するものがありそうだ。
4月のブログコンテストのエントリを勝手に批評するシリーズ(その5)。
ruby-talkの常連djbergによるもの。たくさんある。
- Native thread support. Huge. Especially for embedding and extending the language.
- SMP support - no giant interpreter lock. Also huge.
- Unicode support, including the ability to parse some Unicode mathematical notation, ala Fortress.
- Asynchronous methods.
- Better regex engine.
- AOP support (pre, post, etc).
- Implicit getters and setters.
- Refactor some of the core classes. Some methods are overwrought, and some are useless.
- Behaviors (as per the Sydney definition).
- Better project management. That means dealing with bug reports, patches, and RCR's in a timely fashion instead of letting them sit for years (or not responding at all).
- Optional static typing, as a Behavior.
- Transactions.
- Atomic expressions.
- Fine grained mixins.
- Named parameters.
- Make def return a (improved) Method object.
- Anonymous methods via 'def'.
- New parser. Goodbye yacc.
- Structured warnings.
- Class.aliased_methods.
- Different License.
- Better Proc/proc integration.
- Make Windows NT a first class citizen. Drop support for Windows 95/98/ME/cygwin/mingw.
- Along those same lines, limit support to production platforms, instead of trying to support every OS under the sun. That means MS Windows, Solaris, Linux, FreeBSD, AIX, HP-UX, and OS X. This will reduce maintenance and simplify the build process considerably.
- Continuous integration on supported platforms so that we don't have to rely as much on preview releases to smoke out bugs.
- Replace the autoconf based configure with something cross platform ala Perl's build script.
- Much more thorough test suite.
- Better documentation.
- Include several RCR's from rcrchive.net - too many to list here.
- Improved standard library:
- Remove the Japanese specific libraries.
- Remove the rarely used or outdated libraries (abbrev).
- Integrate some libraries into the core classes (io-wait).
- Remove Unix specific libraries (dbm, sdbm, gdbm).
- Replace some libraries (getoptlong, etc, csv) with better/cross-platform versions.
- Refactor/redesign existing libraries that need it (net-http).
- Add new libraries that I feel would be useful to a wide audience (kirbybase, dbi).
Maybe
- Traits.
- Type inferencing (as a Behavior).
- Selector namespaces.
いちいちコメントつけるだけでも疲れちゃいそうだけど、とりあえず、
1.9で(ある程度)やるものは以下の通り。
- Native thread support. Huge. Especially for embedding and extending the language.
- 一口にnative threadと言っても奥は深い。1.9のは「native threadを使うライブラリと共存できる」のが最大の目標。
- Unicode support, including the ability to parse some Unicode mathematical notation, ala Fortress.
- Fortress的なUnicodeの使い方には「No」
- Better regex engine.
- Better documentation.
- Remove the Japanese specific libraries.
- Remove Unix specific libraries (dbm, sdbm, gdbm).
- Replace some libraries (getoptlong, etc, csv) with better/cross-platform versions.
曖昧すぎて何ともいえないが、(2.0以降)検討してみたいのは以下の通り。
- Asynchronous methods.
- AOP support (pre, post, etc).
- Implicit getters and setters.
- Refactor some of the core classes. Some methods are overwrought, and some are useless.
- Atomic expressions.
- Fine grained mixins.
- Named parameters.
- Make def return a (improved) Method object.
- Anonymous methods via 'def'.
- New parser. Goodbye yacc.
- Structured warnings.
- Class.aliased_methods.
- Better Proc/proc integration.
- Traits.
- Type inferencing (as a Behavior).
- Selector namespaces.
考えないといけないのはこれ。
- Better project management. That means dealing with bug reports, patches, and RCR's in a timely fashion instead of letting them sit for years (or not responding at all).
もうちょっと良いissue trackingが必要だ。
Streamをベースにした言語StreamIt。
並列実行を最大化するために、
あらゆる計算をStreamでつなごうという試み。
成功するだろうか。
赤井さんは同郷で(学校は違うけど)、高校時代に個人的に面識もある先輩なので
こんな下らないことで辞任というのは残念で仕方がない。
Ruby VMインタビュー・エピソードIII。
Multi-VMのこととか。
Ola Biniに続いて、XRubyの開発者Ye ZhengもThoughtWorksに入社したという話題。
これってすごいことだと思うよ。
で、このままだとXRubyとJRuby周辺で協調と積極的な開発が進んで、
オリジナルRubyが置いていかれそうで、ちょっと危機感を感じたりして。
いや、1.9ももちろんそれなりに頑張っているんだけど。
s/RDE開発者/RDT開発者/じゃないでしょうか。一瞬、
「なんでEclipseなのにRDEが?」と思ってしまいました。
あ、間違えた。直しときます。