トップページ⇒tech
481コメント136KB

現在ある言語の中でどれが最高?

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさんNGNG
ええ、そうですよ。
宗教論争ですよ。
くだらないですよ。
無意味ですよ。
でもまあいいでしょ?
0431デフォルトの名無しさんNGNG
Scheme が流行らないのは、難しいとかいう話じゃなく
やってみようと思う人が少ないのがイカンのかと。
0432デフォルトの名無しさんNGNG
まあ、Dylanなら流行る可能性はあったんだけどねぇ。
Schemeと違って静的な型があったようだし、普通の書き方をする。
0433デフォルトの名無しさんNGNG
lisp,schemeは `ABC
LOGOは "ABC
Smalltalkは #ABC
0434訂正NGNG
lisp,schemeは 'ABC
LOGOは "ABC
Smalltalkは #ABC
0435デフォルトの名無しさんNGNG
(゚д゚)
( ) が大量発生してる、ださださ言語は逝って良し!!!
C++さいこー・・・



GCは羨ましいけど・・・
0436デフォルトの名無しさんNGNG
>>435
C言語 f(x y)
lisp (f x y)
括弧の数は変わりませんが?
0437デフォルトの名無しさんNGNG
>>436
C言語 3 + 4
Lisp (+ 3 4)
0438デフォルトの名無しさんNGNG
>>435
http://www.ruby-lang.org/ja/compar.html
0439435NGNG
>>438
インタプリタは問題外だろと思うけど。
実行速度なんてものは、CPUの速度でなんとかなるんだよな・・・
っていうかperlみたいにコンパイラあるのかな?

それよりも end っていうのかダサい気がするなぁ。
直感的ぢゃないっていうか、うーん。
{ } じゃまずかったんだろうか・・・

それ以外は(・∀・)イイ!!と思うヨ。

ちゃんと解ってる人が書けば、
C++はそんなに悪い言語じゃないと思う・・・
0440アーヒャヒャヒャヒャヒャヒャヒャ・NGNG
アーヒャヒャヒャヒャヒャヒャヒャ
0441デフォルトの名無しさんNGNG
()の大量発生なんて、あまたある利点の前ではどうでもよろしい。
プログラムをファーストオブジェクトとして扱えないダサダサ言語は逝って良し。
0442デフォルトの名無しさんNGNG
>>441
アプリを作れない言語に利点なんかあるの?
エディタなんかじゃなくてさ、ワープロ、DTP、
表計算、ブラウザ、なんでもいいから見せてみろよ。
どうせ、テキストベースの腐ったインターフェイスのものを
作るのが関の山だろう?
ぷ。ダサダサ言語って当然lispのことだよね?
VBは大嫌いだけど、lispよりかはまだマシだな。
0443デフォルトの名無しさんNGNG
凄腕のハッカーたちが寄ってたかって愛用しているわりに、
何も生み出されない糞言語lisp。
ソフトが作れりゃいいってもんじゃないが、
それにしても結果が残らなさ杉です。
0444SENGNG
Cobolがさいこー

俺の経歴は、汎用機だけで20年。
仕事くれー。
0445デフォルトの名無しさんNGNG
C言語[C89] (*funcp)(3)
Lisp[Scheme] (funcp 3)
0446デフォルトの名無しさんNGNG
442=443
煽ってるつもりなのかなあ・・
0447デフォルトの名無しさんNGNG
perlとはいわないけど、正規表現が標準で付いたらいいね。
0448デフォルトの名無しさんNGNG
>>446
ちゃっかり凄腕ハッカーがよってたかって愛用とか言って誉めているから、
きっと彼はLisp信者だろう。
0449デフォルトの名無しさんNGNG
>>448
いや、Emacs信者だろう。
0450デフォルトの名無しさんNGNG
汎用性と速度と保守性と再利用性の最適バランスは
時代によって変わる。
いま最も旬なのはObject Pascal(C#を含む)かな。
0451デフォルトの名無しさんNGNG
>>450
C# is_a ObjectPascalなのか?
せいぜい親戚関係のいとこなのでは?
0452デフォルトの名無しさんNGNG
C#って速いの?汎用性も疑問だけど>450
0453デフォルトの名無しさんNGNG
さまざまな形式的言語を検討したが、本仕様を記述するには
自然言語を採用することに決定した。
-- PofO --
0454デフォルトの名無しさんNGNG
lispは見づらいのでforthがいい。
0455デフォルトの名無しさんNGNG
どれも最低
0456デフォルトの名無しさんNGNG
>>455
半分同意
0457デフォルトの名無しさんNGNG
言語の背後にある思想を勉強してると、あんまり同意できん。
非常に頭を使って言語設計がなされてるのを知ってるから・・・
0458ぴNGNG
やっぱり、最高の言語は、Adaでしょう
0459デフォルトの名無しさんNGNG
言語の良し悪しを決めるファクターはいろいろあるだろうけれど、
個人的に興味があるのは、標準コンテナの整備具合。

C言語は固定長配列しかコンテナがないから問題外として、
JavaやC#はコンテナが型安全でないところに不満がある。
今のところC++しか俺の期待を満たしてくれるものは知らない。
ところでDelphiにはコンテナがあるの?
ずっと前から気になっていたんだけど、誰か教えて。
0460デフォルトの名無しさんNGNG
>>459
Javaはそのうち標準でGenericサポートになるよ。
JDK1.5かららしい。
0461デフォルトの名無しさんNGNG
数少ない Dylan 実装の一つ

Gwydion Dylan
http://www.gwydiondylan.org/
0462デフォルトの名無しさんNGNG
エレガントなPASCALが好き
0463デフォルトの名無しさんNGNG
Prolog
0464デフォルトの名無しさんNGNG
PASCALが生き残ってるのはBorlandのおかげ
0465デフォルトの名無しさんNGNG
Prologが死んだのはBorlandのせい
0466デフォルトの名無しさんNGNG
>>465
何じゃそりゃ…
0467デフォルトの名無しさんNGNG
Turbo Prolog
0468デフォルトの名無しさんNGNG
Prolog Builderできたとしても、使う人がいるのだろうか...
0469デフォルトの名無しさんNGNG
Pythonも捨てがたい。エレガントの一言に尽きる。
HSPみたいにスパッとEXEを作れりゃ、なお良いけど。
0470デフォルトの名無しさんNGNG
>>467
そんなのあったのかぁ
0471デフォルトの名無しさんNGNG
http://www.bagley.org/~doug/shootout/
いろんな言語のベンチマーク。

速度とメモリ消費量はやっぱCが強いね。
コード量は、少なければいいわけでもないような。
全体的には以外(?)とOcamlが強い模様。
0472(・Θ・)ノチーNGNG
mltonも意外に。
0473デフォルトの名無しさんNGNG
>>471
そこのC++のソースひどすぎ。
Cのソースを元に、出力だけcoutに変えただけで、
クラスも仮想関数もテンプレートも全く活用してなくて、
これがC++の実力だと思われたらかなわん。
0474デフォルトの名無しさんNGNG
>>471

http://www.bagley.org/~doug/shootout/bench/matrix/matrix.g++
そこのサイトにあるソースのあまりにひどさにショックだったので
ちょっと書き換えてみた。

#include <iostream>
#include <vector>
#include <stdlib>

using namespace std;

class CMatrix
{
private:
 vector<vector<int> > m;
 int m_Rows, m_Cols;
public:
 CMatrix(int rows, int cols);
 void Clear();
 friend CMatrix operator*(const CMatrix &m1, const CMatrix &m2);
 friend ostream& operator<<(ostream &o, const CMatrix &m);
};

int main(int argc, char *argv[]) {
 int n = ((argc == 2) ? atoi(argv[1]) : 1);
 const int size = 30;

 CMatrix m1(size, size), m2(size, size), mm(size, size);
 for (int i = 0; i < n; i++) {
  mm = m1 * m2;
 }
 cout << mm << endl;
 return EXIT_SUCCESS;
}
0475474NGNG
続き。

CMatrix::CMatrix(int rows, int cols)
: m_Rows(rows), m_Cols(cols), m(rows)
{
 int count(1);
 for (int i = 0; i < rows; i++){
  m[i].resize(cols);
  for (int j = 0; j < cols; j++) {
   m[i][j] = count++;
  }
 }
}

void CMatrix::Clear()
{
 for (int i = 0; i < m_Rows; i++)
  for (int j = 0; j < m_Cols; j++)
   m[i][j] = 0;
}

CMatrix operator*(const CMatrix &m1, const CMatrix &m2)
{
 //assert(m1.m_Rows==m2.m_Rows && m1.m_Cols==m2.m_Cols);
 CMatrix result(m1.m_Rows, m1.m_Cols);
 for (int i = 0; i < m1.m_Rows; i++) {
  for (int j = 0; j < m1.m_Cols; j++) {
   int val = 0;
   for (int k = 0; k < m1.m_Cols; k++) {
    val += m1.m[i][k] * m2.m[k][j];
   }
   result.m[i][j] = val;
  }
 }
 return result;
}

ostream& operator<<(ostream &o, const CMatrix &mm)
{
 return o << mm.m[0][0] << " " << mm.m[2][3] << " " << mm.m[3][2] << " " << mm.m[4][4];
}
0476デフォルトの名無しさんNGNG
君たちの頭の中はもうすこしなんとかならんのか?
0477デフォルトの名無しさんNGNG
たしかにひどいな。
0478schemerNGNG
括弧は、気を付けて書けばそんなに増殖しないよ。
逆に、インライン展開しまくって、括弧、ネストの嵐にすることもできるけど。
コードの最適化方法をユーザー側で簡単に追加/変更できるのは魅力だと思う。
処理系が小さいから自作&組み込みが比較的楽だし。
書いてて楽しい言語だよ。
0479デフォルトNGNG
やっぱ、Adaかな
0480デフォルトの名無しさんNGNG
Adaの良い点って何よ>479
0481デフォルトの名無しさんNGNG
最高の言語といったら日本語しかないだろ。
日本語>>>>>>>英語>ちょん語
ってところか
■ このスレッドは過去ログ倉庫に格納されています