09/05/16 23:39:27
最も美しいプログラミング言語は何か語りませう。
最も美しくプログラムを書ける言語はなにか?ということです。
言語名と理由を書いてください。
2:デフォルトの名無しさん
09/05/16 23:42:21
前スレ
スレリンク(tech板)l50
3:デフォルトの名無しさん
09/05/16 23:42:21
このスレッドは天才チンパンジー「アイちゃん」が
言語訓練のために立てたものです。
アイと研究員とのやり取りに利用するスレッドなので、
関係者以外は書きこまないで下さい。
京都大学霊長類研究所
4:デフォルトの名無しさん
09/05/17 01:52:41
各言語のソースの最も美しいソフトを語ってくれた方がよほどありがたい
5:デフォルトの名無しさん
09/05/17 04:03:29
ソースコードとして史上最高の名作は、emacsじゃなかった?
6:デフォルトの名無しさん
09/05/17 05:13:49
r;ァ'N;:::::::::::::,ィ/ >::::::::::ヽ
. 〃 ヽル1'´ ∠:::::::::::::::::i
i′ ___, - ,. = -一  ̄l:::::::::::::::l
. ! , -==、´r' l::::::/,ニ.ヽ
l _,, -‐''二ゝ l::::l f゙ヽ |、 ここはちんこ ◆GbXlaaQNk.の日記帳じゃねえんだ
レー-- 、ヽヾニ-ァ,ニ;=、_ !:::l ) } ト
ヾ¨'7"ry、` ー゙='ニ,,,` }::ヽ(ノ チラシの裏にでも書いてろ
:ーゝヽ、 !´ " ̄ 'l,;;;;,,,.、 ,i:::::::ミ
::::::::::::::::ヽ.-‐ ト、 r'_{ __)`ニゝ、 ,,iリ::::::::ミ
::::::::::::::::::::Vi/l:::V'´;ッ`ニ´ー-ッ-,、:::::`"::::::::::::::;゙ , な!
:::::::::::::::::::::::::N. ゙、::::ヾ,.`二ニ´∠,,.i::::::::::::::::::::///
:::::::::::::::::::::::::::::l ヽ;:::::::::::::::::::::::::::::::::::::::::::/ /
::::::::::::::::::::::::::::::! :|.\;::::::::::::::::::::::::::::::/ /
7:デフォルトの名無しさん
09/05/17 05:15:55
>>5
全部グローバル変数っていうんじゃなかった?
それだと、最高はないっしょ
8:デフォルトの名無しさん
09/05/17 06:51:16
前スレの統計出すんだ
9:統計
09/05/17 10:45:38
Haskell :9票|||||||||
Python :9票|||||||||
LISP :8票||||||||
Ruby :7票|||||||
Brainf*ck :7票|||||||
Prolog :6票||||||
アセンブリ言語 :6票||||||
C# :5票|||||
Smalltalk :5票|||||
Whitespace :5票|||||
10:統計
09/05/17 10:47:44
Scheme :4票||||
Shakespeare :4票||||
C :3票|||
C++ :3票|||
Pascal :3票|||
機械語 :3票||
APL :2票||
BASIC :2票||
COBOL :2票||
D :2票||
Forth :2票||
Java :2票||
Objective-C :2票||
ひまわり :2票||
11:統計
09/05/17 10:49:16
Grass :1票|
HQ9+ :1票|
JavaScript :1票|
Ook! :1票|
PHP :1票|
SaC :1票|
System F :1票|
unlambda :1票|
VisualBasic :1票|
なでしこ :1票|
織田信長 :1票|
regex :1票|
12:デフォルトの名無しさん
09/05/17 10:53:40
微妙な言い回しが多くて、一部はカウントできずスマン。m(__)m
nasm はアセンブリ, N88はBASICに分類しています.
間違いあったら修正よろしく.
13:統計
09/05/17 10:55:40
(おまけ)汚いプログラミング言語(前スレ統計)
6票:C++
3票:Java
3票:Perl
2票:Python
2票:Ruby
2票:C#
2票:LISP
2票:bat,Shell Script
1票:C
1票:COBOL
1票:Haskell
1票:Visual Basic
1票:Whitespace
14:デフォルトの名無しさん
09/05/17 11:44:47
perl汚いに一票
15:デフォルトの名無しさん
09/05/17 12:15:13
ノシ つづいてperl汚いに1票
dan kogaiも認める断トツ1位の汚さだろ
16:デフォルトの名無しさん
09/05/17 13:31:24
ここまでKEMURIなしか
17:デフォルトの名無しさん
09/05/17 16:28:36
>>12
KL1は2回くらいでてきたのでは。一方はGHCとなっているかも知れないが。
18:デフォルトの名無しさん
09/05/17 17:15:22
前スレの最後の話の続き。
表計算は美しいがチューリング完全ではないのでプログラミング言語とは呼べない、と。
ということは、純粋関数型言語は状態を持たないので、つまりチューリング完全ではないのでしょうか?
19:デフォルトの名無しさん
09/05/17 17:57:29
再帰できれば状態を更新できなくてもチューリング完全になり得る
普通は関数型言語も当然のようにチューリング完全
20:デフォルトの名無しさん
09/05/17 19:52:36
なるほど、新しい状態を引数にしながら無限に再帰すれば状態を持っているのと同じですね。
21:デフォルトの名無しさん
09/05/17 20:35:30
GUIプログラムとかで状態なしってどうやるの?
つねにぜんがめんのじょうたいを持ったものを引数渡しってかんじ?
22:デフォルトの名無しさん
09/05/17 20:54:46
>>21
そんなの、グローバル変数だよ
23:デフォルトの名無しさん
09/05/17 21:06:16
haskellでStateモナドを使った場合
状態を扱う関数を合成していってできたものに最後に初期状態を渡すと
最後に実行される関数の戻り値と最後の状態が戻ってくるとかそういう感じ
合成される関数は任意にその時点での状態を参照してそれに応じた処理をすることができる
でその状態が(画面とかの)入出力を伴う場合、プログラム全体での入出力を伴う処理
と合成し、最終的にmainの外から一括で実行される
24:21
09/05/17 21:24:30
・・・なんか言ってることはわからんでもないが、いわゆる普通のGUIアプリの少なくとも書くウィンドウとかはOOPのほうが人間の思考に近そうだな・・・
25:デフォルトの名無しさん
09/05/17 22:17:30
haskellなんて、実用度ゼロじゃん。
26:デフォルトの名無しさん
09/05/17 22:40:52
>>25
そんなあなたにモナディウス
URLリンク(www.geocities.jp)
27:デフォルトの名無しさん
09/05/18 02:35:08
SchemeかSmalltalkかPythonかRubyだろうな。
28:デフォルトの名無しさん
09/05/18 13:02:58
Aが一番きれい
29:デフォルトの名無しさん
09/05/18 23:15:22
仕様はDが好きだな、使いたいとは思わないが
30:デフォルトの名無しさん
09/05/21 19:09:41
保守を兼ねて、Rubyに1票。
「LISPとSmalltalkが提供するものを、普通の人が使える形で提供しようと考えています」
(作者へのインタビュー記事より)
31:デフォルトの名無しさん
09/05/21 21:19:40
個人的にはRubyは美しいとは思えないな
Perlと同レベルにしか見えん
中途半端に色々な言語のユニークな所を突っ込んだだけとしか
Rubyやるぐらいなら本気でLispをやった方がいいと思う
32:デフォルトの名無しさん
09/05/21 22:11:57
まともなRuby.NETが使いたいな
33:デフォルトの名無しさん
09/05/21 22:25:24
言語とVMはきれいに分離されるべき
34:デフォルトの名無しさん
09/05/21 22:31:25
Ruby は使いやすさのために美しさを犠牲にしてるように思えるので
俺も Ruby は美しいとは思えないね。というわけで Smalltalk に一票。
それよりも
> 「LISPとSmalltalkが提供するものを、普通の人が使える形で提供しようと考えています」
そうなの?
Smalltalk はともかくとして、Lisp?
そりゃ、ま、Lisp は古くからある言語なので、動的型付け型なんかは
さかのぼっていったら Lisp が元だとも言えるのかも知れんが、
matz の発言の趣旨はそういう意味じゃないんだよね?
どちらかと言えば
Perl と Smalltalk が提供するものを、普通の人が使える形で提供してる
ように思えるんだけどねー。
35:デフォルトの名無しさん
09/05/21 22:38:25
「RubyはLispの方言」 某Lisper
36:デフォルトの名無しさん
09/05/21 22:56:29
Rubyがそこそこ人気なのは
Javaのようなベタなオブジェクト指向を素直に受け入れてるから。
PerlやLispやJavaScriptとの一番の違いはそこだろ。
37:デフォルトの名無しさん
09/05/21 23:11:27
>>35
それいったらPerlもPythonもLispの方言と言えるぞ
PythonはLisp-1だからSchemeの方言だな
38:デフォルトの名無しさん
09/05/21 23:16:59
RUBY!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
39:デフォルトの名無しさん
09/05/21 23:51:27
Rubyが影響を受けたとしたら、第一がPerlであって、次がSmallTalk
Lispはマルチパラダイム言語としして導入した手法の一つだと思うがな
40:デフォルトの名無しさん
09/05/22 01:13:23
IOCCCアゲ
41:デフォルトの名無しさん
09/05/22 01:14:08
アガッテナカッタ
42:デフォルトの名無しさん
09/05/22 02:17:29
GHCだろ
43:デフォルトの名無しさん
09/05/22 04:00:47
そう。理屈の要らない Guarded Horn Clauses ね。
44:デフォルトの名無しさん
09/05/22 11:29:37
>>34
RubyがLISPから導入したものには、以下のものがあると思う
・高階関数
・リスト内包表記
・継続
45:デフォルトの名無しさん
09/05/22 13:44:17
高階関数ならRubyだけでなくPerlやPythonにもあるだろう
内包表記もPythonにあるし
46:デフォルトの名無しさん
09/05/22 17:25:02
ところで誰が>>35みたいなこと言ったんだ?
本当にLisp使ったことある人ならそんなことは言えないと思うのだが
47:デフォルトの名無しさん
09/05/22 21:34:50
なんでそう思うの?
48:デフォルトの名無しさん
09/05/22 22:12:40
S式、マクロが無い時点でLispの方言とは言えないな
49:デフォルトの名無しさん
09/05/22 23:28:17
RubyをLispで作ればいいじゃない
50:デフォルトの名無しさん
09/05/23 00:04:22
「あらゆるプログラミング言語はLispの構文糖衣」だって爺ちゃんが言ってた。
51:デフォルトの名無しさん
09/05/23 00:07:13
「あらゆるプログラミング言語はアセンブラの構文糖衣」だってヒィ爺ちゃんが言ってた。
52:デフォルトの名無しさん
09/05/23 00:09:27
ヒィ爺ちゃんってフォン・ノイマン級の頭脳だなw
53:デフォルトの名無しさん
09/05/23 01:18:59
LispでPrologとか作るのはよくあるけど
PerlやPython、Rubyl作ったって旨みないしなぁ
54:デフォルトの名無しさん
09/05/23 01:50:58
Lispよりかは親しみやすい。それで十分じゃないか。だからArc作ったんだろ。グレアムは。
55:デフォルトの名無しさん
09/05/23 06:30:25
>>51
LISPマシン Prologマシンと言う場合、
アセンブラがそれぞれ LISP Prolog だということだろ。
その点について?
56:デフォルトの名無しさん
09/05/23 07:30:15
それはソフトの部分がハード化されてるだけだろ
57:デフォルトの名無しさん
09/05/23 10:33:20
バイトコードを直接処理できるとかそういう話ではなく?
58:デフォルトの名無しさん
09/05/23 10:59:09
LISPマシンのような高水準言語マシンでは、
高水準言語がアセンブラにくるので、より低水準な言語は
生きる場所がなくなる。そういうケースも考えに入れる
必要があるのではないか。
59:デフォルトの名無しさん
09/05/23 12:45:31
>より低水準な言語は
ちがうよ
たとえ高水準でもLISP以外は生きる場所がないのがLISPマシン。
60:デフォルトの名無しさん
09/05/23 17:05:03
Lispより高水準な言語なんてあったっけ
61:デフォルトの名無しさん
09/05/23 18:01:45
Prolog on Lisp
62:デフォルトの名無しさん
09/05/23 20:44:11
>>58
あのなLISPマシンのような高水準言語マシンでもマシン語は持ってる
63:デフォルトの名無しさん
09/05/23 20:51:54
その論理ならx86のニーモニックなんて高級言語じゃないか?
64:デフォルトの名無しさん
09/05/24 02:18:29
>>44
継続?!
なんで Ruby に継続がいるんだ?
65:デフォルトの名無しさん
09/05/24 06:08:18
>>58
マイクロコード?
66:65
09/05/24 06:13:45
>>62 (にしないと訳け解らないか)
マイクロコード?
67:デフォルトの名無しさん
09/05/24 06:30:02
> アセンブリ言語 :6票||||||
たしかに、これが一番美しいきがする
68:デフォルトの名無しさん
09/05/24 06:31:38
>>66
だからマシン語だってば、マイクロコードだってマシン語をインタプリト
するわけでしょ。
アセンブラが存在するかどうかってのは別にして…
69:デフォルトの名無しさん
09/05/24 08:20:53
>>67
だから、アセンブリ言語にもいろいろあるよ、っていう話を今している。
70:デフォルトの名無しさん
09/05/24 10:10:42
文法的にはどれもオペコードの後にオペランドが並んでるだけじゃん
直交性がどうこうとかいう話になればアセンブラ固有の話になるし
71:デフォルトの名無しさん
09/05/24 10:12:44
よく考えたらアセンブラじゃねえな、CPUレベルの話だ
72:デフォルトの名無しさん
09/05/24 23:50:23
やっぱハーバードアーキテクチャだよな
73:デフォルトの名無しさん
09/05/25 14:49:56
>>64
Rubyの継続は、その名もズバリ「callcc」です(笑)
使い方:
callcc do |c|
# 処理
c.call if condition # ← c.call で「callccの後の世界(A)」へ継続する
# 処理
end
# ← (A)はここ
74:デフォルトの名無しさん
09/05/25 15:05:35
アーキテクチャでいえばスタックアーキテクチャは美しいと思う。
スタックマシンであるバロースB5000という古いコンピュータは
アーキテクチャも開発環境も実行環境も美しいよ。
75:デフォルトの名無しさん
09/05/25 15:13:48
このスレで
PostScriptがまったく候補に挙がらないことについて
76:デフォルトの名無しさん
09/05/25 16:10:55
ソースレベルで言うならCだろう
77:デフォルトの名無しさん
09/05/25 22:55:20
LISPは括弧に縛られるのがあまり美しくない
評価と適用を括弧を使わないで区別できないかな
78:デフォルトの名無しさん
09/05/26 00:37:33
>>77
それがLogoだったんだがほとんど絶滅状態
79:デフォルトの名無しさん
09/05/27 18:51:18
Forthはシンプルで美しいね。
自分はHP12C(スタック電卓)を使ってでスタック脳になってるから、そう思うのかも。
80:ちんこ ◆GbXlaaQNk.
09/05/27 20:10:17
もうプログラミングとかどうでも良くなった。
これは難しすぎる。
自分の書いたプログラムを4ヶ月ぶりに読んだら、意味不明だった。
81:デフォルトの名無しさん
09/05/27 20:13:25
なんだちみは
82:デフォルトの名無しさん
09/05/27 20:29:37
なんか○んこって書いてあるよ
83:デフォルトの名無しさん
09/05/27 23:04:26
Pascalで出来る範囲のものを書く限りPascalは美しかった。
Cばりにポインタ駆使してメモリ読み書きするコードは醜悪の一言だったが。
84:デフォルトの名無しさん
09/05/28 09:08:24
>>81
この方は前スレの後半を盛り上げた功労者です。
85:デフォルトの名無しさん
09/05/30 03:30:21
>>80
おれはちんこか
86:デフォルトの名無しさん
09/05/30 21:32:40
Pascalはyaccにとって美しいだけじゃないの?
87:デフォルトの名無しさん
09/05/31 22:49:45
PascalならModular2だろう、Oberonもあるが一般的でないし
俺の印象では、アメリカの言語は力強く合理的で
ヨーロッパの言語は学問的で美しい印象だな
88:デフォルトの名無しさん
09/05/31 23:25:59
英語は汚いが実用的で、ヨーロッパ言語は綺麗だが難解なのに似てるな
89:デフォルトの名無しさん
09/06/03 15:57:47
ある時代の審美眼からいえば、
DIBOL
も美しかった。
90:デフォルトの名無しさん
09/06/06 16:40:57
>>89
DIBOL って今でも使える処理系あるの?
91:デフォルトの名無しさん
09/06/06 23:18:57
ぐぐったら○OBOLのtypoじゃないのか・・・
92:デフォルトの名無しさん
09/06/09 10:03:40
同じくググったらPDP-8の話がひっかかって興味深かった
93:デフォルトの名無しさん
09/06/12 13:33:42
FORTHは美しいと思う。
美しさの源泉は「Thinking Forth」という本にまとまっているらしい。
PDFを入手したが、なにせ英語なので読むのが難しい。
94:デフォルトの名無しさん
09/06/12 20:43:54
Forthも面白いけど俺はやっぱりLispだな
全てがS式であることの素晴らしさ!
95:デフォルトの名無しさん
09/06/13 00:33:28
特殊形式という例外が美しくないLispが嫌いな俺はForthに一票。
96:デフォルトの名無しさん
09/06/24 19:19:39
プログラミングしりとり
スレリンク(575板)l50
97:デフォルトの名無しさん
09/07/06 12:56:08
FORTHを勉強中。
変数は値ではなくアドレスが積まれるのが秀逸。
98:デフォルトの名無しさん
09/07/08 21:36:22
今更ながら FORTH 勉強しようと思ってるんだけど、
何かいい本ある?
できれば日本語がいいけど英語も可。
99:デフォルトの名無しさん
09/07/08 22:12:33
ここで聞けチンカス
2 part forth
スレリンク(tech板)
100:デフォルトの名無しさん
09/07/17 01:03:02
Factorも面白そうじゃない?
101:デフォルトの名無しさん
09/08/31 20:25:49
すっかり寂れたな
102:デフォルトの名無しさん
09/08/31 20:49:23
ここに書くために(前スレで「ちんこ」に反論するために)
ずいぶん勉強させてもらいました。
「美しい」の基準は人それぞれ違うから難しいですね。
103:デフォルトの名無しさん
09/08/31 21:18:06
C言語系しか知らない俺に隙は無かった
104:ちんこ ◆GbXlaaQNk.
09/08/31 23:08:50
ちんこだが、
Google Collectionsの設計は神。
105:デフォルトの名無しさん
09/09/01 17:23:02
最も美しい言語、それはJ
URLリンク(www.jsoftware.com)
106:デフォルトの名無しさん
09/09/01 17:41:25
>>104
Google Collectionsを調べてみました。
すごく素直で良い設計だと思います。
#Javaにしては
107:ちんこ ◆GbXlaaQNk.
09/09/01 18:55:23
>>106
これ以上に美しいソフトウェアがあるのですか?
教えてください。勉強したいです。
おれには、これほど堅牢で、かつ柔軟なソフトウェアが構成出来るチームや個人がいるとは思えません。
おれを除いてね。
108:ちんこ ◆GbXlaaQNk.
09/09/01 19:10:22
ちなみに、最近SICPを読み始めました。
Schemeとか全く利用価値ないけど、シンプルで美しいですね。
RubyとかPythonに似てるかんじもします。
109:デフォルトの名無しさん
09/09/01 20:02:38
もっとも美しい言語は、Rubyじゃないの?
Rubyの入門書の前書きの部分で、必ず、
「もっとも美しい言語」って絶賛されてるじゃん
110:デフォルトの名無しさん
09/09/01 20:25:37
>>107
Google Collectionsって、単にコレクション操作のライブラリのことでしょ?
SmalltalkとかRubyのコレクションを無理してJavaに持っていっただけじゃん。
111:デフォルトの名無しさん
09/09/01 20:26:43
>>107
つまりSmalltalkのコレクションの方が美しいよ。
112:ちんこ ◆GbXlaaQNk.
09/09/01 20:39:24
>>110
素人はこれだから困る^^;
113:デフォルトの名無しさん
09/09/01 22:11:22
>>107
>これ以上に美しいソフトウェアがあるのですか?
あるよ。Croquet。
URLリンク(www.opencroquet.org)
Squeak (Smalltalk) だから、こう見えてプログラミング環境だよ。
114:デフォルトの名無しさん
09/09/01 22:30:08
SqueakってSmalltalkの環境だったのか…
115:ちんこ ◆GbXlaaQNk.
09/09/01 22:32:30
美しいの意味が違うだろ。
設計が美しいかどうかを言っている。
demoは美しいけど、所詮はsmalltalkだろ。
116:デフォルトの名無しさん
09/09/01 22:40:31
smalltalkの美しさがわからないのはもぐり
117:デフォルトの名無しさん
09/09/01 23:13:47
ちんこのマイブームがGoogle Collectionsってだけだろ。素直にGoogle Collectionsの話をしてやれよ。
ちんこは「ほげ」のパラドックスの典型例みたいなやつだから、Smalltalkとかの美しさを知らせようとしても無駄。
118:ちんこ ◆GbXlaaQNk.
09/09/01 23:32:10
>>117
別にマイブームってわけじゃない。
ただ、Google Collectionsの設計思想が気に入ったというだけ。
型パラメータに対して型推論を使って生成させるのとか、
Function, Predicateという抽象によってコレクションの持つオブジェクトを変更したり、考え方自体がきれい。
全体として、コンストラクタによる生成はさせませんという一環した方針がある。
また、Immutableへのこだわりもあるし、それについてBuilderで生成させるというかっこよさもある。
Effective Java書いてるJoshuaさんがGoogleだし、この企業はやっぱ、優秀な人間採用してるんだな。
おれもGoogle入りたい。
119:デフォルトの名無しさん
09/09/02 10:16:29
>>118
> おれもGoogle入りたい。
まずは優秀な人間になれよw
120:デフォルトの名無しさん
09/09/02 13:04:27
>>118
わかったわかった。
Google Collectionsの設計思想は美しい。
しかし、同様に美しいものはたくさんあるよ。
ちんこが知らないだけでね。
HaskellのMaybeモナドの設計思想とか。
121:デフォルトの名無しさん
09/09/02 13:06:17
>>120
それを「これ以上に美しいものがあるのですか?」とか書くから突っ込まれる。
最低でもSICPを継続のとこまで読んでからまた来てください。
122:デフォルトの名無しさん
09/09/02 15:48:36
>>113 で書いたCroquetは >>107 の
>これ以上に美しいソフトウェアがあるのですか?
>おれには、これほど堅牢で、かつ柔軟なソフトウェアが構成出来るチームや個人がいるとは思えません。
これの2行目への返事でもあります。
Google Collections以外にも、
「堅牢で柔軟、大規模なのにちゃんと動くものを構成している」チームがいるということです。
123:デフォルトの名無しさん
09/09/02 17:58:36
Croquetと言えば、最近、Croquetを商業利用した Qwaq Forum [URLリンク(www.qwaq.com) を
米海軍水中戦センターが訓練に採用したってニュースが流れてた。Smalltalk も侮れないぞ。ちんこよ。w
124:ちんこ ◆GbXlaaQNk.
09/09/02 18:19:01
Google入って、お前らにもっといいものを提供してやるから待ってろよ。
125:デフォルトの名無しさん
09/09/02 18:41:24
おう、期待してるぜ
126:デフォルトの名無しさん
09/09/04 10:08:21
>>105
J言語のページを見てみました。
文法がよくわかりませんが、HPのRPN電卓のキー入力っぽくも見えます。APL系?
それでいてGUIコンポーネントやDBコンポーネントも持っていて、
しかもUTF-8対応というのはなかなか興味深いです。
調べたらAPLを作ったケネス・アイバーソンが作っているんですね。
これってチューリング完全なのでしょうか?
J Application Library (JAL) のページの写真がJALの飛行機なのが面白いです。
URLリンク(www.jsoftware.com)
127:ちんこ ◆GbXlaaQNk.
09/09/05 20:12:35
今、ライブラリ作ってるんだけど、美しい設計に敏感なみなさん、
javadocを晒したらコメントいただけますか?ソースはきついw
128:デフォルトの名無しさん
09/09/05 20:20:19
おし、晒せ。
129:ちんこ ◆GbXlaaQNk.
09/09/05 20:43:04
やっぱやめた。
出来上がったらソースも公開するつもりだし、安心しろよ。
130:デフォルトの名無しさん
09/09/05 20:55:17
C#だな
131:ちんこ ◆GbXlaaQNk.
09/09/05 21:36:27
Haskellって、純粋関数言語だよね?
パフォーマンスはどうなの?Javaとかと比べて。
かなり興味ある。あとはPython
Javaは最強すぎてもう鬱陶しくなってきた。
Python勉強した方がGoogle入りやすいかな?
132:デフォルトの名無しさん
09/09/05 22:25:21
>>131
Javaより速いよ。まあ修得できないちんこには関係のない話だがな。
133:デフォルトの名無しさん
09/09/05 22:25:32
自分で調べようや坊や
134:デフォルトの名無しさん
09/09/06 07:37:47
>>126
APL-特殊文字+FP≑J
普通に状態(変数)も条件分岐もループも再帰も持ってんだしチューリング完全だと思うが?
135:デフォルトの名無しさん
09/09/06 08:20:52
make+bash最強
136:デフォルトの名無しさん
09/09/06 13:01:47
最も美しい言語となると、WEBじゃなの?
137:デフォルトの名無しさん
09/09/06 15:38:50
>>136
WEBって何?そんなプログラミング言語あったっけ?
138:デフォルトの名無しさん
09/09/06 16:56:13
> 最も美しい言語となると、WEBじゃなの?
言語って言えるかどうか難しいところだわな
Pascal コンパイラ必要
web2c で C に落しても C コンパイラ必要
139:ちんこ ◆GbXlaaQNk.
09/09/06 19:37:58
scalaというのが神らしいです。
140:デフォルトの名無しさん
09/09/06 20:26:04
ちんこにはScalaくらいのなんちゃって関数型プログラミングがちょうどいいとおもうよ。
141:ちんこ ◆GbXlaaQNk.
09/09/06 20:47:48
まぁ、それは置いといて、関数型プログラミングから何らかのエッセンスを学びたいと思っています。
HaskellとScalaはどちらがいいですか?
javaの設計で行き詰まっています。手続き的なAPIがユーザに不必要な制約を与えることに気づいたのです。
というわけで、気晴らしに関数型でもやるかとw
Schemeは嫌いじゃないしね。Scalaは、ユニットテストのサポートがすさまじいと思った。これはユニットテスト書くの楽しくなる。
142:デフォルトの名無しさん
09/09/06 22:02:33
VHDL
143:デフォルトの名無しさん
09/09/06 22:35:04
ちんこって軽く1~2周は遅れてて十分恥ずべきなのになんでこんな知ったような口たたけるの?
馬鹿なの?死ぬの?
144:デフォルトの名無しさん
09/09/06 22:39:56
scalaはマニア向け
145:ちんこ ◆GbXlaaQNk.
09/09/07 00:17:05
>>144
どういうマニアですか?
僕にはとても汎用的で、javaの代わりになる言語だと思えるのですが。
146:デフォルトの名無しさん
09/09/07 00:49:34
1.C#
今一番めしがくえる。
2.C++
とりあえず、要求を実現するのにできないことがない。
147:デフォルトの名無しさん
09/09/07 00:59:13
>>146
web案件の増加とかで、最近2はそうでもなくなった。
1、2ともにJavaになりつつある。
148:ちんこ ◆GbXlaaQNk.
09/09/07 08:18:00
案件とか業務とか、どうせお前ら全員しょぼいんだろw
149:デフォルトの名無しさん
09/09/07 08:57:25
Bisonが素敵です
YaccのようでYaccより遥かに強力
これにFlexつけたらいろいろできます
150:デフォルトの名無しさん
09/09/07 11:32:01
C++さえマスターすればあと30年は戦える
151:デフォルトの名無しさん
09/09/07 11:52:25
>>141
Schemeは純粋関数型ではないので
やるとしたら純粋関数型のHaskellをお勧めします。
152:デフォルトの名無しさん
09/09/07 12:00:51
>>134
ありがとうございます。J言語について調べてみます。
FPというのも興味があります。かのバッカスが作った言語なんですね。
153:デフォルトの名無しさん
09/09/07 12:14:59
>>152
"Priier"を読んで大掴みに体験してみて、"learning J"でもう少し細かい所を見てみるのがいいと思う。
と言うか、俺がそうしたんだが。
154:デフォルトの名無しさん
09/09/07 12:15:59
>>153訂正
"PRiier"→"Primer"
155:デフォルトの名無しさん
09/09/07 13:06:56
>>154
ありがとうございます。これですね。読んでみます。
URLリンク(www.jsoftware.com)
156:ちんこ ◆GbXlaaQNk.
09/09/07 18:35:14
今日、手続き型で思い切り書いてみたら、とんでもないことになった。
上から入れたものが下の方でどうなってるのか、さっぱり分からなくなった。
ちなみに再帰的な処理。
やっぱり手続き型は害悪だと思うんだよね。
157:デフォルトの名無しさん
09/09/07 19:25:53
最も美しいプログラミング言語?
HSPに決まってんだろw
158:デフォルトの名無しさん
09/09/08 01:37:45
LispのLOOPとFORMATは、きれいじゃないなぁ、と思いつつ代替案が思いつかないな。
あと、マクロってどうやってデバッグするんだよ、って思っちゃう。
159:デフォルトの名無しさん
09/09/08 08:12:42
>>68
マイクロコードの先はマシン語ではなくて、hard-wired なんじゃないの?
160:デフォルトの名無しさん
09/09/08 10:18:49
>>156
FORTRANを作ったバッカスも、手続き型は害悪だと思っていたみたいです。
161:デフォルトの名無しさん
09/09/08 11:34:30
はてな人力検索:
関数型言語(プログラミング言語Scheme, Haskellなど)を勉強しようと思っています。
初心者にも関数型言語のメリットや考えかたがスラスラ分かる勉強の材料を教えてください。
言語の習得よりも、関数型言語の考え方の習得に重きを置いています。
URLリンク(q.hatena.ne.jp)
回答がなかなか有用だと思います。
この質問者のhigeponさんって、Mona OSを作った人ですね。
SchemeをMona OS上に実装した人も、最初はこんな質問をしていたんですね。
なんだか勇気付けられます。
162:デフォルトの名無しさん
09/09/08 11:35:25
>>157
同意
163:デフォルトの名無しさん
09/09/08 15:31:02
>>161
回答してるのShiroさんだわ…こりゃすごい。
164:デフォルトの名無しさん
09/09/08 18:11:16
見た目ではなく、内面の美しさを感じさせるのはPrologだな。
165:デフォルトの名無しさん
09/09/08 18:15:31
カットで台無しだけどなー
166:デフォルトの名無しさん
09/09/08 18:20:29
>>165
それあるねぇ。使わなければ相当の美人だけど。
167:ぅゅ
09/09/08 23:18:02
美しい言語っつったらLisp以外考えられんて・・・美的センス狂いすぎ
中身はもうLispじゃないけどこれ見てS式好きになってくれる人が出てくれること祈る
URLリンク(www.geocities.jp)
168:ちんこ ◆GbXlaaQNk.
09/09/08 23:31:02
型ありとしても定義出来るし、
型が定義されてない時には動的に型推論してくれる。
そんな神のような言語はありませんか?
169:デフォルトの名無しさん
09/09/09 00:13:44
ECMAScript
カスだが
170:169
09/09/09 00:15:53
あ、型推論はないよ
動的型なら型推論する意味ないから。
171:デフォルトの名無しさん
09/09/09 01:42:50
>>168
型が定義されてない時に性的に型推論してくれる言語では不満ですか?
172:デフォルトの名無しさん
09/09/09 01:46:55
CommonLispは型宣言なんかもあったな
173:ぅゅ
09/09/09 01:58:33
つくれよカス
174:デフォルトの名無しさん
09/09/09 02:48:37
LispやSchemeは( )だらけで分からなくなりそうだけど良いエディタがあるの?
175:デフォルトの名無しさん
09/09/09 04:00:20
>>164
SmalltalkとPrologには理屈でない美しさがあるね。
176:ちんこ ◆GbXlaaQNk.
09/09/09 06:12:17
>>171
そんな言語あるんですか?
>>173
そのうちそうなりそうです。
177:デフォルトの名無しさん
09/09/09 06:34:56
Lispは抽象画の美しさ
C++はガンジス川の美しさ
178:デフォルトの名無しさん
09/09/09 06:36:49
>>糞コテ
C++0xのautoを調べろ
179:ちんこ ◆GbXlaaQNk.
09/09/09 07:09:10
>>178
C++という時点でお察しですw
180:デフォルトの名無しさん
09/09/09 07:11:05
>>175
そういえば、Part2になってから見かけ派の書き込みがなくなって、
理屈派ばかりになったね。
181:デフォルトの名無しさん
09/09/09 10:16:53
>>177
お前どっちも美しいと思ってないなwww
182:デフォルトの名無しさん
09/09/09 11:17:10
普通にどっちも美しいだろ
183:デフォルトの名無しさん
09/09/09 11:39:23
hspとか精神的に不衛生だわ
GOTOってなんだよボケ数十回GOTOしたらエラーでエラー無視してるとPCぶっ壊れるしwww
C++をスペースとかでうまくレイアウトしてけば綺麗だが
それやるとPHPが一番綺麗
184:デフォルトの名無しさん
09/09/09 11:41:14
>>168
Haskellは型を書いてもいいし、書かなくてもいいです。
書かないときは推論します。
185:デフォルトの名無しさん
09/09/09 11:44:23
>>167
シンボルが定義されてなかったら文字列の扱いですか?
nopとかmovとか、そこはかとなくアセンブリな感じですね(笑)
186:デフォルトの名無しさん
09/09/09 12:09:10
>>184
Perlにはイワユル型がありません。
文脈に応じて自動的に解釈されます。
解釈を指定する方法も提供されています。
187:デフォルトの名無しさん
09/09/09 13:22:09
>>184
動的にって言ってるんだからそれはダメじゃないの?
動的にモジュール読み込んだ時に型解決できないし
188:デフォルトの名無しさん
09/09/09 13:30:03
そもそも型推論のある型付け言語なんか普通にごろごろしてるし、神のような言語でも
何でもない
189:デフォルトの名無しさん
09/09/09 14:24:22
動的に型解決というのがいまひとつピンとこないのだが。
ランタイムに型エラーが出てたのが、ランタイムに型解決
失敗エラーが出るようになるだけで何もうれしくないのでは?
コンパイル時に型解決失敗エラーが出るところが型解決のメリット
だと思うのだけど。
190:デフォルトの名無しさん
09/09/09 14:30:13
> 動的に型解決というのがいまひとつピンとこないのだが。
コンパイラがラクになるじゃなかったっけ?
191:デフォルトの名無しさん
09/09/09 14:37:17
>>187
「動的に」は「インタプリタでのコード入力時に逐次的に」と勝手に解釈してました。
もし「動的に型推論」という言葉が「実行時に変数の型を推論する」のだとしたら
何のために推論するんでしょう?
Pascalみたいに値域検査をするためでしょうか?
192:デフォルトの名無しさん
09/09/09 14:38:11
静的型推論を知らなくてどう表現していいか分からなくて動的とか適当な言葉を
使っちゃっただけだと推測
193:デフォルトの名無しさん
09/09/09 14:42:46
189です。
型解決じゃなくて型推論でした。失礼。
>>190
中間言語にコンパイルする時点で型推論するのかな?
それなら型エラーを含んだコードは評価前に死んでくれて
評価途中に死ぬ確率が減るメリットがありそうだけど、
ラクになるのはevaluatorだなあ…
194:デフォルトの名無しさん
09/09/09 15:45:24
あらゆる言語はbison(yacc方言)で表現できるのだから、
もっとも美しいのはbison(yacc方言)です
195:デフォルトの名無しさん
09/09/09 16:21:21
>>194
\ ∩─ー、 ====
\/ ● 、_ `ヽ ======
/ \( ● ● |つ
| X_入__ノ ミ そんな餌で俺様が釣られクマ―
、 (_/ ノ /⌒l
/\___ノ゙_/ / =====
〈 __ノ ====
\ \_ \
\___) \ ====== (´⌒
\ ___ \__ (´⌒;;(´⌒;;
\___)___)(´;;⌒ (´⌒;; ズザザザ
あえて釣られると
・bisonはparser generatorであって言語ではない
・perlはbisonで表現できないんじゃなかったっけ?
196:ちんこ ◆GbXlaaQNk.
09/09/09 16:36:06
とりあえず型について思うのは、
やっぱ、アルゴリズムを記述したり、厳密に型を定義して書きたい時はあると思うということだ。
でも、誰が作ったライブラリを利用したり、自分の作ったコンポーネントを合体させるだけなら、型はいらない。
下の方では型ありでコンパイラのチェックが入るけど、型を書かない時は動的に推論するというのが望ましい。
手続き型の書き方について限界を感じてきている。Haskellを勉強したいけど時間がない。
Haskellって実用的ですか?アルゴリズムとか記述出来ますか?
多くのアルゴリズムは、命令的な処理の羅列として開発されていると思う。
それを関数型にすることで、パフォーマンスを損なったりしませんか?
197:デフォルトの名無しさん
09/09/09 16:53:50
>>196
「勉強する時間がない」なんていうやつはたいてい
「勉強しても理解できなかったとき、自分の無能さを認識するのが辛い」だけだ。
で、いつまでも自分のことを「やればできる子」だと思っている。
理解できるまで勉強しろ。
2chに書き込んでる時間を全て勉強の時間にまわせ。
198:デフォルトの名無しさん
09/09/09 16:58:05
>>196
Haskellは実用的です。アルゴリズムを記述できます。
Haskellは必要な分しか計算をしないため、
手続き型言語よりパフォーマンスが良くなる場合があります。
199:デフォルトの名無しさん
09/09/09 16:59:06
>>196
ちんこが言う「動的に推論」の「動的」とは、どういう意味ですか?
静的に推論してはいけませんか?
200:デフォルトの名無しさん
09/09/09 17:16:30
>>199
>>196を読んで>>192が正解だと確信した
201:ぅゅ
09/09/09 17:50:08
>>185
そうです
変数名は()以外の記号なら何でもおkですっ
でもグローバル変数forとか宣言するとfor文が二度と使えなくなります
movにしたのはsetqとかよりは分かりやすいかと><
202:デフォルトの名無しさん
09/09/09 17:53:49
どう見てもよくある静的な型推論です本当にありがとうございました
203:ちんこ ◆GbXlaaQNk.
09/09/09 19:18:14
>>198
ということは、常にキャッシュで計算が行われるということですか?
204:デフォルトの名無しさん
09/09/09 20:05:35
>>203
遅延評価の事を言ってるんだろ?
式の値が本当に必要になるまで計算されない。
205:ちんこ ◆GbXlaaQNk.
09/09/09 20:09:47
だから、必要な値が、もっとも新鮮な形で存在するということでしょ。
メモリアーキテクチャ的にどうなってるのかな、ということを聞いています。
パフォーマンスが上がるというのであれば、全キャッシュで計算出来るということなんじゃないのかな?
過去の値はどんどん捨てられていくんでしょ?
メモリが常に少ししか必要ないということになる気がするんですけど。
206:デフォルトの名無しさん
09/09/09 22:55:21
遅延評価が何で新鮮な形で存在とかになるんだw
207:デフォルトの名無しさん
09/09/09 23:02:00
>>205
お願いだから、我々凡人に理解できるように書いてくれ
208:デフォルトの名無しさん
09/09/10 00:13:46
>>205
> だから、必要な値が、もっとも新鮮な形で存在するということでしょ。
ちがう。
必要になったときに計算する。
> メモリアーキテクチャ的にどうなってるのかな、ということを聞いています。
どうもなってない。
> パフォーマンスが上がるというのであれば、全キャッシュで計算出来るということなんじゃないのかな?
ちがう。
> 過去の値はどんどん捨てられていくんでしょ?
そう。
> メモリが常に少ししか必要ないということになる気がするんですけど。
あるいみそのとおり。
209:デフォルトの名無しさん
09/09/10 00:42:03
優しい人が多いスレですね。
210:デフォルトの名無しさん
09/09/10 02:09:53
平たく言うと馬鹿に触るなということですね
211:ちんこ ◆GbXlaaQNk.
09/09/10 02:39:08
>>208
じゃあ、関数型は、メモリが少なくて済むんですか?
すごく疑問なのは、ファイル読み込みとかどうするかということです。
例えば、不変の1Mのファイルをいちいち読み込んではパースしてコピーして、ということはjavaのプログラムではしません。
ふつうはプログラムの最初に読み込んで、プログラム的にキャッシュします。
しかしながら、実際は必要な時に読み込んで、とした方がメソッド間の結合度を下げることが出来ます。
関数型では、こういう処理についても、必要な時に読み込んで、ということをするのでしょうか?
それはとてつもないオーバーヘッドになります。
とても現実的とは思えません。
212:デフォルトの名無しさん
09/09/10 03:46:23
>>211
最初に全部読み込むように書こうが、必要になったら毎回読むように書こうが
必要に応じて好きなように書きゃあいいじゃんとしか言いようがない。
それは関数型言語も手続き型言語も遅延評価も何も関係ない。
メモリがどうのという話だと、関数型言語一般で言えば、
比較的メモリを富豪的に使う設計思想なので
Cや機械語と比べればメモリを浪費しやすい。
(当然Cでメモリ無駄遣いすることもできるし
LISPでメモリを節約することもできるが一般論として。)
ただし近代的な言語は概ねメモリを富豪的に使う傾向なので
Javaと比べてどうかというとそれは処理系による。
213:ちんこ ◆GbXlaaQNk.
09/09/10 03:58:47
>>212
なるほど、よく分かりませんが、モナドというのは、そういうための機構なのですね?
あぁ、HaskellかScala勉強しないと時代に取り残されて死ぬことになるw
関数型を勉強したら、一般的なオブジェクト指向型設計についても思考の選択肢が増えますか?
214:デフォルトの名無しさん
09/09/10 04:18:35
関数型やった後だと、既存の手続き型言語で書くときでも、考え方は多少変わるかもね
まあ、かと言って手続き型言語で無理矢理関数型コードを再現したようなのはダメだがw
ほどほどに関数型の考え方を取り入れれば、手続き型でも役には立つと思う。
215:デフォルトの名無しさん
09/09/10 09:56:53
>>213
時代遅れって意味では、おまえはすでにこれ以上ないってくらい死んでいるから心配しなくて大丈夫だ。
副作用前提のちんこの頭では、参照透明性とか一生わからんから説明するだけ時間の無駄、無駄、無駄!
216:ちんこ ◆GbXlaaQNk.
09/09/10 10:24:49
>>215
ですよね。自分を恥じています。
みなさん、情報科学を専攻された方たちですか?
情報学科いけばよかった。
217:デフォルトの名無しさん
09/09/10 10:36:45
つーか既存言語もマルチパラダイム化が流行ってるからなぁ
218:ちんこ ◆GbXlaaQNk.
09/09/10 10:40:19
「フレームワークとしての言語」
という方向になっていくのではないのですか?
ピュアな関数言語があることは分かりましたが、
ピュアがオブジェクト指向言語っていうのはどういう要件がありますか?
また、そういうものは存在しますか
219:デフォルトの名無しさん
09/09/10 10:43:23
お前は日本語の論理構成すらぐちゃぐちゃなんだから、プログラムなんか
書こうとしない方がいいよ本当に
220:ちんこ ◆GbXlaaQNk.
09/09/10 10:47:39
>>219
才能ないんでプログラムやめようかと思っています。
関数型分からなかったらやめようかと。
221:デフォルトの名無しさん
09/09/10 10:49:24
才能無い程度で辞めていたら何もやる事がなくなりそうだ
222:ちんこ ◆GbXlaaQNk.
09/09/10 10:55:24
生き方は色々あるんで、
プログラムの才能ないと分かっただけでもよかったかなって思っています。
223:デフォルトの名無しさん
09/09/10 12:02:54
scalaは将来登場予定の新Javaの参考資料だよ
224:デフォルトの名無しさん
09/09/10 12:04:44
むかし日本語でブログラムできる言語があったっけ。
気持ち悪かったけど。
225:デフォルトの名無しさん
09/09/10 12:50:44
ぴゅう太?
226:デフォルトの名無しさん
09/09/10 13:14:49
AFL系 日本語AFL 和漢
BASIC系 ぴゅう太日本語G-BASIC F-BASIC86国語モード
C系 高可読性C
FORTH系 Mind
227:デフォルトの名無しさん
09/09/10 14:39:42
ひまわりやなでしこは何系だろう
228:デフォルトの名無しさん
09/09/10 17:00:30
>>218
いわゆる“オブジェクト指向”には、抽象データ型をベースにしたもの(SIMULA67→C++発)と、
メッセージングをパラダイムにしたもの(Smalltalk発)、あと最近はオブジェクトベースの考え方(SELF発)がある。
重なる部分もあるが、原則として別物と考えた方が整理が付けやすい。
それぞれのOOをサポートする言語としての最低限の要件は、
・抽象データ型OO → 抽象データ型、つまりユーザー定義型を使えること。静的型チェックが前提。
・メッセージングOO → (メッセージングと見なせる)動的結合を扱えること。分散・並列が理想だが、そこまでは求めない。
・オブジェクトベースOO → オブジェクトレベル(つまりクラスに依存せず)なんらかの委譲機構が用意されていること。
それぞれのOOにおいて“ピュア”な言語の例としては、
・抽象データ型OO → プリミティブ型を持たない言語(Scala など。静的型チェックの要件を外してよいなら多くの動的OOPLも)
・メッセージングOO → 静的結合機構を持たない言語(Ruby など。代入・値参照まで徹底した言語は、SELF、Io くらい?)
・オブジェクトベースOO → クラス、あるいは継承機構のない言語(JavaScript など。誤解されがちだが、動的性は要件ではない)
229:ちんこ ◆GbXlaaQNk.
09/09/10 17:23:51
>>228
教えてもらってもいいですか?
私はクラスというのは、
データと、それを利用することが多い関数をモジュール化したものだと考えています。
それは、C言語でクラスを作る時に、構造体と関数を用意するのと同じです。
pythonでは、selfを第一引数にとることでこれを意味として残しています。
この考えは上記ではどれに相当しますか?
230:デフォルトの名無しさん
09/09/10 17:48:19
Pythonは、クラスを含む言語機能自体はオブジェクトベースに特徴的な仕組みにより実現されていますが、
この言語のユーザーは抽象データ型のOO(ただし静的型チェック抜きで)を意識して使うのが通常です。
もちろん、イントロスペクションなどは例外で、抽象データ型OOよりはオブジェクトベースOOの考え方で行なうのが自然です。
231:デフォルトの名無しさん
09/09/10 21:57:29
オッパイ損
232:デフォルトの名無しさん
09/09/10 21:58:03
>>229
>>228の言う意味がわかってないのに、どれに該当するか聞く意味があるのか?
その考え方は>>228のどれにも該当しない。
あえていうならCやC++の抽象データ型に対して唯物論的な捉え方をするとそうなるかもしれん。
あんたのとらえ方は特定の実装方法に対する解釈にすぎない。
適切な例えかどうかわからんけど、
>>228「何をもって生き物であると言えるかには以下3つの学説がある」
>>229「生き物はたんぱく質でできているらしいと捉えている。これはどの学説に相当するのか?」
という感じ。
233:デフォルトの名無しさん
09/09/10 22:08:16
アセンブラで一番下側から世界を見るか、Lispでそれなりの上側から世界を見るか、
せめてどっちかの視点は持った方がいい
まぁ、片方だけに偏るともう片方を小馬鹿にする馬鹿が育ったりするから、両方の
視点を持った方がいいが
234:ちんこ ◆GbXlaaQNk.
09/09/10 22:34:37
>>232
意味不明すぎる。
235:デフォルトの名無しさん
09/09/10 23:44:36
お前の名前のことか
236:デフォルトの名無しさん
09/09/10 23:55:28
ちんこはアセンブラとLispを両方やれ
そうすればいろんなものが見えてくるんじゃね
237:ちんこ ◆GbXlaaQNk.
09/09/11 00:03:31
やだ。実用性ない。
Javaより低級な言語はやりたくない。
238:デフォルトの名無しさん
09/09/11 00:13:57
>>237
Lispはどう考えてもJavaより高級。
239:デフォルトの名無しさん
09/09/11 01:04:40
ちんこ
お前の中には何か輝くものを感じるよ
けどメイン言語がJAVA?なのはギリギリ良しとしても
こんなスレでLispじゃなくハスケルを選んでるのはすげー残念だ
それらの言語を選ぶ神経が分からんが、がんばれよ
240:デフォルトの名無しさん
09/09/11 01:45:12
ちんこたんは「Javaスクールの危険」とか読んでないのかな。
241:デフォルトの名無しさん
09/09/11 02:14:20
まぁ、アセンブラやLispをJavaより低級と切り捨てた時点で完全に論外だな。
なぜなら、お前は「自分が分かってもいない言語」を切り捨てたからだ。無知の知が
無いんだよ。そういう奴は見栄ばかり張って進歩はしない。
242:デフォルトの名無しさん
09/09/11 02:26:10
つーかぶっちゃけ、guru級のハッカーはほぼ全員がアセンブラとLispとC++辺りは
「必要な常識」として会得してるんじゃね?
美しいかどうかはシラネ
243:デフォルトの名無しさん
09/09/11 04:30:15
ハッカーなんてプログラマの心の中に巣くう幻想
そこらのカスPGも、どこかの誰かの前ではハッカーになってるかもしれない
ちんこは、高級言語で効率的にアプリを作ることで、
誰かの瞳に映るハッカーになればいい
プログラマが認めるようなハッカーは、一般人からはハッカーって思われてないこと多いし・・・
244:デフォルトの名無しさん
09/09/11 04:43:10
だが現実にアセンブラもLispも普通におkなんて連中はごろごろいる
気休めの相対評価は井戸の中では通じるが、匿名掲示板程度の小さな海ですら通じなく
なる訳で
こういうところでぐだぐだと的外れな背伸びレスを垂れ流さないでいてくれるなら、
こいつがそこらのしょぼいJava厨として生きてても別に何も困らないけどな
245:デフォルトの名無しさん
09/09/11 04:46:22
URLリンク(ja.wikipedia.org)
Wikipediaを出典とするのもあれだが、「高級言語」の定義は本来こんなもんだろ
Lispを低級とのたまうちんこが高級言語で効率良く開発? ねーよw
そもそもJava脳が効率良く開発もできねーよw
246:デフォルトの名無しさん
09/09/11 05:07:32
「Lispもオッケー」って、どんなレベルなんだろう。
247:デフォルトの名無しさん
09/09/11 05:14:55
機械語含むハードウェア側とLispとの両面教育は割とポピュラーじゃね?
ハードウェアを知らなければ最適化も決して理解できないし、ハードウェアの束縛を
無視した抽象的なアルゴリズム記述力ならLispがほとんど最強だし。
248:デフォルトの名無しさん
09/09/11 06:10:02
抽象的なアルゴリズム記述力なら他の言語も別段差はないんじゃないか?
249:デフォルトの名無しさん
09/09/11 06:17:46
Lispやる際にはハードウェアを考慮した最適化なんかしないだろJK。
250:デフォルトの名無しさん
09/09/11 06:47:53
ネットでしつこく話題になるもんはGeek目指していれば普通は少しは触るもんだけど
それをやんないって事は
ちんこはGeekなんて目指してねーんだよ
目指してるのはまん・・・
251:ちんこ ◆GbXlaaQNk.
09/09/11 09:30:09
抽象データ型の要件を教えてもらえませんか?
抽象データ型については、セジウィックの本に書いてありましたが、いまいち理解出来ませんでした。
具体的な要件を教えてください。
きちんとした定義なしに、共通認識だとたかをくくったまま言葉を使うのは危険です。
252:デフォルトの名無しさん
09/09/11 09:54:53
抽象データ型はリスコフによれば、データと手続きをセットにしたものです。
もうすこし具体的に言うと、モジュールの定義することで、それを新しいデータ型として扱う機構・手法です。
プログラミング言語の「データ型」が何かを知っている人ならば、ストラウストラップに倣ってより簡単に
「ユーザー定義のデータ型」と言い換えてもよいでしょう。
抽象データ型のOOは、クラスを抽象データ型(ユーザー定義型)として利用するアイデアに基づいて考案されたものです。
253:デフォルトの名無しさん
09/09/11 10:13:51
>>249
だから「両面」と
全く別方向からそれぞれ攻めるっつー話だ
254:ちんこ ◆GbXlaaQNk.
09/09/11 13:33:51
>>252
では、データと手続きがセットになっていれば、良いのですね?
よく言われるのは、Stackならpushとpopがあるとか。
では、popだけのStackはADTではないのですか?という話になる。
インターフェイスとしては十分に成立しうると思います。
というわけで、ADTは、
add, removeのように正と負の関係にある処理と、
状態を問い合わせるための必要最低限の処理が必要なのではないかと思いました。
もっと正確な定義を示している人間はいないのですか?
255:デフォルトの名無しさん
09/09/11 14:09:45
>>254
アメリカ国立標準技術研究所のページ
URLリンク(www.itl.nist.gov)
Definition: A set of data values and associated operations that are precisely specified independent of any particular implementation.
特に正と負の関係にある処理は必要ないと思われます。
カウンタなんかは「カウントアップ」と「状態の問い合わせ」だけあれば、
「カウントダウン」は必要ないですし。
256:デフォルトの名無しさん
09/09/11 14:12:38
>>248
高階関数があるかないかで、処理の貼り合わせができるかどうか変わってきます。
遅延評価があるかないかで、無限の値を返す関数を使えるかどうかが変わってきます。
257:ちんこ ◆GbXlaaQNk.
09/09/11 14:17:37
>>255
定義については分かりました。
ところで、ADTというのは抽象なのですよね?
では、なぜ、「データ」というものが関係してくるのでしょうか?
実装上のデータからは完全に切り離された話のはずです。
なので、javaにおける抽象インターフェイスというのは、ADTではないということになります。
一体これは、定義上、何に分類されるのでしょうか?
258:デフォルトの名無しさん
09/09/11 15:03:33
>>257
ADTは値と操作を定義したものです。
たとえば次のようなスタックはADTになっています。
struct STACK stack;
void push(STACK a_stack, int a_value);
int pop(STACK a_stack);
このスタックの利用者は、STACK, push, popの実装を知らなくてよいです。
その意味で、このスタックは抽象化されています。
Javaのインターフェイスは操作のセットなので
ADTを定義するためのパーツとして使えますが、
値を持たないため、ADTではありません。
259:デフォルトの名無しさん
09/09/11 15:19:05
>>258
すいません、
struct STACK stack;
↓
STACK stack;
でお願いします。
260:ちんこ ◆GbXlaaQNk.
09/09/11 16:35:02
>>258
oh, I see.
261:ちんこ ◆GbXlaaQNk.
09/09/11 17:23:46
つまり、初期化出来るかどうか、というのが、
JavaのinterfaceとADTとの差なのですね?
262:デフォルトの名無しさん
09/09/11 17:31:00
実装が利用者から隠蔽されているだけで具象じゃないか
気持ち悪い定義だな
263:デフォルトの名無しさん
09/09/11 18:10:55
>>262
利用者から見て抽象的だから ADT なんだと思うが。
どの発言のどの部分を見て具象だと思った?
264:デフォルトの名無しさん
09/09/11 18:28:31
ちんこの疑問って、「お塩と押尾の違いを教えてください」ってのと同レベルで笑える。
265:デフォルトの名無しさん
09/09/11 18:52:35
>>261
出て行け
266:ちんこ ◆GbXlaaQNk.
09/09/11 18:58:12
凡人たちには天才がなぜ悩むのかということが理解出来ないものだ。
267:デフォルトの名無しさん
09/09/11 19:13:26
おまえ、神オブジェクトじゃね?
268:デフォルトの名無しさん
09/09/11 19:20:01
>>261
Javaのインターフェイスという言語機能は、抽象データ型のOOにおいてクラスを抽象データ型として利用する際の欠点を補うために
考え出されたものです。ですから抽象データ型を定義するのに使われますが、抽象データ型(という概念)そのものではありません。
URLリンク(portal.acm.org)
269:ちんこ ◆GbXlaaQNk.
09/09/11 19:36:43
>>267
ご名答。
>>268
あなたはプログラミング理論の研究をしていますか?
オブジェクト指向とは何なのか、ベストな設計とは何なのか、などについて研究された論文があったら教えてください。
英語は読めます。
270:デフォルトの名無しさん
09/09/11 19:38:21
本当に紙オブジェクトだったのか…
271:デフォルトの名無しさん
09/09/11 19:42:06
まじでか・・・・ いてえなあ・・・・
272:デフォルトの名無しさん
09/09/11 19:42:17
ゴゴゴゴゴゴゴゴゴゴゴゴ……………
273:デフォルトの名無しさん
09/09/11 19:48:20
>>269
>オブジェクト指向とは何なのか
つ URLリンク(portal.acm.org)
274:デフォルトの名無しさん
09/09/11 19:49:19
C#3.0のラムダは美しい方だと思う。
既存のコードの中にうまく溶け込んでいる印象。
対してRINQはあんまり綺麗とは思えない。浮いてる。
C++0xで入る予定のラムダは、あれはあれでありだと思う。
良くも悪くもC++らしい。
美しいかどうかは別問題だけど。
275:デフォルトの名無しさん
09/09/11 19:53:21
C++から離れてもうだいぶ経つな。
あんな汚い言語にはもう2度と関わりになりたくない。
276:ちんこ ◆GbXlaaQNk.
09/09/11 20:00:04
>>273
さんくる。
明日読むわ。
277:デフォルトの名無しさん
09/09/11 20:04:04
>>276
だまされるな。それは孔明の罠だ。
つAuthor
278:デフォルトの名無しさん
09/09/11 20:04:43
ここも読めよ
URLリンク(d.hatena.ne.jp)
279:デフォルトの名無しさん
09/09/11 20:07:48
>>269
俺たちの尊敬する紙オブジェクト様の名を騙るとは
江戸川先輩なみにごっつい野郎だ
280:ちんこ ◆GbXlaaQNk.
09/09/11 20:17:37
>>277
ストローストローだろ。
この人、プログラミング言語の研究者でしょ?
何か問題があるのか?
>>278
それはおれのブログだw
281:デフォルトの名無しさん
09/09/11 20:21:58
まじっすか!いつも「天才はこう考えるんだ」っていう事を知って感動してるんだけど?
本当に本人?
282:デフォルトの名無しさん
09/09/11 20:24:09
はいはい
自演自演
283:デフォルトの名無しさん
09/09/12 00:12:22
>>269
>ベストな設計とは何なのか
つ URLリンク(amazon.jp)
284:ちんこ ◆GbXlaaQNk.
09/09/12 00:25:59
>>283
それは読んだ。
285:デフォルトの名無しさん
09/09/12 01:23:17
ちんこは今までに何を作った事あるんだよ
それによって助言の仕方も違ってくると思うぞ
286:デフォルトの名無しさん
09/09/12 08:26:51
まじかよ神オブジェクトがこんなとこにいんのか
287:デフォルトの名無しさん
09/09/12 08:47:58
オブジェクト志向のオブジェクトって何指すの?
1 モノ
2 SVOのO
3 彫像
288:ちんこ ◆GbXlaaQNk.
09/09/12 08:56:24
>>285
何でお前、偉そうなんだ?
おれより上なのか?
289:デフォルトの名無しさん
09/09/12 09:27:57
名無し自演もする奴なのか、うぜーなw
とりあえずLispやれLisp、OOPなんて狭い世界での些末な定義なんかどうでも良くなるぞ
290:デフォルトの名無しさん
09/09/12 09:37:13
>>287
基本的には1だと思う
但しモノの指す範囲が概念的なモノから文字通りの物まで物凄く広いから
3は間違いである可能性が高い
もちろん、彫像クラスを作ればその時に限り正解w
(しかしながらOOPLではObjectクラスが既に存在することが多いので、大抵別の名前を付けるだろう)
2はあながち間違いじゃない
従来の言語はVO(動詞 目的語)の順が基本なのに対して
OOPLはOV(目的語 動詞)の順になるし
実際、最初に目的語を考えることが多いからね
291:デフォルトの名無しさん
09/09/12 09:46:50
おまいらOOPのメリットって結局なんだと思う?
結局は、抽象化につきると思うんだ。
だからオブジェクトっていう定義はいつまでもモヤモヤでいいんだ。
オブジェクト=データ+関数ではないんだ。
データや関数を意識させちゃ、ダメなんだ。
オブジェクト=(型や名前のついたりする)インターフェース郡。
抽象的に、名前や型のインスタンスとして扱うんだ。
実装は、あとから裏でコソコソすればいい。
292:デフォルトの名無しさん
09/09/12 09:52:37
紙オブジェクト様はCL、SchemeよりHaskell派のようです
293:デフォルトの名無しさん
09/09/12 09:58:26
アセンブラをやらない奴は最適化もできない
294:sage
09/09/12 10:10:23
ADTとインターフェイスの違いもわからないやつが
紙オブジェクトのわけねーだろ
295:デフォルトの名無しさん
09/09/12 10:16:45
ちんこはOOPを最先端だと思ってそう
296:デフォルトの名無しさん
09/09/12 10:35:05
OOPのメリットねえ…俺的には多態かな
ポリモなかったらOOP好きになってないと思う
297:デフォルトの名無しさん
09/09/12 11:06:06
さすがにこれでは、プログラム言語の美しさとは何の関係もないだろう。
そろそろ大政奉還した方がいいんじゃないか。
298:デフォルトの名無しさん
09/09/12 11:21:34
>>288
これは失礼 、 えらそうに振舞うつもりはなかった
ちんこが、もしあらゆる道を通ってきた上で
こんな謎なこと言ってるなら多分俺よりあらゆる面で上なんだが
しかし、一体何について考えてるのか俺には理解できないんだ
このスレの書き込みの中ではちんこが俺を除いては一番賢そうではあるが、
プログラミング、設計、アルゴリズム、OOP
これらについて考えるのに、もしちんこが今まで矮小なソフトウェアしか作った事なくて
JAVA一本しか言語触っていないというなら
どんだけ地頭よかろうとパズルのピースが大きく抜けてちゃ根本的に絵は完成しないだろがっっっ
299:デフォルトの名無しさん
09/09/12 11:28:50
神オブジェクトさまはScheme作るのか
300:デフォルトの名無しさん
09/09/12 11:31:20
URLリンク(en.wikipedia.org)
神オブジェクトって良い意味じゃないのだが
301:ぅゅ ◆e6.oHu1j.o
09/09/12 12:00:52
英語は読めないけどエスパーすると
プログラミングにおいて神様を作っちゃいけないんだろ
おれは作るけど。
302:デフォルトの名無しさん
09/09/12 16:15:16
ほらよ、MITで必須になってる授業内容らしいから読めちんこ
URLリンク(groups.csail.mit.edu)
303:ちんこ ◆GbXlaaQNk.
09/09/12 20:05:43
>>298
逆に、地頭悪いやつが何やっても無駄だろ。
>>302
読んでる途中。
今は中断してエイホのコンパイラに移った。
おれ、情報系出身じゃないから基礎がなってない。
ソフトウェア開発の名著はたくさん読んだけど、
プログラミングの原理とかがよく分からない。そしておれはそれを知りたい。
304:デフォルトの名無しさん
09/09/12 20:15:07
頭悪いんだからコテハンちんかすの方がお似合いだぞ。
305:デフォルトの名無しさん
09/09/12 20:19:48
同じ馬鹿なら踊らにゃ損損
306:sage
09/09/12 21:50:17
>>303
学校が情報系かそうでないかは関係ないと思います。
自分は高校生のときに独学でマシン語を勉強しました。
「プログラミングの原理」が何を意味しているのかはわかりませんが
ひとまずアセンブラをやってみたらいかがでしょう。
C++やJavaが内部で何をやっているのかがわかりますよ。
その後、LISPかHaskellに行くといいのではないでしょうか。
307:デフォルトの名無しさん
09/09/12 21:53:12
やるやつは消防ん時からでもやってるからな
308:デフォルトの名無しさん
09/09/12 21:55:46
なんか
ちんこってプログラミング以前にコンピュータというものを誤解してる気がするんだよな
309:デフォルトの名無しさん
09/09/12 22:35:52
URLリンク(d.hatena.ne.jp)
ちんこの悩みは凡人のそれを超越している
310:デフォルトの名無しさん
09/09/13 00:12:42
とりあえず、今はいろんなプログラムを作ってみろよ
アプリケーションだけじゃなくてゲームとかOSとか(OS作るなら、OSASKでggr)
正直、俺なんてまだプログラミング2年くらいしかやってないし(ちんこのほうがやってるだろ?)
明らかにそっちのほうが知識あるんだけど
それなのに文章を見てると俺でも口出しできる気がする
つまり根本的な何かが抜けてるとしか思えない
311:ちんこ ◆GbXlaaQNk.
09/09/13 00:41:23
まぁ、勝手にそう思ってるといいよ。
おれは、低学歴のバカとはマジメに会話しない主義だし。
312:デフォルトの名無しさん
09/09/13 00:42:39
他人を見下しても得ることは何もないと麻布では教わらなかったのか。
たいした学校じゃねえなw
313:ちんこ ◆GbXlaaQNk.
09/09/13 00:44:40
そうだね。
人を見下しても何も得ることはない。
ただ、バカと会話すると精神を冒される、これは事実だよ。
314:デフォルトの名無しさん
09/09/13 00:46:16
バカと話して精神を冒される、、、、それが地頭なのだよw
本当の天才はそんなことに精神を冒されたりはしない。
315:デフォルトの名無しさん
09/09/13 02:27:07
>>311
ちんこは今Lisp処理系作ってんの?
それを挫折せず形に出来たらとりあえずはバカじゃないこと認めてやるよ
俺も高学歴の割にバカな奴とはしゃべりたくない
316:デフォルトの名無しさん
09/09/13 05:59:14
おい神オブジェクトさまは技術者やめて管理職になるらしいぞ
317:デフォルトの名無しさん
09/09/13 06:01:26
まじかよたまんねぇよ
俺も神オブジェクトたんに管理されたい!!
318:デフォルトの名無しさん
09/09/13 06:07:38
麻布ごときで他人見下してんのかw
319:デフォルトの名無しさん
09/09/13 06:18:58
マジ低学歴なめんなよ
プログラミングの世界においては
最上級のハッカーは低学歴に多いのは歴史が証明している
320:sage
09/09/13 09:46:51
ちんこはラムダ計算を勉強するといいと思います
プログラミングについての新たな世界が広がります
321:デフォルトの名無しさん
09/09/13 10:48:20
神オブジェクト先生はソフトウェアは止めて研究職になるんだ!っておっしゃられてますよ。
322:デフォルトの名無しさん
09/09/13 10:52:54
まあ、俺も奴は研究者か教育者にでもなるしかないと思ってたがなぁ。
本当に実力があるのならだが
323:デフォルトの名無しさん
09/09/13 10:56:07
ちょw 神が殺人予告してるよw
有望な研究者なのに殺人とかやばいって、、
324:デフォルトの名無しさん
09/09/13 11:01:29
関西の恋人作ったら別れるときにブチ殺しそうだな。神オブジェクトはw
ブログ読むと頭悪いDQNそのものだし。
325:デフォルトの名無しさん
09/09/13 11:34:49
実際にscalaを使っている人はいますか?
ネット上の情報を見ている限り、ocaml + erlangみたいで
なかなかヨサゲですが。
326:デフォルトの名無しさん
09/09/13 16:35:10
最も美しいプログラミング言語 = C++
327:デフォルトの名無しさん
09/09/13 17:40:29
誰か通報した?
328:デフォルトの名無しさん
09/09/13 18:47:05
>>326
int c=x=0;
x=c++;
printf("%d\n",x);
329:ちんこ ◆GbXlaaQNk.
09/09/13 23:59:57
誰か、京都市在住でコンパイラちゃんと理解してるやつがいたら、コンパイラ教えてくれよ。
aho読んでるけど、作れる気がしねえよ。
330:デフォルトの名無しさん
09/09/14 00:03:12
>>329
最適化の事考えなきゃ、コンパイラなんて誰でも作れるだろ?
331:ちんこ ◆GbXlaaQNk.
09/09/14 00:06:44
そうなの?
やっぱおれ、頭悪いのかな。
332:デフォルトの名無しさん
09/09/14 01:57:11
インタプリタ:ソース読む→解読する→結果を出力する
コンパイラ: ソース読む→解読する→機械語生成
てか作ってんのインタプリタだよな?
インタプリタ作れてたら普通はコンパイラの作り方も分かるレベルになってるし
(+ 2 3) を読んで
5 と出力するところまでは作れたみたいだから文字列処理は出来てるんだろ
次に
(+
2
3)
とか
(+ 2 3) みたいに適当な形になってても正しく出力させるようにして
次にネストさせれるように作るんだ
(+ 2 (- 5 3))
Lispなんてネストできるようになったらほぼ完成したようなもん
333:デフォルトの名無しさん
09/09/14 04:01:10
しょぼいコンパイラをJavaで書いて挫折しそうになってるのか
何もかも間違ってる感じでたまらんな、いいぞもっとやれ
334:デフォルトの名無しさん
09/09/14 05:18:15
かみおぶじぇくとさまがんばって・・・
335:ちんこ ◆GbXlaaQNk.
09/09/14 08:17:33
>>332
いや、何も出来てないよ。
あれが出来ればいいね、というレベル。
ネストまでサポート出来ればいいね、という目標を書いた。
テストケースだ。
おれはソフトウェアにおいては最初にテストケースを書いて、インターフェイスを精査することにしている。
トークン解析するところ難しすぎだろ。
お前ら、本当にNFAとか状態遷移図とか理解してるのか?
とてもじゃないけど構築出来そうにない。
てゆうか、コンパイラの処理に、「文字列処理」なんてフェイズはないから・・・。
何言ってるの?
336:デフォルトの名無しさん
09/09/14 08:29:22
>>335
flex + bison
Don't reinvent the wheel.
歯車を再発明するな。
よくある謎訳
車輪を再発明するな。
337:ちんこ ◆GbXlaaQNk.
09/09/14 08:32:50
>>336
それは設定として禁じています。
そういうツールを使うのは、簡単なものを作って、基礎が分かるようになってからでいい。
それではコンパイラを学んだことにはなりません。
学ぶために作るのであって、使うために作るのではありません。
あなたは、再発明の意味を勘違いしています。
死んでください。
338:sage
09/09/14 08:37:01
>>335
有限オートマトンと状態遷移図は学部の最初でやるレベル
339:ちんこ ◆GbXlaaQNk.
09/09/14 08:41:00
>>338
いあ、まぁ電気でも、論理回路で状態遷移図はやりますが、
それに比べると抽象度が高くて、はるかに難しいという印象を受けます。
慣れてないだけかな、NFAをDFAに直す処理とか、感覚的には分かるけど、ちゃんと理解出来なかった。
一回、実装してみないとダメってことかな。
340:デフォルトの名無しさん
09/09/14 08:50:39
低水準も高水準も分からないまま実装しても使い物にならんよ
低水準の分からない奴は実行効率を最適化できない
高水準の分からない奴は開発効率を最適化できない
お前は両方できない
341:デフォルトの名無しさん
09/09/14 08:54:34
でもJavaは習得効率はいいぞ。難しいことが出来ないようになってるから。
342:デフォルトの名無しさん
09/09/14 09:01:08
>>337
すでにいいものがあるのだからそこから学べ。
ゼロから作るのはおまえの足りない頭では100万年かけても無理。
早く死ね
343:デフォルトの名無しさん
09/09/14 09:02:35
>>335
ようは文字列処理のちょっとむずい版なんだよ・・・!!
色々専門用語が飛び交ってるけど、そんなん理解せずともLisp程度は作れる
その本は多分、手続き型言語を作るための本だろ
Lispと手続き型言語は全然作り方違うんだ
Lisp程度を作る目標ならその本多分いらない 気合いでやるしかない
344:デフォルトの名無しさん
09/09/14 09:05:16
そういうことを言うなら機械語くらい理解しないとね
機械語を理解していれば、高級言語なんてまさにその「ツール」なのが分かるよ
345:ちんこ ◆GbXlaaQNk.
09/09/14 09:06:52
だからお前ら、しょぼいんだよ。
この数レスで、おれとお前らの間には学ぶということへの意識が違うことがはっきりした。
346:デフォルトの名無しさん
09/09/14 09:09:52
またそうやってまともに対話せずに逃げてプライドを守るんだね
347:デフォルトの名無しさん
09/09/14 09:11:12
>>345
先ず、自分の発見・発明で作り上げて、
それから学び直すというのが王道ではないかな。
348:デフォルトの名無しさん
09/09/14 09:13:15
1レスでお前より遙かに知識も経験もある奴がゴロゴロいるのもはっきりしてるけどな
349:デフォルトの名無しさん
09/09/14 09:15:19
> 918 名前:デフォルトの名無しさん[sage] 投稿日:2009/09/14(月) 04:16:34
> 火元の人
> やり方が理解できない質問者
> 俺に分からないならこのスレにも理解できる奴いないんじゃね、とか思っていて、
> それが態度にも滲み出ている
>
> 煽る人
> 分かってるつもりだけど分かってないで煽り続ける
> こいつを見た火元は「やっぱり分かってる奴いないんじゃないか」と思いこむ
>
> 住人タイプA
> 一目で分かるがお前の態度が気に入らないしコード示すのマンドクセ
> つーかこの説明で分かれボユゲ
>
> 住人タイプB
> みんな何言ってんだかわかんね
まさにこのケース
350:ちんこ ◆GbXlaaQNk.
09/09/14 09:18:23
>>347
おれは常に逆で考えてる。
テレビを使うのにも説明書を逐一読んでからじゃないと触れない。
351:デフォルトの名無しさん
09/09/14 09:19:12
説明書でひと味違う気分になってられるのはユーザーだけだな
352:デフォルトの名無しさん
09/09/14 09:22:29
技術屋の話とか聞くと凄い人いるよね。
何でもかんでも分解しまくってましたとか、結構ちゃんと直せましたとか。
353:デフォルトの名無しさん
09/09/14 09:23:29
俺はコンパイラは作ったこと無いが、お前のやり方は絶対効率悪いと思うぜ。
俺も昔はお前みたいな性格で全然先に進めない奴だったが。
教科書なんて無視して自己流でやるようになったら何もかも上手く行くことに気付いた。
354:デフォルトの名無しさん
09/09/14 09:23:38
動くよりもまず考えるタイプか
355:デフォルトの名無しさん
09/09/14 09:25:31
NFAやDFA程度で何をそんなに悩んでるんだ?
難しく考えすぎてないか?
356:デフォルトの名無しさん
09/09/14 09:27:23
お前ら親切だな
耳の痛い意見は綺麗に読み飛ばすタイプだから忠告しても無駄だろ…
357:デフォルトの名無しさん
09/09/14 09:28:03
その辺で引っ掛るなら先にIntroduction to Theory of Computationとか
Introduction to Automata Theory, Languages, and Computationの
正規言語とオートマトン関連の章に目を通した方がいいんじゃないのかなぁ
NFA to DFAをより詳しく理解するならpowerset constructionの証明を追うとかさ
概要だけ学びたいというならそれこそbison+flexでおkとかになるし
358:デフォルトの名無しさん
09/09/14 09:29:10
面白いよ面白いよ
俺は自分よりも学歴の高い奴がアルゴリズムで悩んでるのをみるのが楽しくてしょうがないんだ
あれ?www 君こんなに学歴高いのにこんなことも出来ないの?プゲラッチョw
359:デフォルトの名無しさん
09/09/14 09:47:39
どうでもいいけど今日は平日じゃねーか
360:デフォルトの名無しさん
09/09/14 09:50:14
一部のIT屋は暇な時はアホみたいに暇だからなw
361:デフォルトの名無しさん
09/09/14 09:51:23
暇にあかせてデバイスドライバ作っちゃったりもしますね。
362:sage
09/09/14 10:01:39
ちんこがドラゴンブックをきちんと読もうとしてるのは評価できる。
納得いくようにやればいいじゃないか。
上の方にも書いたけど、俺はちんこに反論しようとして、ずいぶん勉強になってる。
363:デフォルトの名無しさん
09/09/14 10:03:49
無駄に頑張って結局コケるのを見て楽しみたいから、なるべく長く頑張って欲しい
とは思うよ
絶対コケるし
364:デフォルトの名無しさん
09/09/14 10:43:18
かみおぶじぇくとさま・・・
365:ちんこ ◆GbXlaaQNk.
09/09/14 11:50:08
>>354
そう。動くよりまず考える。
場合によっては、後で学ぶべき定理とかも全部自分で考えてしまってる時がある。
面白いと思ったらどんどん掘り下げた方がいい。
ものを動かすことは誰でも出来る。
だけど、ものを作ることは誰にでも出来ることではない。
おれはものを作り出さなければいけないという意識があるし、使うだけの人間は愚かだと思っている。
お前らの発想は専門学校的な発想。
いわゆる浅知恵。
そんな人間は使い物にならない。
ただ存在するものをくっつけて出来ましたというのをプログラミングだと思ってるやつらは、あまり価値がない。
それを開発者と言っているのであれば、それはおれの定義とは違う。
366:デフォルトの名無しさん
09/09/14 12:09:02
>>339
いくらでも歯車の再発明をすればいいさ。
いろんなことが学べるだろう。
367:デフォルトの名無しさん
09/09/14 12:43:33
お前のその程度の発想は既に通過済みでないとスタート地点にすら立てない
っつー世界があってな
まぁお前には思いも寄らないだろうし想像も付かないだろうし言っても納得も
しないだろうし、せいぜい頑張って空回りしてろよ
いずれ自身の低能に気付いて黙って消え去るんだろうがな
ああ、あと、麻布だっけ?
俺の時代だと麻布は明らかに二番手グループだったけど、今は周囲を見下せる
くらいの一番手グループになれたのか?
368:デフォルトの名無しさん
09/09/14 12:58:52
>>367
日比谷・西の時代の人?
369:デフォルトの名無しさん
09/09/14 12:59:13
紙より痛い人がキタ
370:デフォルトの名無しさん
09/09/14 13:11:00
GoogleでコーディングするんだったらC/C++とPythonも必須だから勉強しろ
371:デフォルトの名無しさん
09/09/14 13:13:17
紙にgoogleは無理、才能以前に始めるのが遅すぎだから
372:デフォルトの名無しさん
09/09/14 13:15:38
才能も無いだろ
373:デフォルトの名無しさん
09/09/14 13:19:55
それは周知の事実だからあえて言及しなかった
374:デフォルトの名無しさん
09/09/14 14:51:14
ちんこタイプの人間が言語を作る前にJavaやSchemeに手を出すとは片腹痛い
素直に既存のパーサ使え、後に自前のパーサ作るにしても
その際に参考になることが既存のものには沢山あるはずだ
375:デフォルトの名無しさん
09/09/14 15:10:57
英語が使えるんなら、こんなとこじゃなく英語圏のコミュニティで情報収集しながら
GCCのソースでも読み通せば、初心者向けの本を必死に詰め込むより遙かにいいと
思うけど
まぁCも機械語も一生読みたくないならどうしようもないけど、Cや機械語程度は半年
くらい遊んでれば十分使いこなせるくらいじゃないと、Googleどころか国内のそこそこ
のところでさえ相手にされないよ
376:デフォルトの名無しさん
09/09/14 15:26:12
犬の17Kのアセンブラ。wwww
377:デフォルトの名無しさん
09/09/14 15:43:04
>>365
認めたなwww
俺とは何から何まで真逆過ぎて面白い
なのに思考だけは似ているのがさらに面白い
俺は、行き詰るところまで自己流でやって、無理だったら本に頼ろうと思ってたけど
本とか見ないで作れてしまったから、そういう本を読みにいくことはこれから先もあんまり無い
自分のやり方が合ってるかどうかの答え合わせの為にみる程度
ていうか自己流で作らずにこんな難しい本を真正面から読んでいって作れる奴が
いるのかなーって疑問を抱くレベル。
だからこそチン子には、コンパイラ理論を理解するだけじゃなくて
実際に何か作ってほしいと思うんだ
理論理解してる奴はいっぱいいるんだろうけど実際作れる奴はそんなに多くないと思う
はじめて作るんだったらLispで一週間、 手続き型言語だったら1ヶ月くらいかかるとおもわれwがんばれw
378:デフォルトの名無しさん
09/09/14 15:44:33
> 自分のやり方が合ってるかどうかの答え合わせの為にみる程度
まさにそれだな
で、たまに「ああ、こういうやり方もあんのね」ってのが出てきて、面白いから
取り入れたりする
379:デフォルトの名無しさん
09/09/14 16:06:36
正直、ちんこにはがんばってほしい。
ところで、みんなが言っていることを、ちんこにわかりやすく書くと:
「既存のものを使わずにコンパイラを作ります」
↓
「ICを使わずにCPUを作ります」
「タイヤを使わずに車を作ります」
「本を読んだけどプログラミングの原理がわからない」
↓
「フェーザダイヤグラムは描けるようになったけどデジタル回路がわからない」
「エンジンの回転は取り出せたけど地面への伝え方がわからない」
こんな感じ?
380:デフォルトの名無しさん
09/09/14 16:07:08
誰かが設定して答えがある問題にしか取り組めないんじゃ
自分で考えてるいってもね。
だれも考え付かないことをやらない限り、
だれも認めてくれないよ?
ああ自分が認めりゃそれでいいか。
ちんこだもんな。
オナニーしてりゃ満足だな。
381:デフォルトの名無しさん
09/09/14 16:35:09
>>379
違うだろ
まぁ、別に既存のものを使わずに作っても構わんと思ってる俺は「みんな」には
入らないだろうから、当事者がどう思ってるかは分からんけどな
俺はバカなちんこが挫折するのを待ってるだけの野次馬だし
382:デフォルトの名無しさん
09/09/14 19:35:39
lazy Kという言語がすごいです。
手続き型でいうところのBrain F*ckに対応する関数型言語です。
URLリンク(ja.wikipedia.org)
「数値をチャーチ数で表現する」といえば、わかる人には凄さがわかると思いますw
以下はエラトステネスのふるいで素数を出力するサンプルコード(一部抜粋)
K
(SII(S(K(S(S(K(SII(S(S(KS)(S(K(S(KS)))(S(K(S(S(KS)(SS(S(S(KS)K))(KK)))))
(S(S(KS)(S(KK)(S(KS)(S(S(KS)(S(KK)(S(KS)(S(S(KS)(S(KK)(SII)))
(K(SI(KK)))))))(K(S(K(S(S(KS)(S(K(SI))(S(KK)(S(K(S(S(KS)K)(S(S(KS)K)I)
(S(SII)I(S(S(KS)K)I)(S(S(KS)K)))))(SI(K(KI)))))))))(S(KK)K)))))))(K(S(KK)
(S(SI(K(S(S(S(S(SSK(SI(K(KI))))(K(S(S(KS)K)I(S(S(KS)K)(S(S(KS)K)I))
(S(K(S(SI(K(KI)))))K)(KK))))(KK))(S(S(KS)(S(K(SI))(S(KK)(S(K(S(S(KS)K)))
(SI(KK))))))(K(K(KI)))))(S(S(KS)(S(K(SI))(SS(SI)(KK))))(S(KK)
383:デフォルトの名無しさん
09/09/14 19:37:49
最近、自分は副作用がない方が美しいと感じています。
Haskellのモナドは難しく、まだまだ理解できないため
Concurrent Cleanを勉強することにしました。
どなたか使っている方はいますか?
384:デフォルトの名無しさん
09/09/14 19:55:14
>>382
たて読みできないだけど?
385:デフォルトの名無しさん
09/09/14 20:48:12
実践する力がなければ、それを支える(はずだった)基礎の知識なんて無駄でしょ。
基礎なしに実践に走れば痛い目にあうのは当然だけど、実践なしに基礎だけ身に
つけても、基礎をどう応用すればいいか分からず、無駄に終わるでしょ。
基礎なしに実践に走り、どういう基礎が足りなかったというフィードバックを
もとに、必要な基礎知識を学べばいい。
これを繰り返していれば、何を事前に学んでおくべきかが分かるようになる。
これは実践の経験なしにはありえないこと。
この分野はトライアンドエラーが一番だと、私は思うですよ。
386:デフォルトの名無しさん
09/09/14 21:38:12
ちんこは5年、10年後に
「うおおおおお!若気の至りいいいいいい!恥ずかしいいいいいいいいいい!!!」
とか言うんだろうなw
まずはCでLisp作ってみれ
ごちゃごちゃ言い訳しないでさ
387:デフォルトの名無しさん
09/09/14 22:38:19
haskellに興味があるならwrite yourself a scheme in 48 hoursも手軽でいいぞ
388:デフォルトの名無しさん
09/09/15 00:07:33
かみおぶじぇくと日記が俺には読めない
いやきっと世界中のどんな技術者に読ましても読めないと確信を持って言える
ただでさえ情報技術は複雑なのに
かみおぶじぇくと変換が施されるとおそろしいほど難解になる
389:ちんこ ◆GbXlaaQNk.
09/09/15 01:16:32
おれの考える、「学ぶ」ということと、一般に考えられてるそれには隔たりがあることがはっきりしている。
それどころか、京大生一般とおれにも相当な隔たりがある。
安心して欲しい。京大生の多くは、「学ぶ」ということについて君たちと同じ考え方を持っている。
しかし、おれはそれではダメだという考えを持っている。
これについて、これらは天才と凡人の差なのだという考えを持っている。
もちろんおれが天才だ。
よって、おれは君たちが大嫌いだ。
なぜならば、おれは凡人が嫌いだからだ。
だから、もうおれのブログを見に来ないでくれ。
じゃあね。
君たちは、一生、「なぜ」と考えることを楽しむことは出来ない。
390:デフォルトの名無しさん
09/09/15 01:39:25
男は黙ってアセンブラ
CPUの動きを1クロック単位で制御できるんだぜ?
これを究極の言語と呼ばずして何と呼ぶ
391:デフォルトの名無しさん
09/09/15 01:53:32
たしかに考える事は面白いし大事だ
が、考えるだけでしっかり手を動かさないなら意味が無いぞ
それとJavaなんかで作っててもなんにもならん
むしろ自分でJavaを作っちまうぐらいの気合を見せてみれ
392:デフォルトの名無しさん
09/09/15 01:56:20
学びて思わざれば則ち罔し、思いて学ばざれば則ち殆し。
学びて時にこれを習う、亦た説ばしからずや。
393:デフォルトの名無しさん
09/09/15 02:37:03
>>380
> 誰かが設定して答えがある問題にしか取り組めないんじゃ
> 自分で考えてるいってもね。
>
> だれも考え付かないことをやらない限り、
> だれも認めてくれないよ?
>
> ああ自分が認めりゃそれでいいか。
> ちんこだもんな。
> オナニーしてりゃ満足だな。
394:デフォルトの名無しさん
09/09/15 02:45:10
コンピュータはそんなに進化してない
誰でも考え付くレベルの問題はそこらじゅうに転がってる
なのにそれを修正できる技術者がいない
力持ってる奴が、大量の時間を金になるかも分からないプログラムの作成に割くか、
誰も考え付かないような手法で効率的にプログラム作るかしないといけない
395:デフォルトの名無しさん
09/09/15 03:24:43
コンパイラ作ることにハマった奴は永久にコンパイラ作り続けるだけだからなぁ
基礎っつうか別分野なんだよ
396:デフォルトの名無しさん
09/09/15 05:21:26
コンパイラ?
機械語翻訳までなら、ただの作業ゲーなんだが
お前にゃそれさえ、
つくれやしないよ
プログラミングは学ぶとか勉強とかそういうんじゃない
現実逃避にやるもの
397:デフォルトの名無しさん
09/09/15 05:41:06
おまいら暇なんだなw
398:デフォルトの名無しさん
09/09/15 06:04:12
自宅待機・・・
399:デフォルトの名無しさん
09/09/15 06:32:20
>>396
酷い文章だな。
一行一行が何の脈絡も無いw
こんなんだから神オブジェクトに馬鹿にされるんだよ
400:デフォルトの名無しさん
09/09/15 08:23:35
今日も一日自宅警備よろしくお願いします!
401:ぅゅ ◆e6.oHu1j.o
09/09/15 08:33:51
400げt!!
402:ぅゅ ◆e6.oHu1j.o
09/09/15 09:15:50
コンパイラwwwww
コンパイラ・コンパイラwwww
コンパイラ・コンパイラ・こんぱいRwwwwwwwwwwwwwwwwwwwwwww
403:デフォルトの名無しさん
09/09/15 09:40:29
>>395
実際のところ、そうなんだよね。
コンパイラとか言語を作るのも、プログラミングの1専門分野でしかない。
404:デフォルトの名無しさん
09/09/15 09:57:45
ほんとはコンパイラ作れるぐらいの知識でDSLフレームワークを作ってそれで高生産性を保ってアプリを開発するのが吉。
405:デフォルトの名無しさん
09/09/15 10:02:34
かつて効率的なプログラムを作るために必要だった事が
いまは効率的にプログラムを作るためにはあまり必要とされていない
406:デフォルトの名無しさん
09/09/15 10:09:57
>>380
> 誰かが設定して答えがある問題にしか取り組めないんじゃ
> 自分で考えてるいってもね。
>
> だれも考え付かないことをやらない限り、
> だれも認めてくれないよ?
>
> ああ自分が認めりゃそれでいいか。
> ちんこだもんな。
> オナニーしてりゃ満足だな。
407:デフォルトの名無しさん
09/09/15 10:21:49
もう奴のことはほっとけよ
408:デフォルトの名無しさん
09/09/15 10:52:11
放置推奨
409:デフォルトの名無しさん
09/09/15 11:06:55
ちんこがいるとスレが盛り上がるのも事実。
前スレは、ちんこ登場まで1年10ヶ月かけて500レス、
ちんこ登場後は20日で500レス。
410:デフォルトの名無しさん
09/09/15 11:09:37
早けりゃいいってもんじゃない。
411:デフォルトの名無しさん
09/09/15 11:48:17
スレの趣旨が関係なさすぎるよ
412:デフォルトの名無しさん
09/09/15 12:10:00
ちんこと掛けまして、早過ぎると解く、そのこころは
413:デフォルトの名無しさん
09/09/15 12:39:09
ジャバジャバ出るでソウロウ
414:デフォルトの名無しさん
09/09/16 05:50:12
38歳なのに一日2回おなぬーしてる自分はなにかやばいのか。
415:デフォルトの名無しさん
09/09/16 05:53:00
死ね
416:デフォルトの名無しさん
09/09/16 06:16:02
ちんこがJavaがカスとかギャーギャー騒いでいるな。
奴を見ればわかるように言語が汚いから使わないとか言ってる奴は結局何も作れず、永久に三流のままだろう。
もはやこのスレ自体意味が無い
417:デフォルトの名無しさん
09/09/16 08:52:56
収量?
418:デフォルトの名無しさん
09/09/16 09:34:50
あいつが三流てw
じゃあお前らは四流以下だな
天才とまでは行かないが、平均よりは上の人間だよ
419:デフォルトの名無しさん
09/09/16 09:41:21
以降釣れなくて悩む>>418の試行錯誤でお送り致します
420:デフォルトの名無しさん
09/09/16 10:02:12
俺は奴を前のblogの頃から観察しているが、あいつはもう一年くらい同じことを言い続けている。
情報可視化ソフトだかを作ると言ってるが、いつもJavaやRubyが完璧じゃないと言って停滞している。
421:デフォルトの名無しさん
09/09/16 10:15:58
Javaマンセーなちんこに対して、俺は前スレの900で
「Javaは可読性や開発効率が他の言語より劣っている」
と指摘していたが、ちんこには理解できなかった。
今やそのちんこが「Javaはカス」と言っている。
ちんこがもし天才だったとしても、
「ほげ言語のパラドックス」からは抜けられなかったということだ。
422:デフォルトの名無しさん
09/09/16 10:49:24
Paul Grahamは「委員会の作る言語はカス」と指摘していたが、理解できますか?
423:421
09/09/16 11:44:24
ブログに返事が書かれているな…。
Javaは確かに型がうざい。
しかし、型はJavaのどこにでも現れて、可読性を下げ、開発効率を落とす。
より美しいものを見た者だけが、より醜いものを判別できる。
Javaが美しいと思うなら、それは「より美しい言語」を見る経験が足りないんだ。
ところで「データ構造を構造とデータに分解し、それを立体として見る」というのは
素晴らしい考え方だと思う。ぜひ研究を進めて欲しい。
424:デフォルトの名無しさん
09/09/16 13:00:38
型システムは型システムで需要はあるよ。
425:デフォルトの名無しさん
09/09/16 14:11:01
型レベルプログラミングとかすごいよな
自分には訳分からない所が多いけど
426:ぅゅ ◆e6.oHu1j.o
09/09/16 15:33:09
1 超難しい言語を使いこなし、様々なソフトウェアを作り上げる
2 超難しい言語を使いこなせないが、使いこなせてる気になってしまってるせいでソフトウェアはあまり効率的に作れてない
3 超難しい言語は使いこなせないと自覚し、難しい言語で様々なソフトを作り上げる
4 超難しい言語も難しい言語も使いこなせないが、簡単な言語を使いこなし、技術的には高くないけれど、けっこー便利なフリーソフトを作る
C++がカスといってる奴が4
JAVAがカスといってる奴が2
心が年老いて向上心なくなってる奴が3
ただのプログラミングには興味ありません。な奴が1
2~4で反論あったら訂正しやがれカス共
427:デフォルトの名無しさん
09/09/16 15:44:32
1のような人は自然言語でプログラミングできるはず。
それができないということは・・・
428:デフォルトの名無しさん
09/09/16 15:57:36
難しい言語を使いこなせたら何の意味があるの?
例えばC++を使いこなせたら得られるものって何?
「このアプリはC++で作られています」って書いたら使ってもらえるの?
しかし、なぜかマの中ではC++ユーザーが神聖視されている。
もう、いい加減このマの醜いヒエラルキーが嫌になってきた。
C++の価値なんてお前らマの中にしか存在しない。
C++を極めたところで閉じた世界のサル山の大将にしかなれない。
俺は難しい言語を勉強する、などというという不毛なことはやめて良いアプリを作る勉強をするよ。
429:デフォルトの名無しさん
09/09/16 16:06:23
神聖視されてるのはlispとかアセンブラとかその辺じゃね?
マの中でC++が崇められてるのなんて聞いたことがない
大抵の言語より依存ライブラリとか少なくて、さらに軽いことが多いから
ユーザからの評価に多少響くというぐらいはあるかもしれんけど
430:デフォルトの名無しさん
09/09/16 17:04:39
どこの職場でも結局そうだな。
こけおどしが幅を利かせてる。
>>428みたいなフレッシュな野郎が俺は好きだね。
○○の勉強は必須、SICPは必読、
おしゃれなスイーツがウンタラ、
エディタはemacsじゃなきゃ!
市ね!
見栄と価値とを分離しろ!!
431:421
09/09/16 17:36:42
「Javaはカス」と言ったけど、
俺も良いアプリを作る勉強をするよ。
432:デフォルトの名無しさん
09/09/16 17:39:36
俺もJavaとかC++とかカスって言えるくらいになりたいよほんと
433:デフォルトの名無しさん
09/09/16 21:49:39
>>426
あえてスレタイ無視の視点にするの?
じゃ、「コンパイル遅いからC++はカス」
434:デフォルトの名無しさん
09/09/17 01:15:51
>>424
型システムの重要性はよくわかるけど、Java はその表現が冗長なんだよ。
SML や Haskell とかの型推論がよく整備されている言語では、静的型付けで
ありながら、型宣言の量をおさえることができる。そういう意味で Java の型
はうざいってことかと。
435:デフォルトの名無しさん
09/09/17 01:44:05
大規模プロジェクトならJavaこそ一番いいんだけどね。
436:デフォルトの名無しさん
09/09/17 03:14:39
>>428
C++を使いこなすような奴は、
おそろしいほどの時間をかけてきた奴なんで
必然的に様々なことが出来るようになってる
そのせいでC++使い=神っていう比率が高く
神聖視されてるのかと
437:デフォルトの名無しさん
09/09/17 03:17:12
やっぱ最強はCっしょ。
String型が使えないのがくやしいけどね
438:デフォルトの名無しさん
09/09/17 04:48:05
C++が難しいのではない。 汎用的な部品が少くアプリ作るのが困難だけ。
言語としては、基本部分はC#と同程度だろう。
よりアプリ作るのが簡単な、C++/CLIはC++を含む拡張だから、こっちの方が難しいと言える。
別の見方でC++/CLIとC#とVBは同等のアプリが開発できるはずで同難度も同じと考えていい。
439:デフォルトの名無しさん
09/09/17 04:52:39
C/C++が難しいと言うやつにとって、アセンブラ、機械語が一番難しいだろう。
右は、左で開発される。 機械語 → アセンブラ → C/C++ → .NET(C++/CLI、C#)
一方で、使える機能、部品の多さで難易度を判定したら
標準化されていて、部品が少ないC/C++が一番易しい。
機械語は方言がある。.NETは方言はないが、使える機能が豊富すぎる。
440:デフォルトの名無しさん
09/09/17 05:35:57
>>437
言えてるわ
俺はSTLとか使ってると、楽をしようとして失敗することたまにある
それにcharで済ませばいい所でもstring使うのは速度が若干遅くなるはずだ
端から何ひとつそろってなどいないCは
自分で全部作らなきゃいけないていう清々しい覚悟ができる・・・w
441:デフォルトの名無しさん
09/09/17 06:14:56
> 右は、左で開発される。 機械語 → アセンブラ → C/C++ → .NET(C++/CLI、C#)
機械語からアセンブラブートストラップするなんて
野蛮なことやってたのは 1950 年代頃までだろw
442:デフォルトの名無しさん
09/09/17 06:33:48
今はCが左端になってるな
たまにアセンブリ言語が顔覗かせてるぐらい
この観点から言うとCとC++の間にも→があるように思える
443:デフォルトの名無しさん
09/09/17 08:42:57
C言語で、Cコンパイラやアセンブラ作ってるって事か。
そしたら、一番簡単なのは、C言語でいいか。
マシンごとに命令ちがないし、命令は少ないので
444:デフォルトの名無しさん
09/09/17 10:48:54
>>439
俺はCより抽象度の高い言語から入った身だが
C言語を最初にやった時には全く解らなかった。
だけど、機械語をやったらスッと理解できるようになった。
高級アセンブラって言う表現はすごく的を得てる表現だと思う。
どちらのほうが難しいとかじゃなくて、難しさの方向性が違うんだと思う。
C言語は機械語の難しさと、高級言語の難しさを
両方とも少しずつ持ってる言語だと思う。
445:デフォルトの名無しさん
09/09/17 10:56:11
言語が難しいんじゃなくて扱う対象が難しい
そこの所勘違いしないようにな
446:デフォルトの名無しさん
09/09/17 11:04:26
PHP、C#、Javaなどと比べて、C/C++が理解しにくいなんて事はない。
難しいのは、利用される頻度の高いライブラリ、関数などが付いて無いだけだろ。
かなり基本的なものしか付いてない。
PHP、C#、Javaから便利な関数を取り除いたら、C言語と同等の難易度だろ。
447:デフォルトの名無しさん
09/09/17 11:04:52
HSPいいよね
448:デフォルトの名無しさん
09/09/17 11:13:05
いややっぱり言語としてのC++は理解しにくいと思うぞ
言語仕様の大きさ的に考えて
449:デフォルトの名無しさん
09/09/17 11:15:18
でもC++ってわかりはじめたら急に面白くなりそう
450:デフォルトの名無しさん
09/09/17 11:17:00
言語として理解する必要なんてどこにもないけどな
451:デフォルトの名無しさん
09/09/17 11:34:07
日本語言語を使うのに、言語学のプロである必要は無い。
文法、法則を全て理解する必要は無い。
452:デフォルトの名無しさん
09/09/17 12:28:08
C++は包み隠さず、オープンにしている部分が難しい。
他言語などは、ユーザーに見せない部分が多い。
たとえば、C++のクラス、テンプレートは
STLを実現するために完成された物。
C言語 + STL + クラス くらいを提供すれば
機能的には良いところだけど、丸出しにしている。
453:デフォルトの名無しさん
09/09/17 13:55:32
>>452
俺はC++全部覚えたつもりがまだ浅いからかもしれないけど
C++が包み隠してない部分っていうのが分からない
どの機能のこと?
テンプレートかなぁって思ったけどC#にもあるみたいだ。
454:デフォルトの名無しさん
09/09/17 14:04:42
厳密には違うだろうけど、アセンブラ、機械語もあるだろうけど。
C/C++が提供して機能は、C/C++だけでほぼ同じパフォーマンスで実現できるってこと。
たとえば、HSPの機能は、HSPだけでは実現できないでしょ。
提供されている機能をそのまま使うのは除いて。
455:デフォルトの名無しさん
09/09/17 14:10:15
C#についても同じで、.NETのコア部分は、C#では実現できない可能性があるとおもう。
C#で書かれていたらスマン。