プログラマが次に習得すべき言語はErlang? 38
ストーリー by hylom
ブームは来るか 部門より
ブームは来るか 部門より
insiderman 曰く、
ここ最近、新しいプログラミング言語が次々と登場し普及し始めている。GoogleがプッシュするGoやMozillaが開発するRustなどが徐々に人気を集めているほか、AppleもSwiftという新言語を開発した。JavaScriptもそう遠くないうちにさまざまな機能強化や仕様変更を果たしたECMAScript 6が発表され、大幅に変わると予想される。次にどの言語を習得すべきか、頭を悩ましつつも興味を示しているプログラマの皆様も多いだろう。
そんななか、米人材系サイトDiceが「来年以降あなたが必要な5つのプログラミング言語」なる記事を公開している。この記事では来年以降必要となる言語としてJavaScript+HTML5+CSS3、C#、Java、PHP、Swiftの5つが挙げられており、オマケとしてErlangが挙げられている。Erlangについては「Erlang自体に対する仕事はそんなにはないのだが、もしそれを習得することができれば、素晴らしい職を得ることができる、Erlangの習得は大変だが、その見返りは大きい」と紹介されているのだが、これに対しSlashdotでは「次はErlangを習得すべきだ」とプッシュするストーリーが掲載されている(Programming Languages You'll Need Next Year (and Beyond))。
Slashdotの記事では、挙げられている言語のうちErlang以外は低脳な奴でも習得できる言語で、Swiftに至ってはいつ普及するのか疑問だとこき下ろされている。
no-brainer = 低脳? (スコア:3, すばらしい洞察)
> 挙げられている言語のうちErlang以外は低脳な奴でも習得できる言語で、
原文読むと、"no-brainers with regard to popularity" となっていて、わざわざ "with regard to" と限定しているんだから、「Erlang以外の言語が普及することに関しては、議論するまでもないよね」という程度の意味では? ちょっと煽りすぎだね。
Re: (スコア:0)
insidermanとhylomがno-brainerなんだよ。
習得すべき言語の条件 (スコア:1)
>Slashdotの記事では、挙げられている言語のうちErlang以外は低脳な奴でも習得できる言語で
それって普及の足枷になるんじゃね?
Re: (スコア:0)
まあ、低脳な要員使って低脳な言語で低脳な案件を片付ける低脳な俺が最強です。
働いてるふりで貰う給料美味しいです。
Erlangも低能でも使えると思うが (スコア:1)
低能の手に負えそうにないのは、Coq [lepidum.co.jp]とかか
Re: (スコア:0)
とある研究会でCoqの話をされていた方が居られたのですが
用語の時点でよくわからなくて悶々としていた記憶があります
演算子が… (スコア:1)
プログラムを動かしたままモジュールのバージョンアップデートできたり
プログラムが死んだら勝手に再起動することが言語的にサポートされていたりしていて
分散処理されたシステムを記述するのには凄く便利だと思った。
でも大小比較の <= が使えなくて =< と書かなくちゃいけないのにめげた
(>= を => だったかもしれない)
国内だとまだ仕事あんまりないよね (スコア:0)
Erlang面白い言語だけど、国内だとまだほとんど案件が無いと聞く。
Re:国内だとまだ仕事あんまりないよね (スコア:1)
Erlangに限らず、玄人ウケするような言語って
日本じゃ開発案件をほとんど聞かないね。
古くはsmalltalkとか。
Re:国内だとまだ仕事あんまりないよね (スコア:2, 参考になる)
Smalltalk はIBMが大失敗しているのだけがよく聞く事例で成功例をきいたことがない
http://drillbits.tumblr.com/post/15664104845 [tumblr.com]
Re: (スコア:0)
イチゴ農家の人が、イチゴ狩り予約システムを作っています。
http://www.slideshare.net/newapplesho/smalltalkseaside [slideshare.net]
それと、そのIBMの話は別なところでも見た事がありますが、Smalltalkを使ったから大失敗したわけでは無いですよね。
リンク先でもこう書かれています。
このプロジェクトの最大の特徴は「オブジェクト指向技術を全面的に採用する」というシステムの先進性であることは間
Re:国内だとまだ仕事あんまりないよね (スコア:1)
まあ玄人ウケってのは玄人にしかウケない事を意味してるからな。
Re:国内だとまだ仕事あんまりないよね (スコア:1)
日本じゃないけど最近だとriak http://docs.basho.com/riak/latest/ [basho.com] がらみでよく聞くかな。
riakとかCouchbaseのような分散システムならともかく、普通の開発案件で使う言語ではないよね。
# goは触っといた方がいい気がしてる。
Re: (スコア:0)
それはむしろ喜ぶべきことだろう(あなたが大企業に勤めているのでなければ)。
http://practical-scheme.net/trans/beating-the-averages-j.html [practical-scheme.net]
Re: (スコア:0)
何人か、Erlang 使いの知り合いがいるのですが
・技術者としては優秀(なので「素晴らしい職を得ることができる」というのはそうかも)
・だけど継続して一緒に仕事したいとは思えないな (Erlang好き好き具合が、ちょっと、、。)
という印象です。
・・・はい、自分がヘタレなだけです。RabbitMQ [rabbitmq.com] を使うのに必要、というくらいしか知らないw
すごいH本の次は (スコア:0)
すごいエロ本か。
HaskellとErlangはどっちがいいんだろう。
Re:すごいH本の次は (スコア:1)
Haskellはちょっと言語としての完璧性を求めすぎて使いづらい。
Erlangくらいがちょうどいい。
Re:すごいH本の次は (スコア:1)
一瞬、1チップマイコンの SuperH のことかと思った。
型の世界へようこそ (スコア:0)
HackとかSwiftとか最近は型のある方向に進みつつある気がするので Erlang はちょっと……
Re: (スコア:0)
byte型とかinteger型とLong型って今のCPUにとっちゃ、あまり処理速度差がないんじゃないですかね。
tableとかstringとかdecimalはまた別ですけど。Boolean型は専用レジスタがあるようですが。
64bitだとレジスタが増えたからどうこういうのは都市伝説として。
究極的にはメモリアドレスも浮動小数点で表現するようになるのでしょうか。
そうなると型クラス以外の、データ型が少ないほうが良さそうですね。
Re:型の世界へようこそ (スコア:1)
byte型とかinteger型とLong型って今のCPUにとっちゃ、あまり処理速度差がないんじゃないですかね。
レジスタサイズ以下なら基本的に演算速度は変わらない。
ただ今のCPUは演算よりメモリーアクセスの方が二桁近く遅いので、結果的にはデータサイズの差≒処理速度の差になりやすい。
Re: (スコア:0)
JavaScriptみたいに仕様的に全部doubleでも、JITエンジンで使われ方の統計からintと仮定して処理することもできるし、asm.jsで分かりやすいように、書かれ方によっては完全にintだと決め打つこともできる。
型付数値配列はクラスとして提供すればいいだけだし。
Re:型の世界へようこそ (スコア:1)
性能の問題で型を必要としているのって, 計算機資源が限られていたり, 厳密な実行時間保証が求められる組み込み分野や, 数値計算とかの限られた範囲だと思います.
今, 型付き言語が求められているってのは, 実行前/実行時の論理整合性を機械的にチェックしやすいところにあるのでしょう. 大規模開発用言語では普通にある機能ですが, スクリプト言語であっても従来の大規模システムに匹敵する規模のシステムを取り扱うようになってきて, 型が求められてきたのだと思います.
個人的には, モジュール化とか分割コンパイルとかを行なうようになったら, 型チェックが無いとやってく自信がありません.
Re: (スコア:0)
文字列をbyte列として扱いたい時はありますよね。
IntegerとLongは確かに区別する必然性は減ってます。
でも、近代的な言語だと整数は任意精度だったりしますから、
そういうオーバーヘッドの大きい整数とCPUネイティブな整数の区別は欲しいです。
そう考えるとやはり、整数にも型を付けて宣言する必然性は無くならないように思います。
Haskell がそんな感じですね。
#メモリアドレスが浮動小数点は無いんじゃないかなぁ。
#OpenCLだったかCUDAだったかがそんな感じですが。
サヨナラObjective-C (スコア:0)
Swiftさんのおかげで、もう完全に出番なくなるのかな・・・
# Swift出てやっとiOSアプリ開発に手をつけたクチです。
Re: (スコア:0)
CPUの歓声 [togetter.com] は聞こえてますか?
Re: (スコア:0)
AppleがSDKを作らなくなればいやでもSwiftに移行せざるを得ないでしょう。
そして、SwiftもObjective-C以上の存在感は持てないでしょう。度々変わるオレ様ルールになんてついていけない。
Re: (スコア:0)
必死に、SwiftではできないことがObj-Cにあるからなくならない!!!!!だ1211
とか言ってた信者は、後ろから本家に撃たれて感謝感激なんだろうな
ついて行けない (スコア:0)
Rust?Swift?Erlang?
ついこないだJavaScriptが盛り返したって聞いたのにもうこれかよ
Re: (スコア:0)
べつに来なくていいような。
COBOL でも極めてな。
Re: (スコア:0)
COBOLだけは無理だw
・文字列と10進数でコンピュータは動く
・英数字は1バイト、漢字は2バイト
・コピペコードは絶対正義(他言語でも同じことする)
・動的配列はありえない
・NEC外字は悪、でも丸番号など多用
・IBM外字は正義。でも髙以外使わない
・Windowsの仕様はバグ
・第一級関数を「まともな開発者は知らない独自用語」 去年増えた
こういう人にはなれないw
Re: (スコア:0)
物理的に考えてneet以外ついていけないだろ
Re: (スコア:0)
NEET: Not in Education, Employment or Training
Training中だから、ニートじゃないお
Re: (スコア:0)
リストラが単なる首切りの意味になったように、日本ではニートとは仕事しない人という意味でしかありません。
Elm (スコア:0)
ここまでElmなし。
ここからもElmなし(たぶん)
Re: (スコア:0)
リンクも貼れない、利点も挙げられない低能向け言語のElm [wikipedia.org]ですか
Androidまわりももっとひろってほしいな (スコア:0)
GroovyとかKotlinもちょくちょく話題になってますよお
Delphiはどうなったんだ!? (スコア:0)
あ、Delphiはメジャーだから本スレ対象外だよね。
※マジで商業レベルのものが比較的楽にできる。