福岡県が「組み込み向けRuby」の開発を行うと発表 65
ストーリー by hylom
組み込みにLLだと? 部門より
組み込みにLLだと? 部門より
あるAnonymous Coward 曰く、
経済産業省の地域イノベーション創出研究開発事業として「軽量Rubyを用いた組込みプラットフォームの研究・開発」が採択されたと福岡県が発表した。まつもとゆきひろ氏が中心となり、福岡CSK、九州工業大学、東芝情報システム、福岡県が参加するとのこと。
研究内容としては、組み込み開発に特化した「軽量Ruby」の開発と、家電等の電子機器で軽量Rubyを実行するための「Rubyチップ」等の試作開発が挙げられている。予算は約1億4,000万円とのこと。
Rubyの・・・ (スコア:3, おもしろおかしい)
Rubyチップ!素晴らしい!
当然、その先にあるのはRubyの指輪ですよね!?
かつてJavaの指輪はコーヒーを出してくれたらしいが、Rubyの指輪は何を出すのか?
http://internet.watch.impress.co.jp/www/article/980528/ring.htm [impress.co.jp]
Re:Rubyの・・・ (スコア:4, おもしろおかしい)
なるほど。
で、指輪が出来た所で Ruby チップにはバックドアがあった事が判るんですね?!
しかもバージョンによって優先度が違ってい…
結局9つの指輪と、7つの指輪と、3つの指輪と、1つの指輪が作られるが、1つの指輪が優先度が最強になっている。
1つの指輪を加熱すると文字が浮かぶんですね…
この指輪を福岡県の黒瀬にある活火山に放り込みに行くのが『指輪物語』である、と
fjの教祖様
Re:Rubyの・・・ (スコア:1)
3つの指輪の内、ガンダルフが隠し持っていた赤い指輪は Narya でしたっけか。Ring of Power ということは権力の指輪か(?)
Re: (スコア:0)
特集 Rubyボードでルビーの指輪を演奏する!
という感じでしょうか?
Re: (スコア:0)
ああ懐かしい。
持ってたはずだけど、どこに行ったんだろう。捨ててはいないはずなのだが……。
#ちなみに「SIMカードの中身がJavaカード仕様」みたいな話を聞いたことはある。
#裏付けもとってないし、仮に事実でも「だから何?」って程度の与太話だけどさ。
>Rubyの指輪は何を出すのか?
#給料3ヶ月分を吸い取られるんじゃね?
Re: (スコア:0)
そのぐらいなら気にしません。
-- 自宅警備員
Re:Rubyの・・・ (スコア:1)
Re: (スコア:0)
曇りガラスに爪を立てるんですね!
#それはパロディの方
Re: (スコア:0)
「非常に重要な用途に使う想定で3人月分の単価を投じて用意したものの、
計画に大幅な変更が生じたために、納品物がお蔵入りする話。」
ということでよろしいでしょうか。
#当時はタンジョーセキが何かも知らなかったなあ。
Re: (スコア:0)
斜め上の努力 (スコア:3, すばらしい洞察)
それこそ、東海道新幹線のATSのトラブル [srad.jp]を繰り返すだけでしょう。
そもそも、こんなことに税金を使うなら、こんなことをしなければならないほど組み込み技術者が不足する自体になった原因である劣悪な労働環境や低賃金を改める方向に使ったらどうかと思います。
Re:斜め上の努力 (スコア:3, 興味深い)
(車載をやっている人は、車載特有の話を組込みの本質だと思ってたりするし、携帯ばっかりやっているも同様)
実際には、「組込み」の範囲はずっと広くて、リアルタイム性なんか全然いらないような分野もありますよ。
リアルタイム性を要求される部分はCやアセンブラにまかせて、それ以外の部分をrubyという分担をしてもいいわけだし、斜め上というほど悪い筋じゃないと思います。
Re:斜め上の努力 (スコア:1)
幸か不幸か、色々なプロジェクトに飛ばされたり火消をさせれたりで、特定の分野だけではなく、そういう組込みもやった経験も踏まえた上で言っているのですけど。
大抵の組込みシステムは、仮にリアルタイム性が不要な分野であっても、パソコンとかに比べてプアなハードやソフトのリソースの上で動かないといけません。当然OSの機能だってWindowsのようにリッチでない場合も多く、対象ハードウェアへの理解や操作などが要求されるのです。アップデートだってパソコンみたいにお気軽に行えるものではありませんから、パソコン用途は違った意味での信頼性も必要です。Rubyのようなものに、これらが担保できるのか甚だ疑問です。
Re:斜め上の努力 (スコア:1)
BASICが乗っていたものも結構ありましたし
ターゲットはありそうだと思います。
Re: (スコア:0)
>特定の分野だけではなく、そういう組込みもやった経験も踏まえた上で言っているのですけど。
最近のゲーム機とか携帯電話の経験は無さそうですね。中でLLが走ってるのなんか普通になってきてますけど。
まさに
>>自分のやっている範囲こそが「組込み」だと信じる
典型例。
それはさておき、東海道新幹線のATSのトラブルが「組み込みにRubyのようなもの」を使ったのが原因だというソースってどっかにありましたっけ?
Re: (スコア:0)
>最近のゲーム機とか携帯電話
それらは「最新のゲーム機」とか「携帯電話」とかいう分野で組み込みではないよーな気もします。
まあ、どこまでを組み込みというのかという線引きの話
Re: (スコア:0)
傍から見ていて思ったけど,
>> 最近のゲーム機とか携帯電話の経験は無さそうですね。中でLLが走ってるのなんか普通になってきてますけど。
というケースは,組み込みという領域の中でのごく一部のケースにしか見えないんだけど.で,そういう領域を前提にするなら「組み込みプラットフォーム」と言わずに「ゲーム機プラットフォーム」とか「スマートフォン用プラットフォーム」とか言うべき.組み込み一般という前提で議論すべき状況で,一部の特殊な例を挙げて「だからおk」みたいなこと言うのも
>>自分のやっている範囲こそが「組込み」だと信じる
と同じレベルの思考じゃないの?
で,やっぱり何の限定も無く「組み込み」と言われれば
Rubyのようなものに、これらが担保できるのか甚だ疑問です。
という意見に賛成せざるを得ないと思うけどね,俺は.
Re:斜め上の努力 (スコア:1, すばらしい洞察)
俺も傍から見ていて思った事なんだけど、
>>> 自分のやっている範囲こそが「組込み」だと信じる
のこれとそれとは、同じレベルの思考に思えるね。
でもそれは、
>>> 自分のやっている範囲こそが「組込み」だと信じる
の証左でしかない。
でさ、やっぱり何の*限定も無く*「組み込み」と言えばって前提の、
「Rubyのようなものに、*これら* が担保できるのか甚だ疑問です。」
って意見は、想定してる*これら*が違うんだから、
双方、話が噛み合わないのも当然だと思う。
で、その程度の論拠を元に、
Rubyチップ役にたたねぇって言う人間の意見には、
作ろうとしている人がいる以上、賛成しかねるね。俺は。
# ふーん、ぐらいの印象って事ね
Re:斜め上の努力 (スコア:1)
「シチュエーション → Rubyの特徴」論法では有益な結論は得られないと思います。
シチュエーションの限定の仕方は人それぞれであり、それについて言い合っても、
たぶん、有益な結論は出てこないと思います。
「最大公約数的なもの」に限定したとしても、その限定の仕方はひとそれぞれなわけで。
したがって、「Rubyの特徴 → シチュエーション」論法が有益だと思います。
具体的には、
「Ryby には、○○という特徴があり、組み込み分野での△△といった用途で、有用と思われる」
といった主張の仕方です。
それで私は、この○○や△△に具体的に何が入るかが分からないのです。
Re: (スコア:0)
Re: (スコア:0)
>リアルタイム性を要求される部分はCやアセンブラにまかせて、それ以外の部分を
>rubyという分担をしてもいいわけだし、斜め上というほど悪い筋じゃないと思います。
正にそれこそ組み込みJavaでやっていたものだけど、成功した事例はほとんどないと思う。
#「組み込みのスペック的にこれから」という可能性もなくはないけどねえ。。。
Re: (スコア:0)
Android系以外のモバイル機器でもアプリ部はJavaでも書けますってのはありますし。
Re:斜め上の努力 (スコア:1, おもしろおかしい)
Androidは正気の沙汰とは思えないですね。
# そういえば、どっかの元社長もそんなこと言っていたような。
Re:斜め上の努力 (スコア:1, 参考になる)
Rubyネイティブでハードリアルタイムな仕様を策定すればいいだけの話でしょう。ハードウェアと使用する言語は別の話ですよ。
Re: (スコア:0)
だから組込プロセッサでLinuxを動かしたり,JavaやRubyでアプリケーションを組むというもあり。
ただし福岡県の資料にある
|Ruby は組込みソフト開発の主流言語の C 言語に比べ生産性が 10 倍程度といわれ
|ており、Ruby を組込みソフト開発に特化した言語にすることで、これら電子製品の
|生産性の向上が期待される。
とあるのは見当違いもいいところ。
上位のアプリケーションのレベルでの生産性はRubyの方が良いかもしれないが,従来どうりのハードよりの処理はC言語で必要十分だしRubyを採用するメリットなどない。
Re:斜め上の努力 (スコア:2, 興味深い)
>従来どうりのハードよりの処理はC言語で必要十分だしRubyを採用するメリットなどない。
必ずしも否定しないんだけど、「ハードより」の処理でもSoCを操作するレベルのAPIだと
C言語じゃなくてRubyぐらいの高機能言語のほうが生産性が高い気もしてみたり。
C言語もアゼンブラに比べれば、十分「高機能」なわけだから、さらなる「高機能」の代替としての
模索もありだとは思う。
Re:左斜め上45度の努力 (スコア:1, 興味深い)
>特定のプロセッサ向けのnativeなRubyを作るベンダーが出てくるような状況になれば話は違ってくるでしょうが.....
話はほとんど逆で
汎用FPGAを使ってRuby向けの特定のプロセッサを作ってRuby-nativeなプログラムを書けるようにしよう
というプロジェクトですね。
CPU機能が必要になった所に、IPコア単位で導入できて、プログラミング言語はRubyだけ使えればOKという世界。
Re:斜め上の努力 (スコア:2, 興味深い)
「生産性」って具体的に何のことを言っているのでしょう。
まず、言語が選ばれる基準は、「言語仕様」ではなく「ライブラリ群」な気がします。例えば、組み込みLinuxにおける、既存のUnixアプリやプロトコルスタック。GPLの制約があっても選ばれています。WebにおけるJava、Windowsにおける.net、RoRフレームワークのRuby なんかもそうですね。さて、Rubyには、組み込み分野で有用なライブラリ群ってあったりするのでしょうか?Rubyの特徴であるOOPって再利用できるライブラリ群があって活きてくるものですよね。でもそれが自前ライブラリだけだったら嬉しさも半分です。
「言語仕様」に注目しても、ハードウェアを操作するならば、ポインタを包み隠さないCの方が便利です。またガベージコレクタに勝手に動き出された日にはリアルタイム性なんかありゃしません。LLですからハードウェアの負荷も大きいでしょう。
そんなことを考えていると、前述の通り、組み込みで、Rubyを使うことで得られる「生産性」って、具体的に何のことを言っているのか分からなくなってきたりします。生産性の得られる用途って限定的なものかもしれませんね。たとえば、組み込み機器で裏で簡易Webアプリを立ち上げて機器間で情報共有するとか?
Re:斜め上の努力 (スコア:1)
デバッグ
書いてない要件の中で一番デカイのはデバッグだね。
システムの内部状態をモニターしたい。でもモニターのために甚大なソースを書くのは嫌だ。だって最終製品では取り除くんだもの。でも、そういう場合でも、大抵組み込みOSとかは使ってるよね。じゃぁ、組み込みOSが標準でデバッグ環境の一環として Ruby をサポートしていたら?
モニターそのものに Ruby が混ぜ込んであって、必要に応じてスクリプトライブラリをロードしておいて実行時に複雑怪奇な条件がそろったらデータを外部に送り出すというのもいいし、リモートデバッガ側に Ruby のようなプログラミング能力を強力に持たせるのも手だ。malloc()とか free() を呼び出すたびに今現在有効なはずのバッファを記録して、buffer overlap がないかとか、overflow を起こしていないかとかをランダムサンプリングしながら調べる。人間では辛いこの手の調査も機械なら一晩中でもやっててくれる。
ここにある意見のほとんどが、組み込みソフトそのものを Ruby で書く事にこだわって、「組み込みソフトの開発を支援するシステムを Ruby で作る」という発想があり得る、という点をかなり強烈に忘れているような気がします。
.
ちなみに。NASとかも「組み込みソフト」。この手の製品になると、「On Service Monitoring」機能の充実がとても重要なのですが、実は国ごとに「どういう情報が欲しい」という要件がかなり違います。全部実装しようとするとサービスをしている暇がなくなっちゃうぐらい、バラバラで、かつそれぞれがかなりのリソースを喰う。
# 中でも日本のお客様のニーズは世界的に見てかなり異端で、それはそれは苦労します。
Rubyが組み込んであって、国ごとにモニタリング対象をチューニングできる、というのは良い解決策です。
というか、ガッツリとプログラミングできる人でないと怖くてこの辺をいじれない、というのがコストがむやみと上がる要因なので、そのあたりを解決する方策として考えるべきではないかと > 日本のメーカー
# 海外のメーカーはこのままで行くと Python 辺りを採用するでしょうから、その前に Ruby を業界標準に
# する勢いで押す必要がありますが。
fjの教祖様
どうなんだろう (スコア:2)
組み込みというリソースの限られた環境で、最終的に吐かれるコードが想像しにくいRubyって向いてるのだろうか?
勿論どんな言語使ってもわかる人は大体わかるだろうけど、Rubyしか知らないような人が組むと遅くなるとかありそう。
否、コンパイラーがそこまで進んでいるということでしょうかね?
下手なやつがC++で組むよりよっぽど速いとか?
Re:どうなんだろう (スコア:1)
ないわー (スコア:2)
自分、組み込みもやる福岡のプログラマですが、静的型言語派なので :-)
組み込み用に軽量化 (スコア:2, 興味深い)
この記事ですね(ITpro)
http://itpro.nikkeibp.co.jp/article/NEWS/20100628/349693/ [nikkeibp.co.jp]
組み込みに関する目論見が載っていました
Rubyをフル実装するつもりでは無いようです
あくまで目論見ですが
組み込み事業専用ではないかもしれませんが
開発用の仮想サーバの貸し出しもするみたいです(日本経済新聞)
http://www.nikkei.com/tech/news/article/g=96958A9C93819891E3E2E2E0E28D... [nikkei.com]
個々のタームは分かるんですが
最終的に何が出来上がるかよくわからない
記載されたセンターの所在地が違いますが福岡ISTの公報(入札情報)を見る限り
前者(博多区)のほうが正しい模様
Javaの時も知事が旗振り役をしていましたが
この取り組みで県内業者の開発のすそ野が広がればまずまずで
具体的な成果が出ればなおよしという感じかもしれません
関連ストーリー (スコア:2, 参考になる)
Cell+Ruby=新世代デジタル家電? [srad.jp]
組み込みの定義なんて時代によって変わるのだ。
予算1億4000万円 (スコア:1, 参考になる)
こういう部分にもうちょっと税金突っ込んで産業振興につなげて欲しいところです。
Re: (スコア:0)
ちゃんとドキュメントを作るならいいかな (スコア:1)
方向性で進めるなら近寄らないほうがよさけ、と思うような私は普通のハード屋。
世間一般のソフト屋さんの考え方はよくわかりませんけど。
わざわざRuby? (スコア:1)
どうしてわざわざRubyなんでしょうか?
組み込み向けなら、PerlやPythonのほうがまだマシだと思うのですが。
# 思うだけ。どうせ同類だから。w
宛部門名 (スコア:0)
いつかはそれが標準になるのかもですねぇ。
「組み込みに高級言語だと?」とか昔に言われてそう。
Re:宛部門名 (スコア:1)
福岡?Fuck you OK ? (スコア:0)
Re:福岡?Fuck you OK ? (スコア:3, おもしろおかしい)
Re:福岡?Fuck you OK ? (スコア:2)
Re: (スコア:0)
じゃぁボボ・ブラジル [wikipedia.org]??
#ってあおり文句でもなんでもない。。。
---
下ネタなのでAC
Re:福岡?Fuck you OK ? (スコア:2)
若干趣旨は異なりますが、竹下(TAKE SHIT A)とか。
Javaチップの現在 (スコア:0)
この上でJRuby走らせればw
速報ではないのかぁ (スコア:0)
Rubyがどうとか言わないけど (スコア:0)
抽象化の激しい言語を組み込みの実装に使うのは無理があるんじゃないかな。
C++すらロクに使われないのに。
# まさかインタプリタではあるまいな?
Re:Rubyがどうとか言わないけど (スコア:2, 興味深い)
インタプリタはありえないでしょう。
まさに「誰も得をしない」代物になってしまう。
組み込みは現状Cで困ってないと思うけどなぁ・・・。
せいぜいがJava系のVMのせるやつとか。
VMのコードを吐き出すコンパイラとしてはRubyでもいいけど、
それならJavaでいいし、需要がよくわからない。
エンジニアの方向も向いてなさそうだし、「国産!」路線の
半分趣味プロジェクトで終わってしまいそうだ。
気になるかたはOSCTokyo/Fallへ (スコア:0)
国産プログラミング言語Rubyによるソフトウェア産業振興 [www.ospn.jp]