1read 100read
2012年6月プログラム446: 最も美しいプログラミング言語は? Part6 (328) TOP カテ一覧 スレ一覧 2ch元 削除依頼
スレを勃てるまでもないC/C++の質問はここで 20 (965)
ファイルの重複検出ツールを作ろうぜ (340)
【.NET】F#について語れ2【OCAML】 (314)
ソースのコメントを英語で書くスレ (979)
文系しねよ【part2】 (446)
ハンガリアン記法 [part1] (225)

最も美しいプログラミング言語は? Part6


1 :10/03/23 〜 最終レス :12/01/27
最も美しいプログラミング言語を語れ
前スレ
http://pc12.2ch.net/test/read.cgi/tech/1262707694/

2 :
↑天才pンジーのアイちゃん
↓天才pンジーのアイちゃん

3 :
前スレではC#が圧倒的優勢でしたが他の言語も負けないでください。
特に Python は危機的です、もっと頑張りましょう!

4 :
美しく書かれたソースを貼ると効果的です

5 :
じゃあ Quine を。

6 :
Whitespace

7 :
とりあえずC、python、lisp等のみたいな美しい言語について語るスレです
排他的なC#は論外です

8 :
CやPythonのどこが美しいのかわからん
Lisp-2は#'だのfuncallだのが関数型言語として見ると鬱陶しくキモい
C#が排他的だとして、それが言語の美しさと何の関係があるのかもさっぱり分からん

9 :
じゃあどんな言語が美しいというの言ってみろ。
批判だけして、自分の意見を言わずに逃げるのは卑怯だろ。

10 :
Haskell Forth Prolog Scheme

11 :
J

12 :
      ,―ヽ_(((((_、―
   ,/  ノ       ヽ  ~\
  /   ノ   IPA    ヽ   ~\
/   ノ           ヽ、  `ヽ
|    ノ / ̄\   / ̄~ヽ ヽ    i
|   ノ              |  ノ
\  |  <●>  <●>  (  )
 \ |      | |       i /
    |      /  ヽ       レ
   i     (●_●)      /  
    i、    ,-――-、   ・ /
    i、  <(EEEEE)> ∵/    IPA Ruby最高、他は糞。
      i、  \   ./  /
       \   ーー   ,ノ       
  ,,.....イ.ヽヽ、ー-―一ノ゙-、.
  :   |  '; \_____ ノ.| ヽ i
      |  \/゙(__)\,|  i |

13 :
>>12
お引取りください

14 :
VB6は美しい。

15 :
前スレ最後の話題。
慣れを排除した上で
「書いたコードが読みやすい」
「他人が見ても内容が理解しやすい」
という言語は、結局どれなんだろう?

16 :
自分が書きやすい言語に、ソースにコメントを添えた方が何より楽。

17 :
慣れを排除すると、C++とperlが脱落

18 :
perlは入門書の最初とかで
「perlならこんな長文がこんなに短くかけますよ」的な記述をみて
理解できなくてやめた奴いると思うんだけど
おれがそうだった
今なら分かるかもしれんがプログラム覚えたてのときに見るのはつらい。
可読性って意味では最悪だとおもう

19 :
直感で理解できない記号が大量に出てくる言語はダメだな

20 :
APLのことか

21 :
APLまでいくと、別世界。
たぶん、ネイティブには、プログラムの記述に英単語を使うというのは、直観的ではないんだろう。
日本語BASICは、何が悪いというわけでもないのに、キモかった。

22 :
awkはCと同じ記号を使ったが、perlはshと同じ記号を使った、という印象がある

23 :
ここで言われる「読みやすい」は、「美しい」と同等の意味を持つのか?

24 :
パラメーターだよ

25 :
>>23
俺はスレタイとは全然別の質問だと思ってるけど

26 :
>>23
同等ではなく、
「読みやすい」は「美しい」を満たす条件の一つ
だと思うよ。

27 :
文法は言語の機能だと思う。
だから、読みやすいプログラムを書けるような文法を備えた言語は
美しい機能を持っていると言えるのではないかと思う。

28 :
>>27
文法が機能だとしたらどうして
「読みやすい」が「美しい」になるの?
まったく意味不明。

29 :
読みやすさと美しさには特に相関が無い気がするな
前スレで出てたがCOBOLは誰が書いても同じようなコードになり
英文に近いという意味で「読みやすい」と言える
が、プログラミング言語として「美しい」というのとは違うと思う

30 :
美しいよりかわいい言語に興味があるんだけど。

31 :
ほう、かわいい言語とな

32 :
tinyなんとかっていうのは、かわいいとも言える

33 :
TL/1萌え

34 :
美しいプログラミング言語ってのはなくて、美しく書けるプログラミング言語だけがある
どう頑張っても無理なのはたとえばBASICとか

35 :
全くの素人の女の子だったら、
ruby か perl が美しそうって言うだろう。
おっさんだったら俺はCだなとか言いそう。あ、これは関係ないか。

36 :
BASICできれいなプログラムがかけないといっているやつは、能力が低い。

37 :
>>36
そうそう。大昔だけど、
BASICのコードは、Cを知ってるプログラマとBASICオンリーのプログラマが書のとでは、
天と地の差があったよ。

38 :
>>36
一口にBASICといっても、いろいろある。
モダンとクラシックは別物なので、
きちんと区別するべき。

39 :
昔のBASICがスタックマシンでないインタプリタであることを考えると、非常に優れた設計。

40 :
子供の頃はGOTO文とGOSUB文の違いに対する意識が希薄だった。
雑誌の投稿プログラムが手本だったのでスパゲティに疑問を抱かなかった。

41 :
>>39
PCに内蔵されてて電源入れるだけで使えた。
今思うとこれも凄い。
OSはないのにBASICだけはあったw

42 :
>>40
あーわかるわかるw

43 :
>>40
I/Oとかの記事でPascalやLispも齧ってたから
構造化は意識してたっけ
>>41
8bitBASICはそれ自体がOSみたいなものでもあったからな

44 :
Haskellが最もふつくしひ

45 :
今も昔もBASICはスタックマシンじゃないだろ。
それにひどく昔のTinyBASIC(たとえば東京版TinyBASIC)でもスタックは内部で使ってるぞ?

46 :
10 print"Hello world!"
これが最初の一歩だという人が多いのでは。

47 :
>>46
ちがうよ
10 PRINT "baka "
20 GOTO 10
を電気屋のパソコンで実行するのが第一歩だよ。

48 :
BASICはスタックを使ってるよ。
スタックがなければZ80のCALLステートメントすら動かないよ。

49 :
スタックを使う><スタックマシン

50 :
>>46
それはない。
この時代はC言語やK&L本が認知されるより前だよ。

51 :
>>47
いや
10 PRINT "baka ";
20 GOTO 10
でしょw

52 :
>>50
K&Rだよ
一般人使えるようになったのは、
BASICはFD装置が出る前だし、C言語はFD装置が必須だったな。

53 :
C#やJavaのコードは最終的にはスタックマシンの上で実行される。

54 :
>>53
仮想マシンなんだから最終という言い方は×

55 :
>>53
CLRもスタックマシンだったっけ?
違うと思ってたが。

56 :
>>47
おもわずわろた
それだ

57 :
あ、51な。w

58 :
デバガでおえばわかるけC# はすぐにネイティブコードになっちゃうぞ

59 :
美しいプログラミング言語には、マクロ、つまり実行前にプログラムを書き換える機能はあった方がいいのかな?
それとも、ない方がいいのかな?

60 :
>>58
すぐじゃないだろ。少なくとも実行後にしかネィティブコードはにならい。

61 :
>>60
実行前だろ

62 :
>>61
コンパイラはネイティブコードを吐いたりしない。
実行後にネイティブコードに変換されんだよ。
常識だぞこんなこと。

63 :
実行の意味が違う。また、その意味ではngenを使った場合を説明していない

64 :
>>63
ngen にしたってすぐじゃないだろ。
インストール時か最初の実行時であって、コンパイル時でないことは明白。
けど ngen の話になるんだ?
それもと「すぐに」というのは ngen 使うから「すぐに」と言いたかったのか。
ngen ってただのキャッシュだよ。根本的なこと勘違いしてんじゃね?

65 :
けど ngen の話になるんだ?
それもと「すぐに」というのは ngen 使うから「すぐに」と言いたかったのか。
→けどどうして ngen の話になるんだ?
→それとも「すぐに」というのは ngen 使うから「すぐに」と言いたかったのか。

66 :
>>59
必要、もしくは無いほうがいいと俺は思う。

67 :
トークンを置換するプリプロセッサマクロと、
構文木を変形するいわゆるLispのマクロは、一絡げにできないだろう

68 :
>>67
Lispとかもとから対象外だし

69 :
Lispのよさが理解できない人発見

70 :
初カキコだがweb に特化すれば php, perl, java は美しい。
それぞれの言語でサイト作った感想から言えば、
phpはどんな環境でもそれなりに動くという点で美しい。
それこそ月300円の鯖にでも納品できる。
スレ的な美しさとは違うだろうが、これも言語仕様による
美しさだと思うがな。
個人的に一番好きなのはPerlだったりするが。
力技が一番効く言語だと思うし。なんでもあり。

71 :
10年ROMってろ。

72 :
多分一生わからんのだろ

73 :
>>70
>初カキコだがweb に特化すれば php, perl, java は美しい。
自分が使ったことのある言語を羅列してるだけだろ。
クライアントとサーバーサイドの違いを認識しているのかも怪しい。

74 :
春だから仕方ない

75 :
>>60-65
実行前
xxx.exe
return
実行後
実行前
xxx.exe
実行後
return
xxx.exe
実行前
実行後
return
xxx.exe
実行前
実行
return
実行後
一体どれのことを言ってるんだ

76 :
>>53 の「最終的にスタックマシンで実行される」に対して
実行時にはネイティブコードだよ出来なことを言ったつもりだった。
IL インタプリタなんかウォッチ式を評価するとき位しか使われないよね。

77 :
Haskellの勉強を始めたんだけど、遅延評価は美しいと思った。

78 :
>>76
純粋なILインタプリタかJITコンパイルするかはVMの実装の問題だからね

79 :
中間コード⇒ネイティブ
って最適化されてるん?
まさか中間コードを置き換えただけってことはないよね

80 :
http://msdn.microsoft.com/ja-jp/library/ht8ecch6(VS.80).aspx
MSIL (Microsoft Intermediate Language) は、実行する前に .NET Framework の Just-In-Time (JIT) コンパイラによってネイティブ コードに変換する必要があります。
ネイティブ コードは CPU 固有のコードで、JIT コンパイラと同じコンピュータ アーキテクチャ上で実行されます。
JIT コンパイルは、実行時に呼び出されることがないコードがあることを考慮しています。
つまり、ポータブル実行可能 (PE) ファイル内にあるすべての MSIL をネイディブ コードに変換するために時間とメモリを費やすのではなく、
実行時に必要になった MSIL を変換し、その結果生成されたネイティブ コードを保存して、以降の呼び出しで利用できるようにしておきます。

81 :
>>64
http://msdn.microsoft.com/ja-jp/library/ht8ecch6.aspx
ネイティブ イメージ ジェネレータ (Ngen.exe) を使用して、
JIT コンパイラと同様に MSIL アセンブリをネイティブ コードに変換します。
ただし、Ngen.exe の動作は、以下の 3 つの点で JIT コンパイラの動作と異なります。
・MSIL からネイティブ コードへの変換を、アプリケーション実行中ではなく、実行前に行います。
・メソッドを 1 つずつではなく、アセンブリ全体を一度にコンパイルします。
・生成したコードを、ディスク上のファイルとしてネイティブ イメージ キャッシュに保持します。

82 :
はじめからネイティブコンパイルすりゃいいのに

83 :
>>79
getter, setterをインライン展開するぐらいには最適化する。デバッガ上で実行すると最適化しないので、誤解をしている人もいるけど。

84 :
最近Haskellが美しく感じられてきた

85 :
いいことじゃないか

86 :
止まったね

87 :
も別の所で遊んでるしな

88 :
Haskellはflipとかポイントフリースタイルとかそういうのをやんなければ
かなり読みやすい部類だと思うぜ
簡潔なラムダとか関数適用演算子とかは他の言語にも欲しい

89 :
flip はまぁ分かるが、Haskell のポイントフリースタイルは
冗長な記述が省かれて読みやすくなる場合も結構あるぞ。
たとえば演算子をリフトアップで定義する場合。
instance (Num a) => Num (Hoge a) where
  (+) = liftA2 (+)
この場合 (+) x y = liftA2 (+) x y なんて冗長で、
こんな定義が何行も続くとかえって読みにくいだろ。

90 :
Scalaは?

91 :
Scala?ないない

92 :
Simplicityは必要条件だな。

93 :
>>91
友人がメッチャScalaュしてくるんだけど、どう断れば良いか
分からん。(興味無いとか、ピンと来ないとか言ってはいるんだが)
ちなみにおいらはLisperで最近Haskellに手を染め始めたところ
友人はPerl使い。
なんかビシッと言う方法無い?

94 :
>>93
「俺、副作用が嫌いなんだよね」

95 :
「Javaな人とはお付き合いできません!」とか

96 :
>>93
Scalaって欲張り過ぎでしょ
二兎を追う者一兎も得ず

97 :
美しいプログラミング言語 = 実用性がない
っていうと、みんな怒っちゃう?

98 :
ああ機械語は0と1だけで単純かつ美しいが実用性はないよな

99 :
"Everything should be made as simple as possible, but no simpler." -- Albert Einstein

100read 1read
1read 100read
TOP カテ一覧 スレ一覧 2ch元 削除依頼
CELL (531)
初心者向け新言語 Small Basic スレ (241)
1000 1001 1110 1111 1001 1000 0110 0010 (319)
【StarSuite Basic/OpenOffice.org Basic】 (462)
(^ω^) JScript .NET スレッド Part2 (613)
MVVMについて語ろう (277)
--log9.info------------------
群馬の中学 その5 (304)
奈良の大職一を思いっきり語ろう 第五弾 (593)
東北の高校 総合スレ Part16 (387)
広島の高校 パート7 (500)
鳥取の中学 パート5 (748)
佐賀の高校 パート3 (698)
宮城県の中学☆10 (426)
静岡の大学・職場・一般 Part9 (249)
西関東の高校 総合スレ Part8 (404)
鳥取の高校 パート5 (827)
愛媛の高校 パート5 (567)
長生淳 (331)
行進曲について語ろう (557)
静岡の高校 Part6 (435)
徳島の中学 パート3 (520)
福島の高校 Part12 (203)
--log55.com------------------
【Dlife】コード・ブラック 生と死の間で【バレ禁】2
【Netflix】Black Lightning ブラックライトニング
ююю新スタートレック TNG 第66編ююю
刑事コロンボについて語ろう 52話
【原作リーク禁止】ウォーキング・デッド163
【AXNミステリー】スレ立てるまでもない海外ドラマ29
【Dlife】ER緊急救命室part15【ネタバレ禁止】
【スターチャンネル】ゲーム・オブ・スローンズ【バレ禁】104