アカウント名:
パスワード:
今あるのは生存競争に打ち勝った強さをを持つものです。古い言語とはこの生存競争に負けて消えた言語です。
別のトピックでも書いたが、ユーザが欲しいのはコードじゃ無く機能。
(負の遺産を含む)「資産」が機能を提供する限り、その言語は滅びない。
FORTRANの場合は、桁落ち対策等を行った「精度を保障するライブラリ」が重大な資産。新言語のライブラリは、信頼性に保証が無いので、置き換えられない。
COBOLは、メンテ不能でブラックボックス化した業務ルールを含むコードが(負の)資産として存在するので、やはり置き換えられない。
一方、FORTANやCOBOLを置き換える筈のPL/IやADAは、過去の資産不足の為に滅びかけてる。RATFORなんて、立ち上がりもせずに消えた。Objective-COBOLは一体どうなった事やら。
又、システムと直結したFORTHやAPL、samalltalk等の言語は、あっさりと滅んでいる。これは、システム寿命が言語寿命と直結してる故だろう。FORTANやCOBOL、LISP等は、システムに依存しない言語なので現役なのだと推測される。
更に、C言語でも、K&Rはさすがに消えた。こっちは、同等の規模の上位互換言語になら駆逐されると云う事を示している。
PL/IやADAは、言語仕様の規模が巨大な為に、短命と推測される。そして、やはり言語仕様の規模が巨大なC++は、新規格が出る毎に世代交代を繰り返しているので、古いC++は相当数が消えている。Java等も、一部メンテされ居ないアプリを除いては、旧バージョンは駆逐された。トピック本文では、LISPは健在とされているが、Common-LISPはどうなんだろう?
結局の所、プリミティブな機能だけな言語や、最先端を維持するフレームワークやライブラリを持つ言語だけが生き残ることになるだろうかと。
FORTRANは研究者/技術者としてすごく優秀な人が自分自身で必要なコードを書く、というケースが多いのも強みな気がします。軽い用途なら色々代わりは出てきたとは言え、スーパーコンピューター使うならFORTRANがCで書くしかありませんから。
Common Lisp は、最近ではD-Waveで仮想量子マシン(Quantum Meta Machine)を運用するのに使われてる。http://www.dwavesys.com/careers/senior-software-developer [dwavesys.com]
あとは http://www.msi.co.jp/ [msi.co.jp] が新システムの開発にほとんどいつもCommon Lispを使ってる。(知識工学部)
FORTRANの場合は研究者/技術者自身がコード書く比率が他に比べて高く、かつやれることが限られている技術取得の敷居が低く、かつそれで十分なものが得られる、というのもあるかと思います。事務屋さんが自分でCOBOLのコード書くなんて聞きませんから。 ExcelのVBAならやるでしょうけど。
CをK&Rレベルにまで分解するなら、FORTRANも66とか77を分けないと。
それと、ADAは誕生の経緯からして米軍で末長く使われるのでは?
Smalltalk については、ただ SourceForge のプロジェクトが少ないなどといった基準のみでそれを安易に「あっさり滅んだ」と片付けてしまう風潮には違和感を覚えます。(たとえば元祖 Smalltalk-80 の直系の子孫たちは今も活発に開発が続けられています) http://smalltalk.cincom.jp/main/ [cincom.jp] http://squeak.org/ [squeak.org] http://pharo.org/ [pharo.org]
つい最近も Smalltalk で書かれた新しい iOS アプリも出ていることですし(本当に滅んだのであればこういう芸当は困難かと)。 http://www.softumeya.com/pyonkee/ja/ [softumeya.com]
もちろん iOS アプリのみならず、もっと広い分野での多岐にわたる活用事例の報告もあります。(VisualWorks の例) http://smalltalk. [cincom.jp]
人生80年、古いプログラマーが死に絶えないと、伝統のある言語も無くならないのです..... orz# BASICは絶滅したのかな~
生きています、Excelの中に。
お遊びならプチコンもhttp://smileboom.com/special/ptcm2/ [smileboom.com]
行番号がないものを BASIC とは認めません。Visual Basic は BASIC という名前を冠しただけの別言語です。
行番号のようななにか [atmarkit.co.jp]はあったな
VB.Netでも行番号やGOTOが使えるとは知らなかった…。後方互換用なのかな。Erlも残ってるよw
Erlでエラー発生の行番号得られるのは、VB6の頃とても重宝したんだけど、ヘルプに載ってない隠し機能らしい…。VB6/ExcelVBAは、構造化例外の機能を追加するだけで飛躍的に便利になるはずなんだけど、結局実装されなかったね。おかげで関数を細かく作ってエラーチェックを繰り返すコードになってめんどくさかった。
BASICの名残としては、行番号の他に型指定文字とかあったね。A$ で文字列とか。
行番号には2つ意味があって、1つはジャンプ用のラベルもう1つはエディタによる上書き先用のラベル
1つ目は自由に命名出来るラベルの機能がなかったので行番号がそのまま使われてたけど、自由に命名出来るラベルの機能が追加された時点でなくても困らなくなってる。2つ目はBASIC自体がエディタ機能を持たなくなってて、BASIC外のテキストエディタで編集するようになってるので意味がなくなってる。
自由に命名出来るラベルの機能があるものやエディタ機能を持たないものはBASICとして認めないと言うならまだ分かるけど行番号云々は本質的じゃない気がする
では、行番号が使えないものを BASIC とは認めません。
行番号だけあってもBASICに内蔵のエディタで編集しないと renum 出来んでしょ何のための行番号なの?
renum がないものを BASIC とは認めないってことですな。ならば なおのこと、Visual Basic は BASIC ではないですな。
行番号つきのプログラムコードには、日常生活で使う作業手順の番号つきリストに似ていて、初心者にも分かりやすい言語、というコンセプトがあるかも知れません。日常目にする、1、○○する2、○○する3、もし ○○ なら 1 に戻るといった作業手順書みたいな要領でコードを書ける言語、それが BASIC 言語の設計思想(BASIC 言語らしさ)だ、とするなら、行番号は欠かせませんよね。
伝統になると次世代が生まれるようになるから、個人の人生時間は関係なくなるよ。
#BASICもそういう意味でまだ当分は消えない。(最近のは悪い言語でもないし)
私も十分古い人間なのだが、同世代の方が技術を習得する気が無いのにイラつく事がある。コードを理解できずに良い設計が出来ると思うのか?コードレビューすら出来ない。
回りの人の質が自分より低いと愚痴ったのは解かったがこのトピックとの関連は何なのでしょう?
ただのカルシウム不足でしょ
大文字のBASICはほぼ絶滅したんじゃない?ノストラジックな趣味用として、動物園の展示のように残ってはいるけど、実用言語としては「野生絶滅」ってヤツではないかと。
構造化を追加したQuickBASICは絶滅、オブジェクト指向を追加したVisual BasicはExcel VBAとして生存。メインストリームの実用言語としては Visual Basic .NET が現役。wshやASPで使われたVBScriptは死にそう。
どこまでがBasicなんだ、VB.NetとC#の違いなんて些細な構文文法だけじゃねーか、って話もあるけど、一応Basicの係累としては元気に生き延びてる感じですね。でもまぁ、子孫が繁栄してても、祖先は絶滅してるから、今回のトピックの趣旨としては絶滅ってことになるのかも。
ノストラジックな趣味用
時空を超えてあなたは一体何度―― 我々の前に立ちはだかってくるというのだ!! BASIC!!!
これっていわゆる「生存バイアス」ですよね。消えた言語は忘れている。覚えているのは生き残った言語だけ。
業界の伝統ってのもありますね。半導体開発EDAの現場だと Tcl がさまざまなツールのマクロ言語として今もバリバリ現役ですし、Tcl は業界標準的なマクロ言語です。(ちなみに、これは 言語単体としての Tcl についてであって、GUI ライブラリーの Tk はこの限りではありません。)
さまざまツールのマクロ言語として採用されてるってことは、恐らく、ツール開発側の開発コストと利用者(半導体エンジニアであってプログラマーではない)の学習コストを増やさない最適解なのでしょう。
何となくこれ [sakura.ne.jp]思い出した
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
犯人はmoriwaka -- Anonymous Coward
古いのではない、伝統があるのだ。 (スコア:5, すばらしい洞察)
今あるのは生存競争に打ち勝った強さをを持つものです。
古い言語とはこの生存競争に負けて消えた言語です。
伝統と云う名の資産 (スコア:5, すばらしい洞察)
別のトピックでも書いたが、ユーザが欲しいのはコードじゃ無く機能。
(負の遺産を含む)「資産」が機能を提供する限り、その言語は滅びない。
FORTRANの場合は、桁落ち対策等を行った「精度を保障するライブラリ」が重大な資産。
新言語のライブラリは、信頼性に保証が無いので、置き換えられない。
COBOLは、メンテ不能でブラックボックス化した業務ルールを含むコードが(負の)資産として存在するので、やはり置き換えられない。
一方、FORTANやCOBOLを置き換える筈のPL/IやADAは、過去の資産不足の為に滅びかけてる。
RATFORなんて、立ち上がりもせずに消えた。
Objective-COBOLは一体どうなった事やら。
又、システムと直結したFORTHやAPL、samalltalk等の言語は、あっさりと滅んでいる。
これは、システム寿命が言語寿命と直結してる故だろう。
FORTANやCOBOL、LISP等は、システムに依存しない言語なので現役なのだと推測される。
更に、C言語でも、K&Rはさすがに消えた。
こっちは、同等の規模の上位互換言語になら駆逐されると云う事を示している。
PL/IやADAは、言語仕様の規模が巨大な為に、短命と推測される。
そして、やはり言語仕様の規模が巨大なC++は、新規格が出る毎に世代交代を繰り返しているので、古いC++は相当数が消えている。Java等も、一部メンテされ居ないアプリを除いては、旧バージョンは駆逐された。
トピック本文では、LISPは健在とされているが、Common-LISPはどうなんだろう?
結局の所、プリミティブな機能だけな言語や、最先端を維持するフレームワークやライブラリを持つ言語だけが生き残ることになるだろうかと。
-- Buy It When You Found It --
Re: (スコア:0)
FORTRANは研究者/技術者としてすごく優秀な人が自分自身で必要なコードを書く、というケースが多いのも強みな気がします。
軽い用途なら色々代わりは出てきたとは言え、スーパーコンピューター使うならFORTRANがCで書くしかありませんから。
Re: (スコア:0)
Common Lisp は、最近ではD-Waveで仮想量子マシン(Quantum Meta Machine)を運用するのに使われてる。
http://www.dwavesys.com/careers/senior-software-developer [dwavesys.com]
あとは http://www.msi.co.jp/ [msi.co.jp] が新システムの開発にほとんどいつもCommon Lispを使ってる。(知識工学部)
Re: (スコア:0)
FORTRANの場合は研究者/技術者自身がコード書く比率が他に比べて高く、かつやれることが限られている技術取得の敷居が低く、かつそれで十分なものが得られる、というのもあるかと思います。
事務屋さんが自分でCOBOLのコード書くなんて聞きませんから。 ExcelのVBAならやるでしょうけど。
Re: (スコア:0)
CをK&Rレベルにまで分解するなら、FORTRANも66とか77を分けないと。
それと、ADAは誕生の経緯からして米軍で末長く使われるのでは?
Re: (スコア:0)
Smalltalk については、ただ SourceForge のプロジェクトが少ないなどといった基準のみでそれを安易に「あっさり滅んだ」と片付けてしまう風潮には違和感を覚えます。(たとえば元祖 Smalltalk-80 の直系の子孫たちは今も活発に開発が続けられています)
http://smalltalk.cincom.jp/main/ [cincom.jp]
http://squeak.org/ [squeak.org]
http://pharo.org/ [pharo.org]
つい最近も Smalltalk で書かれた新しい iOS アプリも出ていることですし(本当に滅んだのであればこういう芸当は困難かと)。
http://www.softumeya.com/pyonkee/ja/ [softumeya.com]
もちろん iOS アプリのみならず、もっと広い分野での多岐にわたる活用事例の報告もあります。(VisualWorks の例)
http://smalltalk. [cincom.jp]
Re:古いのではない、伝統があるのだ。 (スコア:2)
人生80年、古いプログラマーが死に絶えないと、伝統のある言語も無くならないのです..... orz
# BASICは絶滅したのかな~
Re:古いのではない、伝統があるのだ。 (スコア:1)
生きています、Excelの中に。
お遊びならプチコンも
http://smileboom.com/special/ptcm2/ [smileboom.com]
Re: (スコア:0)
行番号がないものを BASIC とは認めません。Visual Basic は BASIC という名前を冠しただけの別言語です。
Re: (スコア:0)
行番号のようななにか [atmarkit.co.jp]はあったな
Re: (スコア:0)
VB.Netでも行番号やGOTOが使えるとは知らなかった…。
後方互換用なのかな。Erlも残ってるよw
Erlでエラー発生の行番号得られるのは、VB6の頃とても重宝したんだけど、ヘルプに載ってない隠し機能らしい…。
VB6/ExcelVBAは、構造化例外の機能を追加するだけで飛躍的に便利になるはずなんだけど、結局実装されなかったね。
おかげで関数を細かく作ってエラーチェックを繰り返すコードになってめんどくさかった。
BASICの名残としては、行番号の他に型指定文字とかあったね。A$ で文字列とか。
それは違うんじゃないか? (スコア:0)
行番号には2つ意味があって、
1つはジャンプ用のラベル
もう1つはエディタによる上書き先用のラベル
1つ目は自由に命名出来るラベルの機能がなかったので行番号がそのまま使われてたけど、自由に命名出来るラベルの機能が追加された時点でなくても困らなくなってる。
2つ目はBASIC自体がエディタ機能を持たなくなってて、BASIC外のテキストエディタで編集するようになってるので意味がなくなってる。
自由に命名出来るラベルの機能があるものや
エディタ機能を持たないものは
BASICとして認めないと言うならまだ分かるけど
行番号云々は本質的じゃない気がする
Re: (スコア:0)
では、行番号が使えないものを BASIC とは認めません。
Re: (スコア:0)
行番号だけあってもBASICに内蔵のエディタで編集しないと renum 出来んでしょ
何のための行番号なの?
Re: (スコア:0)
renum がないものを BASIC とは認めないってことですな。ならば なおのこと、Visual Basic は BASIC ではないですな。
Re: (スコア:0)
行番号つきのプログラムコードには、日常生活で使う作業手順の番号つきリストに似ていて、初心者にも分かりやすい言語、というコンセプトがあるかも知れません。日常目にする、
1、○○する
2、○○する
3、もし ○○ なら 1 に戻る
といった作業手順書みたいな要領でコードを書ける言語、それが BASIC 言語の設計思想(BASIC 言語らしさ)だ、とするなら、行番号は欠かせませんよね。
Re:古いのではない、伝統があるのだ。 (スコア:1)
伝統になると次世代が生まれるようになるから、個人の人生時間は関係なくなるよ。
#BASICもそういう意味でまだ当分は消えない。(最近のは悪い言語でもないし)
Re: (スコア:0)
私も十分古い人間なのだが、同世代の方が技術を習得する気が無いのにイラつく事がある。
コードを理解できずに良い設計が出来ると思うのか?
コードレビューすら出来ない。
Re: (スコア:0)
回りの人の質が自分より低いと愚痴ったのは解かったが
このトピックとの関連は何なのでしょう?
Re: (スコア:0)
ただのカルシウム不足でしょ
Re: (スコア:0)
大文字のBASICはほぼ絶滅したんじゃない?
ノストラジックな趣味用として、動物園の展示のように残ってはいるけど、実用言語としては「野生絶滅」ってヤツではないかと。
構造化を追加したQuickBASICは絶滅、
オブジェクト指向を追加したVisual BasicはExcel VBAとして生存。
メインストリームの実用言語としては Visual Basic .NET が現役。
wshやASPで使われたVBScriptは死にそう。
どこまでがBasicなんだ、VB.NetとC#の違いなんて些細な構文文法だけじゃねーか、って話もあるけど、一応Basicの係累としては元気に生き延びてる感じですね。
でもまぁ、子孫が繁栄してても、祖先は絶滅してるから、今回のトピックの趣旨としては絶滅ってことになるのかも。
Re: (スコア:0)
ノストラジックな趣味用
時空を超えてあなたは一体何度―― 我々の前に立ちはだかってくるというのだ!! BASIC!!!
Re:古いのではない、伝統があるのだ。 (スコア:1)
これっていわゆる「生存バイアス」ですよね。消えた言語は忘れている。覚えているのは生き残った言語だけ。
Re:古いのではない、伝統があるのだ。 (スコア:1)
業界の伝統ってのもありますね。半導体開発EDAの現場だと Tcl がさまざまなツールのマクロ言語として今もバリバリ現役ですし、Tcl は業界標準的なマクロ言語です。(ちなみに、これは 言語単体としての Tcl についてであって、GUI ライブラリーの Tk はこの限りではありません。)
Re: (スコア:0)
さまざまツールのマクロ言語として採用されてるってことは、恐らく、ツール開発側の開発コストと利用者(半導体エンジニアであってプログラマーではない)の学習コストを増やさない最適解なのでしょう。
Re: (スコア:0)
何となくこれ [sakura.ne.jp]思い出した