最も美しいプログラミング言語は? Part6
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
2010/03/23(火) 16:44:08前スレ
http://pc12.2ch.net/test/read.cgi/tech/1262707694/
0153デフォルトの名無しさん
2010/05/14(金) 03:10:01厳密には機械語だが、まぁ本質は同じだ
0154デフォルトの名無しさん
2010/05/14(金) 11:11:420155デフォルトの名無しさん
2010/05/14(金) 11:29:35アセンブラ=コンピュータの挙動を厳密にコントロールできる
機械語=バイナリ
という違いがある
0156デフォルトの名無しさん
2010/05/14(金) 12:21:59別に否定してないぞ
アセンブラと機械語は違うけど、美しさで言えば同質と言っていいんじゃね
0157デフォルトの名無しさん
2010/05/14(金) 12:44:290158デフォルトの名無しさん
2010/05/14(金) 13:45:22まぁ見た目重視言語の一派だから、見た目の違いが大事になる可能性はあるが
0159デフォルトの名無しさん
2010/05/14(金) 13:46:57○見た目も重視する
つーかこれで置換すると俺がバカな文章書いたことがよく分かるな
0160デフォルトの名無しさん
2010/05/14(金) 14:29:29cpuやアーキテクチャによって使える命令違うから、アルゴリズムをスマートに書けるかどうかも変わってくる。
ノイマン型でなければ逐次実行もままならない。
だからアセンブラが共通して持つ本質的な美しさなんてありえない。
0161デフォルトの名無しさん
2010/05/14(金) 14:42:53> コンピュータの挙動を厳密にコントロールできる
0162デフォルトの名無しさん
2010/05/14(金) 14:44:34言語の美しさじゃない
0163デフォルトの名無しさん
2010/05/14(金) 15:01:16つくづく思う、だが○○オメーはダメだ!
Q.○○に当てはまるプログラミング言語を挙げなさい
0164デフォルトの名無しさん
2010/05/14(金) 15:04:42できない。
命令を同時実行する仕組みのせいで機械語の実行順序が入れ替わることがある。
0165デフォルトの名無しさん
2010/05/14(金) 15:07:47機械語とアセンブラが違うのかどうかの話の後にそんなことを言ってる時点で的外れ
全てのアセンブラに共通する点というのはある(同じ名前でくくられてるんだから当然)
その共通する点について美しいと思うなら、それはアセンブラを美しいと感じることに等しい
0166デフォルトの名無しさん
2010/05/14(金) 15:11:530167デフォルトの名無しさん
2010/05/14(金) 15:12:27ツッコミがいかにも浅いなぁ。CRISC以降は同時実行云々どころじゃねーだろw
どう言おうが、プロセッサが用意したI/Fを直接叩けるのはアセンブラだけだわな。
他の言語では「最適化」でも、アセンブラでは「クロックを削る」というような感覚に
近付く。それが美しいといえば美しいんじゃねーの。少なくとも共通して特異だ。
0168デフォルトの名無しさん
2010/05/14(金) 15:14:09>>160のざっくりすぎる意見と同じパラダイムで返したからな
0169デフォルトの名無しさん
2010/05/14(金) 16:01:05それは機械語が美しいんであって、アセンブラはそのおこぼれにあずかってるだけだよね。
大体、アセンブラとしての役割が何一つ評価されてないじゃん。
0170デフォルトの名無しさん
2010/05/14(金) 16:11:360171デフォルトの名無しさん
2010/05/15(土) 00:39:43のか、用途が美しい(曖昧だけど)のかどうなのか・・・・
ハード方向でCを使ってレジスタ、アドレス演算ができるようになればCがいいんじゃないw 破壊力は抜群。
同じプログラムを組むのでも、素人とプロが組むのでは実行速度も行数もまったく異なる、天と地の差を見せ付ける
ことができるのがC言語。そこに美しさを感じる僕ですb
0172デフォルトの名無しさん
2010/05/15(土) 09:57:140173デフォルトの名無しさん
2010/05/17(月) 08:59:020174デフォルトの名無しさん
2010/05/17(月) 10:11:55言語それぞれ、目指してる美しさが違うだろうね
それと同じで、プログラマの目指してる美しさもどれぞれ違う
それだけでしょ
0175デフォルトの名無しさん
2010/05/17(月) 10:17:220176デフォルトの名無しさん
2010/05/17(月) 22:56:300177デフォルトの名無しさん
2010/05/18(火) 02:04:05鈴木と言う時点ですでに美しく無い
0178デフォルトの名無しさん
2010/05/18(火) 08:29:110179デフォルトの名無しさん
2010/05/18(火) 22:53:290180デフォルトの名無しさん
2010/05/19(水) 23:17:41ifはどの言語でもifだし
インクルードやデファインも意味と書き方こそ違えどの言語も同じような記述法だし
書こうと思えばどの言語でも他のどんな言語の流儀でも書ける
それを踏まえても美しいと言い切れるには何を観点とすればいいのか
0181デフォルトの名無しさん
2010/05/20(木) 00:01:20言語の普及と発展、互換の足かせとともに、もともとあった美しさを穢していく。
0182デフォルトの名無しさん
2010/05/20(木) 00:25:30A その謎はけがれているから
0183デフォルトの名無しさん
2010/05/20(木) 00:37:18言語設計者の思想とか哲学
0184デフォルトの名無しさん
2010/05/23(日) 13:41:430185デフォルトの名無しさん
2010/05/25(火) 12:20:43lispもそうだが、新しいパラダイムを研究する過程で提案された言語は、
ただの表記でしかない。
実用的な目的のために詳細にまで注意して設計されたものではない。
設計の改善は後の人たちの役割。
0186デフォルトの名無しさん
2010/05/25(火) 18:58:33論文を読めばいい
0187デフォルトの名無しさん
2010/05/25(火) 23:55:110188デフォルトの名無しさん
2010/05/26(水) 06:23:120189デフォルトの名無しさん
2010/05/26(水) 23:56:020190デフォルトの名無しさん
2010/05/27(木) 02:11:06namespaceやらclass階層の中にじかに関数定義書くもんだから
�@ネストが無駄に深くなる
�Anamespace,classの開き括弧、閉じ括弧の対応が追いにくい。それを防ぐためにネストを無駄に深くしなければならないので�@。
JAVAもそうだし、.NET系言語はこれから主流扱いになるらしいけど、先行きは暗い
こんな仕様は小さなコードなら良いだろうけど大きくなったら読みづらくなって仕方ない
大粒のライブラリ使えばコードは大きくならないだろうという見通しでしてるんだったら、たいていそういう予測は外れてるしね
0191デフォルトの名無しさん
2010/05/28(金) 09:47:41あのさ、だからHaskellだのLispだのPrologだのの名前が挙がってるのが
このスレなわけで、何を今さら言ってるの?
0192デフォルトの名無しさん
2010/05/28(金) 19:20:26流行らんかな。これ
0193デフォルトの名無しさん
2010/06/11(金) 21:10:550194デフォルトの名無しさん
2010/06/19(土) 23:20:260195デフォルトの名無しさん
2010/08/25(水) 02:46:020196デフォルトの名無しさん
2010/11/10(水) 01:19:29Perl はシギルがあるからキレイなんじゃないか
0197デフォルトの名無しさん
2010/11/10(水) 02:09:29型推論もいらない。高機能なIDEは必須。
0198デフォルトの名無しさん
2010/11/10(水) 02:40:41Cython?
0199デフォルトの名無しさん
2010/11/10(水) 08:04:22Python, Prolog, Grass
0200デフォルトの名無しさん
2010/11/11(木) 09:49:11今売り出し中のNimrodはどうよ
0201デフォルトの名無しさん
2010/11/12(金) 20:43:04いまどきの静的型付けの言語は似たようなものだが。
0202デフォルトの名無しさん
2010/11/16(火) 22:22:50マニュアル片手に書くのはめんどい
0203デフォルトの名無しさん
2010/12/27(月) 15:43:59メソッド体系?
0204デフォルトの名無しさん
2010/12/27(月) 19:39:54ってことじゃね
0205デフォルトの名無しさん
2010/12/27(月) 20:03:09ではないのかな。組み込み的な意味なら、
無いに越したことはない。少なくとも美しさを
論じるなら。
0206デフォルトの名無しさん
2010/12/28(火) 15:00:000207デフォルトの名無しさん
2010/12/28(火) 15:17:590208デフォルトの名無しさん
2010/12/29(水) 22:00:40どういうこと?
IDEと連携取りやすい言語ならばむしろマニュアル片手にする必要ないぞ。リファレンスが内蔵されているようなものだからな。
チュートリアルは別途やればいい。
そもそも直感的なメソッド体系の言語というのが誰にとっての?というところがある。
C#はC系の言語利用者にとっても直感的ではなかったが、DelphiやVCLの利用者やJavaかじったことある人間にはむしろ直感的だった。
RubyはかつてはモダンではないPerl利用者には直感的だったかも知れないが、
今やRails以降のRubyやモダンPerlは双方ともバラバラ全くの別物。直感的でない。
しかも、これらも個人の感覚だ。
中学生にとっての直感的な言語も違うだろうし。
0209デフォルトの名無しさん
2010/12/29(水) 22:43:44AppleScriptもそうかも。
0210デフォルトの名無しさん
2010/12/30(木) 07:30:370211デフォルトの名無しさん
2011/05/24(火) 23:21:41.72少なくともhtonl();よりhost.to<NetworkLong>()の方が解りやすいだろ。
ライブラリの詳細な知識はいらんからな。
やっぱり綺麗となるとどうしてもLispだよ
(+ 5 10 20)は(+ . (5 . (10 . 20) ) )というデータ。
極一部の特殊シンボルを除いて全てデータだからな。
言語の機能とデータに殆ど壁が無くて、機能の拡張を
データの入力と捉えられる。
0212デフォルトの名無しさん
2011/06/04(土) 15:43:02.98だからきれい?
0213デフォルトの名無しさん
2011/06/19(日) 07:58:22.97レス全部見る気がしないので適当に書くが、見方じゃね?
プログラマ側のインプットとしてはPython、Java、Lispで意見が分かれると思う
価値観としか言いようが無い
プログラマ側のアウトプットはLisp、Java、c#
Rubyが美しいと思う奴はこっちだと思うが、その感性は理解できん
CPU側というか、コンパイラ側というか…そっち側ではアセンブラ、Pascal、c
Haskellもこっちに入ると思うが、これまた理解が出来ん
慣れと覚えたては読みやすく書きやすいし、いつまでも平行線だろうな
俺が美しいと思うのはJava、Pythonだ
0214デフォルトの名無しさん
2011/06/19(日) 09:04:22.150215デフォルトの名無しさん
2011/06/19(日) 11:37:46.14便利だけど、統一感が無くて
0216デフォルトの名無しさん
2011/06/19(日) 12:12:37.66SchemeとかForthと比べたら無いけど。
0217デフォルトの名無しさん
2011/06/19(日) 12:16:04.430218デフォルトの名無しさん
2011/06/20(月) 01:02:19.16データとコードの形式が共通で、プログラムからプログラムを操作するのが容易だったり、
プログラムをデータとしてやり取りするのが容易だったりするのは素晴らしい
唯一(最大)の欠点は一般的なオブジェクト指向の記法と相性が悪い事なんだが...
0219デフォルトの名無しさん
2011/06/20(月) 01:27:53.300220uy ◆yyC0rYWEq2
2011/06/20(月) 02:17:08.24(attr_accessor x)
(attr_accessor y)
(def initialize x y
(setq @x x)
(setq @y y) )
(def function
(new CC 2 3 4 5) ) )
class C
attr_accessor :x
attr_accessor :y
def initialize x , y
@x = x
@y = y
end
def function
CC.new 2 , 3 , 4 , 5
end
end
0221uy ◆yyC0rYWEq2
2011/06/20(月) 02:23:10.69int main( int argc , char ** argv ) {
printf( "test %d" , 444 ) ;
return 0;
}
(include "stdio.h")
(def (int main) (int argc) (char argv)
(printf "test %d" 444)
(return 0) )
(include "stdio.h")
(def int main int argc char argv
(printf "test %d" 444)
(return 0) )
0222デフォルトの名無しさん
2011/06/20(月) 02:32:44.26故に、ツリーを華麗に扱える言語が最も美しい
0224uy ◆yyC0rYWEq2
2011/06/20(月) 03:32:46.69ツリー構造で管理していないプログラムっていうのは
たとえば深度4から、深度5〜n まで、参照可能にさせておきたい変数があっても
深度1の場所に名前がかぶらないように定義してるだけなんだよ
ネームスペースを使って NAMESPACE::NAMESPACE::変数
と、してるだけ 砕いていっちゃえば ネームスペースなんて、アンダーバーつかってかぶらない変数名かいてるのと同じようなもん
hensuu___henssuss__susususus__susus = 4 ← けっきょくせかいの平均はここから進歩してない
だから、深度1〜n全ての場所でその変数が普通の方法でも参照できてしまうため
そこまで気にする必要はないにしてもわずかに名前衝突は気をつけなくてはいけない
特に名前のかぶりそうな、Windowクラスとか、Mainクラスといったもののなまえしょうとつを起こす可能性を消せない
これをツリーで管理すると
深度4の場所で Windowクラスを定義すれば
深度1〜3の場所では、どうやっても普通の方法ではWindowクラスまでたどり着けないので
名前衝突が完全に100%といっていいほどなくなる
君たちは全く名前衝突を意識せずにプログラミングできるプログラミングをプログラミングした事はあるかね?
心の清清しさが違う・・・・・ すっげー適当な変数名でプログラミングしても大丈夫、むしろ名前なんて付けない
無名関数でプログラミングしていく、自分で根幹部分のほうに、名前を指定しなければランダムで名前をつけるようにしてしまう
でもツリーを効率的に扱う
そのための言語がないからね、ツリー操作に長けていて、なおかつドキュメント、ライブラリ、人気、見た目
そういうものを全部クリアした言語がまだでてきていない
お話しゅうりょ。
0225デフォルトの名無しさん
2011/06/20(月) 10:28:58.30確かにメソッドの、特にチェインした場合は
かなり読みづらくなるなあ
そういえばClojureが多少マシになる解決策を出してなかったっけ?
0226デフォルトの名無しさん
2011/06/20(月) 21:17:19.85AppleScript
0227uy ◆yyC0rYWEq2
2011/06/21(火) 15:27:07.66世界にとってプラスになりそうなのはD言語
最も複雑で最も概念数の多い言語が神
使えない?覚えれない?しらねーよks
そもそも人にプログラミングが扱えると思うなよ
言語構文など全て覚えることが実時間上、不可能であるくらいの超巨大な言語がほしい
C++とか、まだ全然余裕、小さい、仕様小さすぎワロタw
C++の20倍くらいの仕様の詰まった言語がこの世には必要
0228デフォルトの名無しさん
2011/06/21(火) 18:04:29.00黙れよ出会い厨
0229デフォルトの名無しさん
2011/06/21(火) 18:55:43.39uy ◆yyC0rYWEq2は巡回好きだな〜
ちなみに、この能無しだれ?
0230uy
2011/06/24(金) 00:34:30.930231uy ◆yyC0rYWEq2
2011/06/25(土) 07:25:42.29俺の説明の劣化を語ってる名無しに、こぞって興味持ってる流れを見てると微笑ましいよ
そういう奴らって、深層心理のどっかでuyを認めなくちゃならないんだよね
そうしないとuyの説明していることのすべてが否って事にしちゃうと
とんでもない重荷を背負って生きることになるんだよね
uyがいってるんだから違う、間違ってる、 なんて決め付けちゃうと
真実12121 = 嘘
真実2342 = 嘘
真実433243 = 嘘
こうやって、脳内の真実変数がどんどん 嘘 代入されてって、 まともな思考も出来なくなる
だからuyを認めたくない奴はw 俺が説明してる概念を、俺が書き込むよりも先に学習しとくか、透明削除してろって話
もう何人か精神病にさせてしまった気がするけど、プログラミングなんてやってんのが悪いわけだしね・・・ それは俺のせいじゃないし
俺のせいにされても困るからね
0232デフォルトの名無しさん
2011/06/29(水) 13:21:37.690233デフォルトの名無しさん
2011/07/02(土) 23:53:43.83こいつ、精神病んでるから放置な
0234デフォルトの名無しさん
2011/07/03(日) 13:23:04.73自己主張だか差別化、優越感だかわからんが、2chで求める時点でカス
無意味なコテハンはリアで寂しい奴、無能な奴と決まってる
0235大天使 ◆uL5esZLBSE
2011/07/03(日) 16:01:01.89やっぱり自覚のないゴミだな
0236デフォルトの名無しさん
2011/07/03(日) 16:53:06.69どうせ、どっかの教員だろ
0237デフォルトの名無しさん
2011/07/03(日) 17:16:32.40SML も良い
0238デフォルトの名無しさん
2011/07/03(日) 17:33:04.39ソースコードの見た目の綺麗さとかPiet的なものではなく?
0239デフォルトの名無しさん
2011/07/03(日) 17:34:36.420240デフォルトの名無しさん
2011/07/03(日) 17:52:41.56おまえみたいな奴のことだよ ゴミって
0241デフォルトの名無しさん
2011/07/03(日) 18:10:37.48ちょっとおでぶさんだよなぁ…
0242デフォルトの名無しさん
2011/07/03(日) 19:30:11.32俺がみるとあぼ〜んになってるレスへの疑問かもしれないが、
数学的な方面から見れば、表記ブレの発生しないコードじゃないか。
同じ種類のデータを並び替えるのに、処理箇所毎に全く違うとか一貫性が無いのは汚いと感じる。
できるだけ複数の処理を同じように書けるってのは重要だと想う。
例えば数学のラムダ演算では、全ての数が関数に統一され、全て関数の操作法で
そうさできる。数字と関数の間を行き来する必要がなくなった。これって綺麗だと思わないかい?
0243デフォルトの名無しさん
2011/07/03(日) 20:05:56.09チャーチ数で数値計算しろと言われても困るわけで、
実用性を伴う美しさが求められる
0244デフォルトの名無しさん
2011/07/03(日) 20:33:43.99ちょっとした違いの為にわざわざこんなこと書いてるなんてってのは醜い。
0245デフォルトの名無しさん
2011/07/03(日) 20:45:34.28ELF
SLF
ULF
VLF
LF
MF
HF
VHF
UHF
SHF
EHF
THz
Very High Frequencyとか汚すぎる名前だろ。K,M,G,Tとかみたいに
もっと一貫性のある名前にするか、Wave1、Wave2とかいつまでも増やせる名前にしろよっておもう。
そういや、WindowsのAPIも、
・EnumDateFormatsExEx
・ExtSelectClipRgn
・GetTextExtentExPoint
てな感じで一貫性がなくてキモイ。だったら2,3,4,5って数字にして欲しい。
0246デフォルトの名無しさん
2011/07/03(日) 20:54:13.90元々火花送信機から始まって、真空管を使ってなんとかそれらしく電波を
飛ばせるようになった頃の LF MF HF という区別から始まって、あとから
あとから増やしていったものなんだから。
0247デフォルトの名無しさん
2011/07/04(月) 19:10:16.02汚れのないコードなんていったら書き手の問題がでかくなるだろ
言語としての違いからくるもの以外は切り捨てろよ
「書かざるおえない」言語と「不必要」な言語、「こう書く」言語と「こう書ける」言語
似てるようでまるで違う
普通は自由度の高い言語は美しいと言えない
それを美しいと思うのは感性だから閉まっとけって思えるレベルでないとお話にならない
意味がわかってない人って多いよね
0248デフォルトの名無しさん
2011/07/04(月) 19:11:45.580249デフォルトの名無しさん
2011/07/04(月) 19:33:04.73・Python(ソースコードの見た目)
・Scheme(言語仕様の簡潔さ)
実用性度外視で美しい
・Lazy K(関数型言語部門)
・Brainfuck(手続き型部門)
0250デフォルトの名無しさん
2011/07/04(月) 19:45:46.770251デフォルトの名無しさん
2011/07/05(火) 00:37:28.00素直に見ればよう出来てる
249のつっこみ所はLazy KとBrainfuckだろ
関数型言語はそもそも一貫性?が無いから美しいと言ってはいけないと思う
でもOCamlやLISP系は美しくないが見やすいのもわかる
Brainfuckは論外だろ
0252デフォルトの名無しさん
2011/07/05(火) 01:02:24.60haskellは?
■ このスレッドは過去ログ倉庫に格納されています