このスレッドは天才チンパンジー「アイちゃん」が 言語訓練のために立てたものです。 アイと研究員とのやり取りに利用するスレッドなので、 関係者以外は書きこまないで下さい。 京都大学霊長類研究所
988って動くの?
並列処理が遅いのですが?
勢いありすぎ
で、クロージャとかどうでもいいんだけど、ゴルーチンでなんか面白いことできないの?
新しい言語だからって、並列処理が早くなるとは思えないのですが
>>11 それはそうだな。
最終的にはどっちも、機械語になるわけで、
同じ機械語が生成されれば、どっちも速度は同じ。
並列処理の記述が楽になるとか、CPU 数に合わせて並列度を自動で調整してくれるとか、 アトミック操作を広範に利用しているとか、トランザクションメモリを実装しているとか、 ウェイトフリーアルゴリズムを使ってるとか、そういうの無いの?
カーネルのお仕事のような気がする
全然ユーザランドの範囲だよ
>>14 > 並列処理の記述が楽になる
これはMPIとかよりは楽なんじゃね
MPI_Send()とかMPI_Recv()とか書かずに
<- とかなわけだから
残りはシラネ。VMじゃないからランタイムが頑張ってるんだろうけど実装詳細?
ただのスレッドではなくコルーチンとのあわせ技らしいけどね
並列処理が遅いのですが
そろそろWindowsを卒業してOSを変えようと思うけどどのOSがいいかな?
21 :
デフォルトの名無しさん :2009/11/14(土) 18:46:27
もうpart2か。けっこう流れ速いな。 みんなそれだけ期待と不安と萌えと萎えが入り混じってグチョグチョなんだな。
23 :
デフォルトの名無しさん :2009/11/14(土) 18:51:19
VS2010とC#4、.net4ってデスクトップに再注目を促すくらいのリッチさだよな 対比がおもしろい
24 :
デフォルトの名無しさん :2009/11/14(土) 18:53:12
FreeBSDは日本語どうなりました? 2009年現在でも相変わらずkonとかでcannnaとかなんですか?
しりません。誰か使っている人探して聞いてください。
だれかObjective-C 2.0も思い出してあげてね
ソラリスってどうなんですか? 日本だとあまり日本語の情報がないんですけど…ダメなんですか?
Objective-Cは今はiPhoneの影響で注目されてるけど Appleが横暴な性格のままなら そのうちデベロッパーに嫌われてiPhoneがAndroidに市場くわれて Obejective-Cは忘れ去られたものになりそうだ
注目されてるか? なんでこんな言語使わないといけないんだよ!って 文句言われながら使われている気がするw
今迄からすれば注目されてるじゃん それにObjective-Cは言語の設計もいいし まぁAppleでしか使い道ないような言語を使う気ないが
アップルの傲慢は良く分かるが、現実的にはシステムとしてはobjcが全てにおいて万能だと思う。
.NET APIぐらいの機能がある Objective-Cがあれば最強
しかし Go はGCを専らにしてるけど ObjC の GC って使ってる奴いるのかね?
PSP Goと同じ運命と辿る
PSP Goは個人的にいいと思うんだけどね Discないからロードもはやそうだし、軽いうえに電力消費も少ない ゲーム好きだったら絶対買ってる
string周り調べてるけど、Runeが良くわからん。 魔法を実装してるのか?定義はどこだ。
PSP Goは既存の社会基盤へ与える影響が甚大だから忌み嫌われているんだろ Google Book Searchと一緒だな
むかしのFreeBSDのマルチバイトサポートがmbruneとかいう名前だった 今はシラネ
>>41 man 3 mbruneで出てきた。なるほどね。
objcとかjavaとか、windows環境じゃ関係ないけどな
>>44 ガチで?
中二な俺は即フォントインストだ
GCあってポインタがないのに 「Cのようにシステム記述に適した」プログラミング言語なのか? どちらも扱えるDのが柔軟でマシな気がするけど
Dを使ってシステム記述してるって基地外プロジェクトなんかあるの?w
ポインタなんてなくてもシステム記述はできるしOSも作れる
Windowsオンリーだとみんな怒り出すのにLinuxオンリーだと誰も何も言わない不思議
>>47 細かい用語法を抜きにすればGoにもポインタはあるよ
ただポインタ演算 p++ みたいなのは出来ない
そのポインタはアクセスできるリミットを知ってるから
バッファオーバーフローも起こらない(たぶん)
Max OS Xも対応してるよ それに文句いってる人もいるしね
モナド作れないぞなんとかしろ
GCなしのnew deleteなことはできる?
もう新言語なんてまともなIDEついてなきゃ試す気にもなれない。 PowerShellですら高機能なエディタついてんのに。
俺は! イデよりも! りぷるが欲しい!
そろそろFizzBuzzは解けたかね
59 :
デフォルトの名無しさん :2009/11/14(土) 20:51:51
馬鹿避けだろ emacsのモードは付いてるんだから問題ない windows無視も同じ戦略
61 :
デフォルトの名無しさん :2009/11/14(土) 20:54:53
悪いけどemacsとかviとか死ねよって感じ。 現代的なIDE使ったことあるなら当然そう感じるだろうね。 emacsで10万行とかどこが生産的なんだかw あり得んだろ。
VIMはちょっとした作業するときに役に立つけど Emacsはないな
ま、ema糞対応が一番コストが低いからな。 やる気のない言語はそれだけに対応して終わる。
64 :
デフォルトの名無しさん :2009/11/14(土) 21:00:40
馬鹿避けなんだってばw ide欲しいよおおおなんてのは要らないだろ 初期は特にね
>>60 現代のMINIXって感じか…
大昔と違って今じゃ書籍や技法(さらにGCとか手厚い言語サポート)が確立してるからそんなに凄いってほどじゃない。
ちゃんと動くものを作ったというヤマト根性は認めるが。
>>60 Linuxと違って時代の要請があったわけでもUnix互換でもないし
完全に新しいOSだから開発者も集まらないし
厳しいわな
完全に独立してるってのがいいとは思うよ。 とくにlinuxとかストールマンとか宗教臭いしがらみがないよね。 今ならPS3とかpspで動くようにハックすると完全にマイ・システムの完成(ソフト的なものは全てjvmにまかせて)になるんじゃないか? 進路としてはvmwareみたいなアプローチで仮想マシンというより汎用仮想OS(カーネル部)ってところには需要があるかも。 OS作成とかまったく知らないけど、そういう活用ならすぐ思い浮かぶ。
70 :
デフォルトの名無しさん :2009/11/14(土) 21:15:33
>>56 言語には新機能はライブラリに回すわけでいらな新機能なんかいらないし、まして高機能エディタなんてまったくいらないと思うよ。
>>56 俺もPowerShell2.0使いたいんだけどVistaはいつ対応してくれるんだろ?
72 :
デフォルトの名無しさん :2009/11/14(土) 21:20:58
対応してんじゃん
>>58 package main
import fmt "fmt"
func main() {
for i := 0; i < 100; i++ {
if i % 3 == 0 && i % 5 == 0 {
fmt.Printf("%2d FizzBuzz\n", i);
} else if i % 3 == 0 {
fmt.Printf("%2d Fizz\n", i);
} else if i % 5 == 0 {
fmt.Printf("%2d Buzz\n", i)
} else {
fmt.Printf("%2d\n", i)
}
}
}
goroutineつかえよ
>>74 言われると思ったw まだよくわかってないけどやってみる
78 :
デフォルトの名無しさん :2009/11/14(土) 21:45:41
IDEがないと新言語触れません
こんなん言うのもあれだけど 翻訳読まにゃダメなひとは 情報少ない新言語なんか使えんだろ
80 :
デフォルトの名無しさん :2009/11/14(土) 21:47:17
81 :
デフォルトの名無しさん :2009/11/14(土) 21:49:55
翻訳が揃っててIDEが対応してて便利なライブラリが揃ってないと新言語触れません
並列処理遅いです 早くなんとかしてください
要望はコミュニティーで出そうぜ でできたばっかなんだし 聞いてもらえる可能性もあるんだし
84 :
デフォルトの名無しさん :2009/11/14(土) 21:57:10
85 :
デフォルトの名無しさん :2009/11/14(土) 22:01:03
IDEのオペレータに堕ちたら終わりだな確かに
86 :
デフォルトの名無しさん :2009/11/14(土) 22:03:39
88 :
デフォルトの名無しさん :2009/11/14(土) 22:06:01
emacs使いになってもide使いの方が給料(報酬)が良かったりする今日この頃
新言語のキーワードはgo++とか亜種のことも考えると func -> functional chan -> channeling と現代風にするべきかと
チャネリング (英: channeling, channelling) とは、常識的な通信手段では情報をやりとりできないような相手(何か高次の存在・神・死者(霊界人)・未来人・宇宙人など)から、特別な能力によって情報を交信すること。
91 :
デフォルトの名無しさん :2009/11/14(土) 22:12:07
未来人って何?w
禁則事項らしいよ
93 :
デフォルトの名無しさん :2009/11/14(土) 22:13:10
94 :
デフォルトの名無しさん :2009/11/14(土) 22:15:02
つうかチャネリングって昔流行語になったよなw 元ネタ覚えてないけど 若いヤツは知らないのか・・・
95 :
デフォルトの名無しさん :2009/11/14(土) 22:15:27
こういうネタについてこれるのか・・・・・(笑)スイーツ
しらんけど「僕の地球を守って」だっけ
チャタリングなら知ってる
いつの間にか2スレ目になってたのか 前スレで何か生産的な会話あったん?
ハードタブが気に入らないんだけど
>>99 生産性を求めるなら2chに来てはならない。
libgoがビルドでこける
生産性も止めるなら 要望が受け入れてもらえるかもしれない公式コミュに行けばいい まぁ大差ないだろうけど
>>104 カスが公式コミュで暴れて生産性が止まるってかwww
暴れてるところを見てみたい
goroutineで0から99まで生成した(する)値を チャンネル経由で一つずつ読んでは出力するコードを書いたんだけど 実行すると何も出力せず単に終了してしまう どこが悪いか教えてちょ package main import fmt "fmt" func genInt(dest chan int) { for i := 0; i < 100; i++ { dest <- i; } } func foo(src chan int) { for { i := <- src; fmt.Printf("%d\n", i); } } func main() { ch := make(chan int); go genInt(ch); go foo(ch); }
>>107 何か出力するより先にmainの終わりに達してしまうからだろ
109 :
デフォルトの名無しさん :2009/11/15(日) 00:46:31
>func genInt(dest chan int) { ファンキーなゲニントはデストちゃんとインドなんですか?
goのコードを一目見てとってもなつかしい感じがした。 C++やJavaにうんざりし、LispやHaskellのほうがすごいと 思っていた自分がはずかしい。これでいいのだ。
でも obj.foo() って書きたい...
誰かも言ってたけど REPL が欲しい
cygwinにインストールするには どのようにすればよいですか?
115 :
107 :2009/11/15(日) 01:29:52
>>108 サンクス。mainの最後にSleep置いたら99まで出力してくれた
fooのgo外すだけでいいんじゃない? 空のforは無限ループかな。fallthroughといいエッチな機能満載だな
>>113-114 javascriptとか
javaappletで
web上で試せる環境
誰か作らないかな
はやくHMDとかコンタクトレンズ型ディスプレイが普及して ディバイスの小型化が進んでほしい
AndLinux って初めて聞いた。coLinux を使ってるのか。 こういう時に Windows しか無い人は色々と大変だな。
どんなOSでもVM上でさっと動かせる時代に何を言ってるんだ
>>120 イチイチ仮想環境を用意するのマンドクセって事じゃないの。
手順がどうとかじゃなくて、普通は余計な事はしたくないもんでしょ。
俺は Mac ユーザだから、こういうマイナー言語は何もしなくても
サポートリストに入ってる事が殆どだけどね。
>>116 go genInt(ch);
// go foo(ch);
foo(ch);
にしてコンパイルして実行したところ出力が
[...]
98
99
throw: all goroutines are asleep - deadlock!
panic PC=0xbfc01ebc
throw+0x46 /home/name/go/src/pkg/runtime/runtime.c:74
[...]
どうやってgoroutineの終了を待てばいいんだろ
うまいパターンがあるのかwaitやjoin相当の機能でもあるのか
>>122 コンパイルしてないけどたぶんこんな感じじゃね
func genInt() <-chan int {
ch := make(chan int);
go func {
for i := 0; i < 100; i++ { ch <- i; }
close(ch);
}();
return ch;
}
func foo(src <-chan int) {
for !closed(src) {
i := <-src;
fmt.Printf("%d\n", i);
}
}
func main() {
foo(genInt());
}
>>122 そりゃdeadlockするよ、fooのループで来ないメッセージを待ち続けてるんだから
チャネルの送信側は送信が終わったらclose(c)、受信側は<-の前にclosed(c)でチェックとかするんじゃないのかな
wait, join相当のものはそれこそチャネルで実現出来るよね
>>123 [main] ch <- 99;
[sub] closed(src);
[main] close(ch);
[sub] <-src;
こういう順番で実行されるとデッドロックするな。
goroutineがファイバーで実装されてるなら起こらないが、スレッドだとこうなる可能性がある。
ファイバーだとしてもチャネルの読み書き以外でコンテキストスイッチが起きると怖いが
手元に何もないから試せないけど
ch <- ... ってデフォでブロックするんじゃなかったっけ?
確かmakeの第二引数に1以上を指定すると非同期になるとか仕様書に書いてあったような
標準ライブラリではイテレータとしてチャネルを
>>123 っぽく使ってた気がするから多分大丈夫かと
そりゃ、closedをチェックしてからrecvするまでに割り込まれたり、 最後の要素をsendしてからcloseするまでに割り込まれたりすると やっかいなことが起きるわな。
既にcloseされたチャネルを読むのは合法なの?
>>121 Windowsでも簡単に試せる環境用意しようか?
おながいしまつ
返り値を複数返せない言語は糞だ
deadlock検出すると例外出すのか かっけーな
言語の歴史 ------------------------ Fortran Lisp C C++ Perl Prolog COBOL Java Python Ruby JavaScript C# PHP Scheme Haskel Erlang Ocaml F# Clojure Scala Noop Go 最近は関数型言語が注目されて、 いままであった関数型言語と 新しい言語をつくってしまえっていう流れがあるな
関数型言語の機能、概念を 手続き型、オブジェクト指向に取り入れだしている。 純粋な関数型言語は人間の思考にあわない。 人間の思考は手続き的。
プログラマーが新しい言語・技術を待ちわびてる 古い言語で業界や職場をしきっているやつらをだしぬいて、体制や地位をひっくりかえせるからな プログラマーの世界は技術次第だから、いつまでも古い技術にしがみついている上司を見限って 一旗あげようという気心がうずまいてる 逆に一定に地位についているやつらはその言語を使い続けるしかない。そこは強みであるが、逆に弱みでもある
99%のレスがマ板かN速で事足りるな 無内容なのになぜか上から目線w
VIPで流行の兆しがあるな
なるほどclose, closed あたりを使うのか
チュートリアル以外のコードも読も
あと
>>123 を試してみた。コンパイルは
// go func {
go func() {
にするだけで通った。実行結果は
$ ./8.out
0
1
[...]
98
99
0 # ママ
$
0 ってなんだろ
genint の closed0 の返り値が 0 で、それを foo が受信して出力してるとしても
>>123 からはそうなるようには読めない・・・
並列処理が遅いのですが
並列処理指向で作られた言語って遅いのばっかだよな Erlangも遅いんじゃなかったか。Scalaくらいだな。
Scalaはめっちゃ速い Goは糞すぎるScalaの半分も出ない フィボナッチ数列計算するのにErlangよりやや速いぐらいだぞw
フィボナッチ数列を生成するgeneratorをgoで書いてみてください
>>143 Cの10%〜20%遅いくらいなら
流石にそれはないんじゃね?
比較に使ったコード貼って
148 :
123 :2009/11/15(日) 13:15:29
>>140 サンクス。
たぶん>125の問題かもしれん。
close済みのchan intを読んだら0が帰ってくるんだろう
C (4) の置き換えを狙ったから、go (5) って、つけたの?
>>149 ありがとう。いま読んだ。
でも、chanから帰ってくる最後の0がsendされた値なのかそうでないかを判別する方法がわからない
そのためのclosed
>>152 closedを見たときにはまだ閉じられてないけど、
その直後にreceiveしたときには既に閉じられているということが起こりうるんだよ。
154 :
デフォルトの名無しさん :2009/11/15(日) 14:30:22
受信した後にさらにclosedを見ればいいんじゃね
>>153 というよりreceiveしないとclosedかどうかわからんということだろう。
feof()と同じ感じじゃないかな。
Close and closed
For a channel c, the predefined function close(c) marks the channel as
unable to accept more values through a send operation. After any
previously sent values have been received, receive operations will
return the zero value for the channel's type. After at least one such
zero value has been received, closed(c) returns true.
>>156 ああ、それそういう意味なのか。ちょっと誤読してた
x, ok := <-ch;
とすれば読めたかどうかがブーリアンでとれるみたいだが、
non-blockingになってしまってなんの意味もない
Windows用コンパイラのバイナリ提供は明日ですか?
コンパイラを移植するのは楽だろうな。 ライブラリの対応がめんどうなだけで
他パッケージのクラスにかってにメソッド追加とかはできないのか
とするとOOPはどうやるつもりなんだろう…
こんなのどうだろ import "fmt" type R struct { value int ; eos bool; } func genInt(start int, stop int, dest chan R) { for i := start; i < stop; i++ { dest <- R{i, false}; } dest <- R{0, true}; } func main() { ch := make(chan R); go genInt(1, 20, ch); for r := <- ch; !r.eos; r = <- ch { fmt.Printf("%d\n", r.value); } }
字面に慣れたら生産性上がりそう?
OOP的な仕組みはあるけど用語がわからん
ファイル分割するときはどうするの? package hoge とかして、使いたいところで import "hoge" ってやればいいだけ?
>>163 そのコード、OOP関係ない。
従来からあるただのCの手続きコードと同じ。
>>162 実装を継承することは出来ない
インターフェイスは共有できる
>>167 ごめん端折りすぎた
>>163 は上でやってたGoroutineの終了を
チャンネルの向こうにいる受信側にどう通知するかって話
>>168 実装の継承、出来ますよ
kwskは仕様書のSelectorの項目に書いてあったはず
型情報の継承は出来ませんが、
かわりにinterfaceを使えばいいことなので、OOPに求められる要素は全て揃っていると思われます
>>169 OOPなのができるとは、計算終了の通知をどうするかじゃなくて、その場合は相互のmessagingを言語としてはどう表現するかですよ。
計算終了ならなにも並列じゃなくwaitでいいわけでして。
OOPは並列計算とかlisp的な考え方とはまったく関係ないんでこの際OOP概念を勉強してみてはどうですか。
Kenがついにスペルミス直したぞ hg log -r3956 -p
>>163 closed()かrangeを使えばいいんでわ
import "fmt"
func genInt(start int, stop int) chan int {
c := make(chan int);
go func() {
for i := start; i < stop; i++ {
c <- i;
}
close(c);
}();
return c;
}
func main() {
c := genInt(1, 20);
for {
i := <-c;
if closed(c) {
break;
}
fmt.Printf("%d\n", i);
}
// もしくわ
for i := range genInt(1, 20) {
fmt.Printf("%d\n", i);
}
}
>>174 ああそうか、
>>123 のように
1. closedか確認する
2. 1でclosedでなければチャンネルから読む
だと、1と2の間にclosedされた場合に問題が起きるけど、
1. ひとつ読む
2. closedか確認して閉じてたらもうrecvせずに抜ける
ならclosedされたチャンネルから0を読み込むようなことが起こらないわけだ
>>124 ,125他で指摘されてたことがようやく飲み込めた。どうもありがとう
OOPすら関係ねーじゃん。 おまえが構造化プログラムを一度も書いたことも無いってのが露見しただけw
OO=クラスだと思ってるアホが暴れてますね
>>176 goを使うには修行が足らん
まずはCからやれ
ニコ動久しぶりに見たけど見るまでの手続き色々面倒なのに変わってるね
GC とクロージャがあって、 OOP が出来て、ネイティブコンパイルできて コンパイル速度が暴速の C だと思えば割と良いもんじゃん。
並列処理が遅くて看板に偽り大有りです 食品なら食品偽装レベル 電化製品なら製造物責任法で書類送検レベルの大問題です
なんで for each にしなかったんだろう
cythonよりpsycoの方が速いんか
クラスが無いからC++系ライブラリをそのまま流用出来ないんですけど
逆に考えるんだ。クラスが無いから恥ずかしくない。 クラスがあるのに流用出来なかったら最悪だろ。
斬新な発想の転換だな。
やっぱ派生クラス100個あったらswitch文とかで100個 new class CXXX(); とかしないとダメなのかな。 簡単に言うとコンストラクタをオーバーライドしたい。
MacOSX で試してるんだが、UniversalBinaryは吐けないのかな?
192 :
デフォルトの名無しさん :2009/11/16(月) 07:48:37
「Emacsは馬鹿避けのためにある」ってホント名言だったなw
193 :
デフォルトの名無しさん :2009/11/16(月) 07:54:49
隔離ソフトwww
visualstudio系はともかくなぜかeclipseと自己同一化してるヤツはなんかひどいの多いな 「車に乗ると性格が変わるヤツ」というか、IDEのパワーと自分のパワーをごっちゃにして威張るw 「新言語を評価する」の類のイレギュラーな事象に対応可能にしておくためにIDE依存度をあまり上げすぎないようにするくらいの知見もなく、 IDEのオペレーション自体は「技術」の範疇じゃなくて、入れれば誰でも使えるアプリの一つでしかないのに
>>191 たぶんGoogle内部的にPPC(笑)だと思われ
10.6的な意味で
でもそれとは別にGoがPPC環境でどれくらいの早さで動くかは興味ある
バックエンドgccのgccgoならその筋の人がいろいろいじればなんとかなりそうだったり?
週末暴れてた人はアク禁喰らったのか?
197 :
デフォルトの名無しさん :2009/11/16(月) 13:25:29
visualstudioとeclipseを区別す理由がいまいち不明だな
>>194 セルシオとかポルシェとか運転したことあってそういうこといってるの?
おれは幾人かの友達が持ってるから運転させてもらったことあるけど。
それと同じで、君は偉そうなことをいっちょまえにいうけどそれぞれのIDEを使いこなせるようになってるわけでもないでしょ。
自分のクルマじゃないトコがかわいくてワロタw
いいね package main import "fmt" func main() { a := 1; f := func() int { return a }; fmt.Println( f() ); a = 2; fmt.Println( f() ); }
>>173 あれはジョークだと思ってたから(間違えるはずがない)
直したことに違和感がw
まるで静的型付けの JavaScript みたいだな これが普及すると嬉しいな 2,000 行未満の小さなプログラムを書くには もってこいの言語だと思う
ネイティブ言語だから実際はあまり普及しないよ。 それにどちらかといえばCと同じく関数型言語の延長で、lispに制御構造をくっつけたような設計だし、並列用途でこの言語をベースとし亜種の言語は出てくるんじゃないか? 組み込み用の小型プログラムやIOのところとかバリバリネイティブなら必要なんだろうな。 x86(x64)は既に大規模だしide(gui)あるし、java,dotnetのvmで会話するって感じなんだろう。 つまりこれからはx86じゃなくてARMなのかなって思う。googleがwebのプラットフォームをどこまで考えてるかによる。
どこから突っ込んでいいか分からんなw
うん
>>195 x86 x64 のユニバーサルは吐きたいと思うのよ
GUIをどうするか悩むよりは、Javaから呼び出して使いたいなぁ・・・
Javaみたいに活躍の場を見つけるまでが大変かもな Javaも最初の発表とは全然違うエンタープライズ分野に居場所を見つけて定着したし
ほんとにそうだね Cの置き換えとか狙ってたら 中の人が中の人だし面白いんだけどなー
evalがあるのがふしぎ
>>212 そりゃマクロでいくらでも作れる<lisp
マクロでどうとかじゃなく、規格上の話だよ
Common LispとりあげてLispには制御構文がたくさんあるとか言われても
>>210 Java は最初から仕事で使える事を強く意識して作られていたから
途中色々あったけど、自ずと道が開けてきた感がある
>>216 ちゃんと理由を言わないと誰も賛同しないよ?
それと、C は関数型言語じゃないから気をつけて
やっぱ、google凄いなぁ。反応が沢山ある。
221 :
214 :2009/11/16(月) 21:35:17
>>216 common lisp の制御構造って、実際的にはマクロで記述されているんじゃないのかな。lisp のマクロって強力だからね。
common lisp を取り上げてlispには制御構文がたくさんあるといわれてもねえ。
無理するなよw
>>214 =
>>205 か?
正直
>それにどちらかといえばCと同じく関数型言語の延長で
が面白すぎて後は目が滑ってしまったw
ここで見栄はっても仕方ないのに
>>221 Lispは史上最強の言語だ。知らないなら勉強する価値はあるよ
ただ、一生仕事で使う事はないだろうからどうでもいいが
そんなことより、Goは規格化しないのかなISO標準とかに
PythonやRubyと違って明らかにGoogle社の所有物な言語って怖くもある
>>225 オープンソースだから所有に関してはRubyとかと大差ないんじゃないか
>>223 ちゃいます。ちっぽけなlispインタープリタなら読んだことあります。
>>228 んー、cond もマクロかいな。前に読んだのは c で書いてあったなあ。
いやね、lisp のプリミティブな制御構造って少ないと思ってるんですよ。ただそれだけ。
Ubuntuのリポジトリに入ったら本気出す
>>229 実際は色々ある事が分かったでしょ。
そもそもマクロで実装されていたところで何の問題も無い訳だし、
おかしな事は何も無い。
232 :
229 :2009/11/16(月) 22:44:33
NTRも悪くないと思う
ライブラリをがんばって欲しいなぁ リッチな標準ライブラリがあるならCでも構わない
そういう意味ではやっぱり GUI かな C でオブジェクト指向するのが嫌で VALA とか作っちゃう様な事が必要なくなれば 嬉しい人はそれなりに多そうだ
>>220 Googleの名前とあの製作陣を見たら、やはり心ときめく
ちょっと親しみ易くした Limbo なんだよな
こんな仕様じゃ大規模なものが作れないという苦情に対して 「設計が悪いから、バベルの塔を作る羽目になってるだけじゃないの?」と ロブ・パイクは答えるんだろうな。 結局、BSDソケット や X をいつまで前提してるんですかという話になる。 Goは Plan9 の入口にすぎんのであって、後者が布教されれば本懐。 Go自体が多機能のてんこ盛りになる「進化」は望んでいないだろう。
Limboオセェし糞言語だったろw
なにかが足りないと思ったらacmeだったか
>>240 Limboっての自体知らなかったけど遅いの?
知ってるだけ偉いと思った。
Microsoft Visual StudioがVisual Goを開発しないと初心者は使わないよ^^; 文系の授業でもあるようなC言語のプログラミングに置き換わるなんてまず無理
>>244 んなことない
そこまでMS系統でもないだろ今の時代
GoでAndroidアプリを作れるようにするという最終兵器がGoogleにはあるからな....
Objective-C市場がiPhoneがどれだけのびたかを考えるとあり得るシナリオだと思う
自演にしか見えない
見る目ないな
今のGoの日本語のまともな解説サイトを作ったら結構広告料貰えるんじゃね 関連書籍とかまだまだでしょ
golang.jpがうさんくさい件 翻訳はもうやってる人がいる -users.jpはまだだな
クラスじゃなくてもいいけど、 プロパティに当たる物が無いのはちょっと・・・
∧∧ ( ・ω・) 完全になったら起こしてくれ _| ⊃/(___ / └-(____/  ̄ ̄ ̄ ̄ ̄ ̄ ̄ <⌒/ヽ-、___ /<_/____/
永眠することになりそうだな
ちょこっと見てみたけど、キモい言語だな。 だめだわこりゃ。 てか、Pikeは自分の名前付けたPike言語の失敗反省してないなwww センス無さ過ぎわろすwww
戦う君の歌を戦わない者たちが笑うだろう
ふつう、何か頂けそうでも辞退する(考える)ところだが、褒章はふつうではないため、すぐに返事をした
>>254 Pikeは北欧系のマルチパラダイム言語。Robともベル研とも関係ない。
もっとも、Robはアレフというもっとキモい名前の言語を作ってるが。
aleph自体は何もキモくねーよ
アレフ?毒ガスをまきそうな名前だな
どうもlisp信者がいるようだけど、マクロがあれば何でもアリって言うのは時代遅れ。
いまlispが再評価されてるのは、30年前のハードが対象だったのに強引にgcを搭載し、クロージャを実現してる(scheme)ってことだけ。 lispで10万行のプログラミングなんか絶対無理だから。
Lispの思想は、VMの上に好きな言語を乗せられると考える.NETに似てる。 仕様変更は上の層だけで発生するからVMは歪みねぇと思い込んでる。 現実は、VMの更に下にあるCが歪みない地位を確立してるんだが。
>>260 無内容な長文書くおっさんを召喚するのはやめてくれ
lispはfortrunと同じで原始人が使うツールだからな。 2009年現在で通用している概念や言葉が通じるわけがない。 そういうおっさんは脳みそとか汗臭そうだし。
>>262 関数型言語に行数なんて無意味だと何度言ったら・・・
LISPとFORTRAN? 時には昔から存在する言語も思い出してあげてください
LISPちゃんと勉強したら原始人がつかうツールなんて批判がでるわけないと思うんだが
Goの話しようぜ
Cに勝つには並列化しかないよな
速度が要求されるロジック部分をサクッとマルチコア対応しつつ記述して スクリプトからコール出来ればいいのかもしれないな。 so, dll化をアホみたいに簡単にしてくれよ。
また10万行かw 10万行はjavaとideにまかせるわw
10万アクセスならgoの勝ち
>>271 彼らはsoとかdll化はしないと思うけど
依存な いっそ常に全コンとかでもいいんじゃねえかとも思う 結局サードのライブラリのソースツリーも手元にあるし 常に実行ファイルが一個できるだけ、みたいな
そもそもコンピュータに要求される仕事の種類ってそんなに多いか?って話。 ツール類が直交的に提供されてれば、/usr/lib にディレクトリが何十個もあったり その1つ1つのバージョンの相違が云々って話にはそもそもならんだろ と古いUNIX屋は考える
>>276 > ツール類が直交的に
現代の悲劇はフレームワークが並行的に乱立。
>>276 それを理解できるようになるには、mac,windowsなどのGUI環境で開発してないとリソースの概念とかも含めて理解できないだろうね。
少なくともjavaを使いこなしIDEをバリバリ使いこなせるなら、そういう「同じものはいくつも必要ないだろう』みたいな不信感は生じないとおもうよ。
>>276 はよく出来たちっさなツールを組み合わせて梃子の原理で云々て話かとおもた
UNIXの場合はパイプという馬鹿でも理解しやすい かつ設計に異論も出にくい単純なものがフレームワークとして存在したからな 新しい時代のそういう糊のようなものがまだ確立できてないんだろう
話はずれるけどGoのチャンネルってほとんどパイプだよ UNIX使ってる人は触ってみれば気に入りそうな気がする
>>278 だから何でもGUI、何でもオブジェクト指向は不生産的だというのが第1。
第2に、Javaも含めて、GUIはAPIがやたら多すぎだから幾何級数的に複雑さが増している。
もし標準入出力だけでGUIを作れたら、驚くほどスッキリするんじゃないか。
もしかして、それは実在するかもしれない・・・
psしたらすごいことになりそう
>>279-280 どうもGUIとかイベントとかOOPの開発とそこで要求されている概念を理解できてないようだね。
すくなくともemacsとlispとか原始時代の開発環境がデフォならIDEで開発とか現代的な開発手法を速攻で身につけた方がいいよ。
今の時代、ゆとり世代のバカ専門学校卒業ですらcuiっぽいパイプの有用性を説明できないとしてもOOPとかなら普通に理解してることだから。
またお前か
>>282 何を言いたいかいまいち意味不明だけど、それって君が頭弱いってだけじゃないのか?w
Goの話しようぜ
で、結局名称はどうなったの
LuLuから本が出たぐらいのマイナー言語にいちいちつきあってられませんで終了だろ ネタだよ
>>288 一時ずつずらして
hp
になりました。
ありそうでなかった画期的な名称だな
10万行w
emacs+lispな古くさい汗オヤジは速く死ねってことだな
OOPと唱えるだけで遠くにいける。 そう考えていた時代がありました。
クロージャのメリットって何? なくても問題ないと思うんだけど。
296 :
デフォルトの名無しさん :2009/11/17(火) 23:19:56
変数をバインド
>>295 クロージャのおかげで高階関数を実現できる
goにgoto文はちゃんとあるんだね。
高階関数は関数型にはあったじゃん。 でもみんなC/C++/Java使ってたよ?
新しいものが良いものとも限らんわな
歴史的な経緯じゃね? 高階関数っぽいことも出来無いわけじゃないしな 変なだけで
高階関数のメリットはなんですか?
C/C++の置き換えとか言われてるだけにクロージャすら知らないやつもやってくるんだな LLか関数型言語を一個やるといいよ
オブジェクト指向と同じ道を辿りそうだな、ちょっと不安になったわ
そろそろ、ひろみGOの話にもどらないの?
アップルが並列化の道具としてクロージャーを持ちだしたが Goも同じ選択をしたというのが興味深いね。
いや、だから違うんだって。 来年になると明かになるけど、そもそもターゲットはアームなんだよ。
>>304 とはいうけど、OOPとは何か人に説明できるようにしといたほうがいいよ。
どうせ君、クロージャすら説明できないんでしょw
>>304 C++の関数オブジェクトみたいなのでしょ or 十分
って言うよね
クロージャの無い言語しかやったこと無い人は
でもlisp経験者に言われた事もあるな
クロージャはオマケ。Goのキモはチャンネルだ。 簡明なインターフェイスによる 入 出 力 が基本だ。 なぜなら実用のための言語だから。
でクロージャのメリットはなんですか?
英語的にはチャネルだと思うけど、チャンネルでもいいのかな。 どっちにしてもJavaと同じで英語の情報しか提供されないんだろうからどうでもいいけど。
興味深いって理解してないのかお前w
>>312 ローカル変数を、インスタンス変数みたいな感覚で使える
2チャネルって馬鹿ばっかだね
前スレ逃したorz せっかくのCSPベースの並列記述書ける言語のスレなのに Occamが廃れてからずっと待ってた(limboも普及しなかった)これでようやっとmany coreマシンの時代?
>>320 >これでようやっとmany coreマシンの時代?
VSのマルチコアサポートの方が40倍くらい現実的だろ
お前がわかる=現実的
>>318 ネストが少なくなるかな
classで囲まなくていいし、obj.fooと書かずにfooと書ける
VSの全部入りすげえ高そうじゃんw
並列化は興味あるんだけどこれGCなしもあり? ゲームだとGCは扱いにくくて
GCは外せない。いついかなる時もチャネルが使えるから。 ミドル寄りのシステムプログラミング言語だね
いまどきのゲーム作成は、GCと仲良く付き合っていきながら作るものだと思うよ。 ファミコンのスーパーマリオレベルなら、マップとか全リソース込みで3-10MB程度newしてプールしてれば済む話だし。 ましてGCの起動がゲームに影響があるようなら、設計から見直し他方がいいだろうけどスレ違い。
GCあるお
>>320 公式の文書でちょくちょくCSPって出てくる
そういうのから触ってきた人はGoも楽しいだろうなー
unreal scriptとかもGCありでしょ つうかあっちも試しておきたいんだけど 今月はすげえな 若かったら鼻血出てたよ
郷のCSPって全然速くないじゃん 眉唾もいいところじゃん 老害爺共が集まって懐古技術で 遊んでるだけだろ
>>328 GCのタイミングの制御はともかく有限メモリのシステムでGC使うほうが面倒。
Streamsも遅かったしな。 でも今回はベル研じゃなくてグーグルだ。 V8エンジンを書いたスピードマニアも参加してるから期待しよう
v8とかchromeとか市場シェアどのくらいか知ってるの?w
その頑張り方がちょっと良くわからない
10万行w
いまどき、OOPだのGCだの関数型だの、とりあえず全部扱えて当然だろう。 状況に応じて最適な言語を使えばいいだけの話で、 一つの言語に執着して他の選択肢を排撃する姿勢ほどばかばかしいものはないと、 最近特に思うようになった。 というわけで、まともに関数型で組んだ経験もない拙者は切腹してくるでござる。
使いやすくて市場シェアを占めてくれるなら使いたい
青春のすべてをjava&eclipseに賭けたんだ 自発的にFUDもするさ まだまだ大丈夫だと思うけどなあ 本人にとっては違うんだろうな
>>322 一度もCSPの論文よんでないと言うのは凄くもったいないぞ
>>337 とりあえずemacs + common lispはなしな。
それもIDEすら使えないイマクシスト(emacsist)なんかだと、周りから白い目で見られるよ。かなり。
InfoQ: Googleの実験、新しい言語Go
http://www.infoq.com/jp/news/2009/11/Go-Google-New-Language この言語の作者によれば、Goの目標のいくつかは以下の通りである。
* 静的言語の効率性と動的言語の記述しやすさを組み合わせること。事実、開発者は静的にするか動的にするかを選択することが可能である。
* 安全性。Goは型安全であり、暗黙のキャストを許容せず、明示的なキャストのみを許容する。
また、ポインタ演算を提供せず、ガベージコレクションを提供するため、メモリ安全である。
* 並行性と通信に対する優れたサポートの提供。
* 効率的で遅延のないガベージコレクションを持つこと。
* 高速なコンパイル。
次のような興味深い特徴を持っている。
* ポインタを持っているが、ポインタ演算はない。
* インターフェースを持つ。
* 同期チャネルを持つ。このチャネルはスレッド間の通信に使われ、並行処理の基礎となっている。
Goはそれをやりとりすることでメモリの共有を促進するが、共有メモリを通じて通信はしない。ある時点ではただ1つのスレッドだけが共有値に対するアクセスを持つことができ、チャネルを通じてスレッド間でのその値の受け渡しが行われる。
* ゴールーチン(Goroutines)。これは並行処理のために利用されるもう1つの構造である。
ゴールーチンは単に“go”キーワードを接頭辞として持つ関数あるいはメソッドである。ゴールーチンはスレッドと結びついていて、チャネルを通じて別のゴールーチンと通信する。
* 並列化。ゴールーチンとチャネルは計算を複数のCPU上で動かすために利用することができる。
* リフレクション。全ての型とチャネルに対してリフレクションが使える。
* エンベッディング(Embedding)。シンプルな継承の仕組みである。
>>339 Java&Eclipseがメインだが、普通にGoには期待してるぞ。
やりたいことを最適にサポートしてくれるなら、道具はなんでもいい。
>>341 slimeはいいもんだろw
あれについてはjava、eclipseが見習って欲しいくらいだw
>>342 >gccgoはガベージコレクタを持っていない。
あ、そうなんだ
>>326 はむしろ喜びそうだな
どちらかといえば、javaをやってる方が長かったからnetbeansの方が好み
Lispは知らない奴ほど騙りたがる不思議な言語だな。 見ていて恥ずかしいから話題に上げるのを止めて欲しいわ。
>>347 Goにこだわる事もないだろう。
Kenが書いたPlan9版のCなんかどうよ
無名構造体が使える
マイナー言語を使うメリットってなによ
意味の分からない優越感
趣味だよ
>>352 マイナーだからではない。
未開拓だからだ。
>>352 『言語の能力=プログラムの表現力の限界』だから、マイナーだろうとなんだろうと
色々使えた方が良い。
一人で勝手にやるなら別にいいだろうけど…
もう何年も 達人プログラマーに書いてあった事を実践してるから 目に付いた言語は試してみるようにしてる
これ、LLVM版はやらないのかな?
>>352 VBなんか使えないのに雰囲気でわかるよねって仕事を根絶するために
最強の言語を流行させるための草の根活動の一環
ぶっちゃけ、最近の流行はJVMか.NETのバイトコードを吐ければ言語は何でもおk、なんじゃないの。 そこに加えて、C/C++の担ってきた仕事をGoが良い形でリプレースしてくれるならそれは普通に歓迎。
GoにC++の置き換えは無理 pythonの置き換えくらいが精一杯
>>360 公式はLLVMとかWindowsサポートする気ないようだから
やるならオープンソースだし誰か勝手にやってってことだろう
上でゲームの話が出てるけどサーバ向けのようだから少し茨の道かも?
>>363 C++ の置き換えは無理だけど、C++ の領域を狭める事は出来る。
C が出来ても ASM は無くならなかったけど、確実に適用範囲が
狭まったのと同じ。
GC 付き言語でゲームなんか余程リアルタイム性が求められていないか ストップ・ザ・ワールドを楽しめる余裕のあるゲームなんだろうな
>>342 >* リフレクション。全ての型とチャネルに対してリフレクションが使える。
aClass methodDict とか Smalltalk allBehaviorsDo: [...]
みたいなのと同じ事が出来るなら良かったんだけどな。
静的型付け言語には望むべくも無い事だが。
何か上でメリットを並べているみたいだけど 他の言語でも出来ることだしむしろ他で出来てGoで出来ないことが多すぎ
Go++とかが出るんだろ
確かに出来て当たり前のことを誇らしげに掲げている節があるよなGoって
どんな言語でもできることは一緒 問題はやりやすいかどうかだ
どう読んでもチューリング等価という話ではないと思われ
373 :
デフォルトの名無しさん :2009/11/18(水) 02:51:24
ラムダ算法があればイスラム数字がなくてもWindowsをかける。 でもゲシュタルト心理学的には文字の見やすさも重要。
>>370 たとえば「オブジェクト指向対応」
という項目があったとして、
オブジェクト指向のための機能は最近の言語では持っているものも多いから
別段珍しいことではないけど、どうやって実現しているかというのはこの一文では分からない。
いかに使いやすく、抽象化しやすく作られているかが重要だと思うよ。
「できる」だけじゃないんだよ。
Goってそんなに作り易いの?
何気にここ数年は C++ が人気だったりする。LLVM とか V8 とかも実装言語は C++ だし、 OpenOffice.org とか FireFox とか大きめのGUI アプリの多くは C++ で書かれている。 それらを Go で置き換えるのは、まぁ難しい。ウェブ系は Java と LL が染め上げているし、 Mac OS X や iPhone は Objective-C 一択。これらも Go が入り込む余地は少ない。 C++ を使うには大袈裟すぎるプログラムとか、C だと面倒くさいプログラムには Go は 良いだろうね。エディタとかメールクライアントを作るには丁度良さそう。
たぶんgoogleはGo限定でプログラミングコンテスト開催するぞ…しかもすごい賞金。お前らGoやっとけよ
>>331 gcc版じゃないほうでコンパイルして、GOMAXPROCS=1にしても遅い?
理由は以下。
・Segmented Stackがgoroutineのスイッチ速度に効きそう
・コア2つ以上にするとコア間の通信のために遅くなる可能性がある
(基本的な演算能力は上がるけども)
ちなみにまだgo触ってない。
>>374 Objective-C, Smalltalk, Java みたいな壮大なクラスライブラリがある訳じゃないもんな。
googleの名前がなかったら見向きもされないレベル
取り敢えず今日は Lisp について頓珍漢な事を書くのは控えてくれな。 イチイチ突っ込みは入れんけど、こんな所で知ったかぶりする必要は無いんだから。
これいけるのかw package main type 文字列型 string; func メッセージ表示(メッセージ 文字列型) { println(メッセージ); } func main() { メッセージ表示("This is 日本語"); }
2ちゃんで知ったかぶりなくしたらレス数10分の1くらいだろ
>>382 なでなでしこしことかもういらないんじゃねw
>>381 そんなに上から目線したいなら、せめてLispとgoがどう関係してる説明してくれないか?
どうせlispしか知らない昭和のおっさんなんだろ スルー推奨
あはれ
関数型言語のかの字も知らない奴らがLispを語っているように見える
とりあえず博士号持ってるやつ以外は書き込むなw 紛らわしいわw
>>390 で、その関数型言語とやらがGoとなにか関係してるんですか?
たぶんすれ違いなのはあなたの方だと思いますよ。
博士Go こういうことですか?わかりません><
>>379 言語仕様の巧みさとライブラリの大きさは関係ないよ。
ライブラリはやる気がある指導者がいれば勝手に大きくなる。
クロージャで少し関係ありそうだけど、クロージャはjava,c#とかjavascriptで普通に使われてるからな関数型言語の売りって感じじゃない。 カリー化とかハスケルっぽいなるならgoも少しは現代的な関数型言語と関係あるかもしれない。 前スレでD,C++と比べてるゆとりがいたけど、今回沸いてきたのはそれと同レベルのなんちゃってだろ。上から目線の昭和おっさんであることに間違いはないが。
クロージャなんて次のC++でも入るからどうでもいい
>>393 最近の理論的研究はほとんど関数型言語絡みなんだよ。
だから関数型言語に興味がある=プログラミング言語に詳しい、着眼点が良い人ということになる。
この世で最先端の言語はHaskellだもんなw 何しろHaskellは元々最先端技術を集めて作るのを目標にしていて、 人が集まってくると言語仕様が荒らされるからわざと目立たないように 使いやすさよりも研究用言語としての立ち位置を取ってきた言語なんだから。
プログラミングとは、理想美を追求することではなく、泥臭い作業を自動化することですよ。 そのための理論であり学問でしかありません。 goはmitやbellでなく一企業内の研究員が開発し、さらに学問のために開発したわけでもありません。 変な期待を抱かない方がいいと思いますし、これからは議論についていくためにもOOPとかちゃんと勉強しといた方が未のためですよ。
なんかよくわからん荒れ方してるな
>>400 プログラミング言語について詳しいと自称する奴がオブジェクト指向を知らないわけがないだろw
goは最近流行りの並列・平行処理をやりやすくした言語というだけだよ。
OOPってつくづく勉強するほど深いものじゃないよなぁと思う
405 :
デフォルトの名無しさん :2009/11/18(水) 12:24:52
>>398 (x+y)^2 = 3/2
x^2 + 2 y^2 = 1
この連立が解けません。解法おながいします。
関数型言語ってどの程度押さえておけばいいのん? なんか抽象度が高いから云々とか聞いたことあるが それって読みにくい言語ってことじゃないのか? LLのラムダ式とかよく使うけどしばらくたって読み直すと訳わからなくなるぞ
>>402 なら、GoとLispはどのあたりが関係あるんですか?
>>406 言語を利用する上では大して難しくないが、
・高階関数
・forループじゃなくて再帰ループ
・再代入禁止
・リストを活用しよう(リストは関数型言語だけの特徴じゃないけど、関数型言語ではたいてい使いやすくなっている)
>>408 どう考えてもgc必須な資源食いまくり言語ですなw
>>406 関数型って言っても高階関数が扱える程度で関数型と名乗ってるのから本当の純粋関数型までいろいろあるぞ。
たとえばschemeなんかは純Lispの子孫だから関数型って言われるけど実際のところ本質は命令型と何ら変わらない。
Concurrent CleanやHuskell(とかその子孫のとかCurry)がどのようにして副作用をどのようにして隠蔽しているかを
知っておくのは無益なことではないだろう。
ラムダ式や高階関数なんての関数型から輸入してきた要素だけど、
最近の手続き型言語は大体持ってるから使えないのはまずいだろう
後で読めなくなるってのは書き方が汚いだけで別の問題
また馬鹿なLisperが暴れているのか
そのうちセクハラ(痴漢)で逮捕されるから放っとけw
関数型言語もまともに扱えない低知能が何を言っているんだ
414 :
デフォルトの名無しさん :2009/11/18(水) 12:47:43
>>410 そこまで「lisp命」になっちゃうのは何でですか?
>>409 関数型言語の関数呼び出しって内部的にはgotoと同じだから、
C言語の関数呼び出しとは根本的に違うんだよ。
だから再帰でもforと同等。
リストは言語仕様に組み込んでしまえば最適化しやすい。
高階関数はクロージャがあればどの言語でもできる。
416 :
デフォルトの名無しさん :2009/11/18(水) 12:48:55
低知能に使えない言語ってのは要らない気がするがw
OOとOOPを混在して書くからややこしい
考え方が違うのだからOOPもどのOOPか明示して書いてくれ
>>396 Javaってクロージャなくない?
>>413 lispperの戯言はもうお腹いっぱい
goのネタはないの?w
>>417 Javaにはネイティブクロージャがないから匿名オブジェクトで模倣する。C#と同じ。
>>415 でも肝心のLISTがヒープでしょ。
それじゃsentenceがgotoでも結局gc必須だよね…
高階関数って引数に関数が取れるって理解でOK?
>>420 Haskellでは場合によってリストを配列に置き換える場合もあるみたいだね。
最適化次第で制御できないが。
C++でもHaskellでもなく Goを選択することが最適な研究分野を1つでも挙げてみて下さい まああなたたちレベルの理解度では無理でしょうけどね
>>421 それだけだとC言語でもできるが、スコープを継承できなければ高階関数とは呼べない。
>>425 何故ARMにGoを選択することが最適だと考えていますか?
goの最大の特徴はgo文。 大量の鯖アクセスを並列でerlangより高速に捌くのが目的でしょ。
>>422 配列にするならヒープじゃなくてスタックでよく、結局C/C++系列の言語と何ら変わらない。
ヒープならjavascriptと同じなわけでこれまた構造化言語とおなじ。
つまり、旧来の関数型言語っていう枠組みが、もう構造化言語の一機能(言語機能)でしかないのよ。
ほとんどの関数型言語の機能はクロージャで代用できてしまう。
カリー化はコンパイラの話になるから少し違うけど、ここで吠えてるlisperは何でそんなに上から目線でいられるカワズ君なのかなって感じ。
>>428 他の言語でも同じことが出来ますが
あえてGoを選択する理由は何ですか?
また今日も私が勝ってしまいました 2ちゃんねる程度では私と対等に議論出来る論客が存在しないことが残念でなりません
>>430 軽量プロセスを言語仕様レベルで実践している言語はgoのほかにerlangがあるが、
erlangとの決定的な違いはgoはネイティブで動くから速いということ。
>>432 あなたが考える並列処理を軽量プロセスで行うメリットとは何ですか?
これでは話しになりませんね
436 :
デフォルトの名無しさん :2009/11/18(水) 13:14:03
JITも考えるとそうとも言えない。 ネイティブだと静的でしょ。 不変であり変化が多いそういう用途なら、いくらネイティブであれこれ頑張っても動的最適化には勝てないよ。
地震だ 京大時計塔倒れた
>>436 erlangとCを比較してみな。
erlangはクソ遅いから。
lisperはみんな上から目線だよ
>>430 Elangとかよりは大抵の人には書きやすくて
goするだけで並列に出来るからじゃない?
大抵の言語で出来るけど楽に書けるならそれにこしたことはない
そもそもこの流れで軽量プロセス軽量プロセスって唱えてる人は 軽量プロセスが何者なのか根本的なところが理解出来ていないと思う
じゃあ試しに軽量プロセスとスレッドの違いを説明してみろよ これがまともに出来る技術者なんてほんの一握り
>>441 お前はVMでしか軽量プロセスが実践できないと思い込んでいるんだろw
>>429 横槍で申し訳ない
スタック or ヒープ → 構造化
の辺りがよく分からないのだけど
とりあえず、goでリングノードベンチマークでもしてもらおうか
>>429 Haskellでは、というより、GHCでは、と書かなかったのが誤解を生んでしまったようだ
みんな新しい言葉が好きなんだよ 既存の物も新しい言葉に置き換えれば違う物に見えてくる そんな誤った世の潮流の特異点に存在するのがGoという言語 これが真相
IOってよりもプロセスやスレッド(OS)よりのネイティブ・システムに適した言語ってところのようだね。 限りなくソフトに近いから本来はbytecodeでかいてモジュール化しておけるんだけど、速度とかの効率を考えちゃうとハードにべったりだから結局ネイティブ・コードで書いちゃうってところに向いてるようだ。 javaならpublic void nativeのところ、rubyならそのシステムように実装し直した所とか、スレッドとかJITなんかの実装ようの言語なんだろうね。 ハード(ネイティブ)用言語ではあるが、Cとはやっぱり違うところがターゲットか。 gcがついたc99と考えられから汎用大衆向けでもあるが、これから言語仕様で言語依存(D,C++,C#)なのかライブラリ依存(Java,javascript)なのかによって形成されるコミュニティーがかわるだろう。 ただ、動的最適化には勝てないから所詮はjvm,cliよりさらにしたの下請け言語なのかなって思う(objcがあるよねって言う思いはあるが…)。
虚像企業Googleが生み出した幻想
軽量プロセスっていうかcoroutineってLisperが大好きなSICPでも載ってなかったっけ。 SICPがいま手元にないから確認できないけど。
質問です N個のノードを作り、1番目のノードに送られたメッセージは2番目のノードに、 2番目のノードに送られたメッセージは3番目のノードに、・・・、 N番目のノードに送られたメッセージは1番目のノードに送られるようにリングを形成し、 そのリング上を一つのメッセージがM回まわるのにかかる時間を計測してください。
Lisper呼ぶな
>>444 jsを引き合いに出したんだから、スロットといった方が通じたか。
これで理解出来ないなら根本的なところから分かってないってこと。
馬鹿が唐突に質問してるぞ 誰か答えてやれ
>>444 そりゃ関数型言語も構造化言語だけど何か?
ちなみにオブジェクト指向言語も構造化言語だけど何か?
関数型だのオブジェクトだの、そんな言葉の違いに意味は無いと知るのに10年かかった。
cygwinでインストールして失敗した奴多すぎワロタ
>>451 で、これをネットワーク上でやるんだよな
P2Pじゃないけど、昔流行ったWebRingみたいにGoのプログラムでリングつくって
パケットをただ回すだけってのはやってみたいな。
460 :
451 :2009/11/18(水) 13:49:12
>>459 ネットワークでも良いですが、今回は並行処理だけで実現してみてください。
元々はリングノードベンチマークっていうerlangの優位性を誇示するためのベンチマークなんです。
>>460 Erlang使いなら自分でやったほうがたぶん早いぞ
このスレでコードが載るのは稀だ
あとなぜErlang版のコードを示さない
>>458 そんなに顔真っ赤にして自己紹介しなくいいからw
>>453 ごめんそれで更に分からなくなった
JSのスロットってオブジェクトを表現するための方法じゃない?
>>455 いやそれは分かってる
ただそれがスタック/ヒープとどう関係あるのかが分からないだけ
どいつもこいつも口先だけだな 並列処理が簡単に書けるとか抽象的な表現で優位性を印象付けているだけ 実は何も証明出来ていない
馬鹿を相手にするな
>>466 それがグーグルの本性ですよ。
実際にグーグルがやってることはただの著作権侵害のその抽象化ですし。
470 :
デフォルトの名無しさん :2009/11/18(水) 14:20:01
ErlangやっているLisperって 心当たりがあるのだが
472 :
デフォルトの名無しさん :2009/11/18(水) 14:31:22
たくさんいるけどどいつこいつも上から目線なんだよな
>>405 x = ±(√6)/3
y = ±(√6)/6
いまどきの関数型言語やっている連中はLispなんて相手にしてないよ
なら、GOといまどきの関数型言語とはどの辺が関係あるんですか?
ねーよ
481 :
デフォルトの名無しさん :2009/11/18(水) 15:04:53
>>476 欲しいのは答えじゃなくて解法ですよ
問題文をよく読まないとダメじゃないですか!
この板的には「アルゴ」なんっていったりしますが
学校にでもいけよ
>>405 (x+y)^2 = 3/2 ... (1)
x^2 + 2y^2 = 1 ... (2)
(1) を展開 2x^2 + 4xy + 2y^2 = 3 ... (1')
(1') - (2) x^2 + 4xy = 2 ... (3)
(3) を y について解くと y = (2 - x^2)/4x ... (3')
(3') を (1) に代入 (x + (2-x^2)/4x)^2 = 3/2 ... (4)
(4) を x について解くと
9x^4 - 12x^2 + 4 = 0
(3x^2 - 2)^2 = 0
x = ±(√6)/3 ... (4')
(4') を (3') に代入すると
y = ±(√6)/6
>>483 ありがとうございました!
やっぱGO!ってすごいですね
いや、その、ちょっとGoさんの擬人化してくれる人がいたらいいな、と思って キャラつくってしまいました・・・
ところで君たちは何で真っ昼間から2ちゃんで盛り上がれるんだ? 学校はもう冬休みに入ったのか? それだけ時間があるなら関数型言語に付いてもう少し見識を深める事もできるだろうに。
それを余計なお世話と言う。時間が無くても覚えておいた方が良いよ
go言語がWebアプリがWEBアプリを高速化できるという理由を説明せよ. いや,してください!
塩化ナトリウムのことか
言語名がかぶってる問題はいつ決着が付くの issue9てのも謎っぽくて悪くないと思うが
おい、コンパイルに時間かかるぞ バイナリ用意しろ
バイナリ()
ビルド自体は長くてもせいぜい5分だろ そんなこと言ったらgccgoなんか悪夢だぞ 時間かかる上に環境揃えてもビルド失敗しやがるし・・・
>>497 ごめん、俺が言ってるのはgccgoのこと。
8gとか8lとかコンパイラとリンカを別々に実行しなきゃいけないところとか普通じゃないので、
gccチックに使える方が良いかなぁと。
>>494 狙いすぎだってば
とりあえず数字いれるなら、大人しく入れて欲しいもんだ
例えば8gじゃなくてgo8とかで良かっただろうに、何を考えてるんだ
いろいろ狙いすぎで、本気のネタ言語にしか見えん
8cにあわせるためなんだからgo8じゃ意味ないだろ
それじゃ6gではなんのことかわからんじゃないか。いや、わかるのか?
6goでもいいと思うが短い名前がほしかったんだろ
>>498 >8gとか8lとかコンパイラとリンカを別々に実行しなきゃいけないところとか普通じゃないので、
普通だろ?
普通だな
日本はでは未踏とかいう税金使い放題の ところでLispの亜種開発してるんだっけ?
報告書いっぱい書かないといけないから未踏やりたくないー
>>498 新手の釣りか・・・?
javacとかと比べるなら分かるが・・・gccだろ・・・
make使うだろjk
8g hoge.go && 8l hoge.8 するだけのスクリプトを書けばいいとか そういう問題じゃないのか
そういう問題じゃないと思うが…
8g hoge.go で出たエラーをぶっちぎって8lまで行くのが気持ち悪いとかそういう問題かもな ちなみにその感覚は正しいと思う
gccgoをビルドすれば
そうだな
>>512 コンパイルでエラー出たらそこで止まるだろ……
そもそも検索し辛いから名称変更しろってのが発端なのに Issueとか意味のある単語にするとか本末転倒もいいところだろ 悪のりしている一部の馬鹿が本来の目的を忘れて暴走しているとしか思えない CやD言語が検索する上で問題がないのにそれでも変更したいなら Googleで検索して1件も出てこないような8文字以上のデタラメな文字列にでもしない限り意味がない
で関数型言語のメリットを教えてください
全ては悪ノリするためにやってるのに分かってないな…
このスレのノリは難しすぎるぞ実際。 一応本スレだよなw
よし 厨っぽいけど話のタネに並列ダウンローダでも書いてくれ
package main // 後は任せた
import "http" // ほいさ
エエー import "http" // 次の人よろしこ
downloader.go:4: http redeclared as imported package name previous declaration at downloader.go:3 downloader.go:4: imported and not used: http make: *** [downloader.goo] エラー 1
ひどいなw
func main() {
//response, url, err := http.Get("
http://www.example.com/ ");
response, _, _ := http.Get("
http://www.example.com/ ");
fmt.Printf("Status: %s\n", response.Status);
fmt.Printf("StatusCode: %d\n", response.StatusCode);
fmt.Printf("Header: %v\n", response.Header);
// fmt.Printf("Body: %s\n", response.Body([0:50]); <- まちがい
}
よし、これで完成は目前だな
// じゃ、3,4行目消して import ( "os"; "http"; "fmt"; ) // 他に何がいりそう?
なにこの流れw 一応本スレだよなここっ
>>529 だねw
宿題スレがあるのでそっちでやらせてもらおう
533 :
デフォルトの名無しさん :2009/11/19(木) 00:43:39
CSP楽しいよCSP! Windows版のインストーラ版があればもっと遊べる場所が増えるんだがいつになるかなぁ?
CSPってなんぞ
の並列処理の記述は,CSP(communicating sequential process)と呼ぶ プロセス代数のモデルに基づいている。 CSPは1978年にTony Hoare氏が提案した考え方で, データの入出力を一つのアトミックな操作として定義するというもの。 共有データを持たないことで, ロックやセマフォといった同期のメカニズムを使わずに並列処理を記述できる。
CSPなんてなっつかしーなー。 CCSも出てくるんかね。
機能が足りないのを シンプルで高速wとか宣伝するからなw 株価吊り上げるのだけはうまい
企業だから株価吊り上げるのは当然として、 フリーな言語をネタに株を買う投資家はチャレンジャー。
>>518 同意
UnixとかPlan9とか ふざけて付けた名前だし
Goだって悪ふざけ
しょせんnaclとARMで遊ぶためのおもちゃ ぐらいに肩の力抜くべき
やべ、goでコンパイルした実行ファイルのメタ情報消さずにうpしちまった 身元特定されるwwww
MinGWでgoのビルド成功
goでListとかTreeとかroutine間で共有して操作するにはどうやんの? メモリ共有できないってことは、 routine間で共有したデータ構造をいじれないってこと?
channelをセマフォとして使えばロックできるんじゃね
演算子オーバーロードが無いと 複素数や行列を数式に出来ないからやだなあ
金毛
17-18日のパッチログ見ると、FreeBSD/i386で動くようになったの?
ロジックから数式を感じ取れない奴はプログラマじゃない
Y Combinator でけない
演算子オーバーロードどころか、ただの関数のオーバーロードもないんだろ
例外もジェネリックもないしな クラスもないとか 今のところ、この言語は論外
お前どうせなんちゃってOOPしかかけないんだから関係ないじゃん
Perlがコンパイルできるようになったと思えば面白い言語
クラス?なにそれ、って梯子を外されちゃったんだもんな クラスしか知らない奴はショックだろう
struct + method という割り切りが好きだな。 別にわざわざ冗長に宣言をしなくとも実装すればメソッドが 加わるというのは気楽でいいじゃん。
CにごてごてくっつけていってC++になった事を踏まえて それを反面教師にしてなるべくシンプルに済まそうとしてる感じだな。
functionの説明ばかり見てて、 methodに気付いていなかった・・・・ methodを定義する側からどんどんバインドしていくのか。 method側が、クラスというかtypeから独立している感じがいいな。
マニュアルもJavaなんかと同じ感覚で読んでると面食らうね Readにスライスを渡せるのもなんか新鮮
クラスベースが(ほとんどの場合)いかに不毛であるか、そろそろ気づいたかな? Goはオブジェクトの分類じゃなくて、その要素にフォーカスするのだ。 コードの9割が「私にはこう見える。こう見える。こう見える。お前もこう見ろ」 なんていう目線統一ごっこ、もうやめようや。
そういう低能なレスはいいから
リファクタリングの手間がずっと減りそう。
iota constansってなんだよw そのサイト、ネタだと思ってたけど実はマジなの?w
Action Scriptも最初はクラスがなかったけど、 それでは業務では使い物にならないから 途中からクラスをつけざるを得なかった Goは歴史から何も学んでいないな
>>570 クラスで出来てstruct + methodで出来ない事って?
structとか古めかしいキーワードもいらねー
>>570 classが必要になるほど大規模アプリを作ってるのかい?
それもjsでw
総称と例外は後から追加の予定らしいし実務で使うのは数年後の予感
うまいこと追加できるかわからないから open issue(引き続き検討が必要な議題)って書いてあるんじゃまいか
シンプルな言語を目指していたのに 気が付いたら標準ライブラリが肥大化していって やむなく途中から例外とかグチャグチャと追加していくんだろ ライブラリの充実に伴い並列処理を小さなプログラムで書くという本来の目的は薄れ 書き手が要求するものと言語仕様が提供する物が乖離していく コンパイル速度も機能追加のたびに落ちていくだろう
住み分けを考えれば、「何でも出来る」を目指す必要はないのに
ライブラリの充実は必要だ。 言語に機能を加える為ではなく、あらゆるリソースを例外なくチャネルで扱うためだ。 GoはGoOSにならねばならない。
>>578 定理:ユーザーが要求することは一番望んでいることではない
Dが失敗したのは、どうでもいい会社の一人のスーパハッカーが好きで勝手にやってるってこと。 Dには採算や実用性など微塵もなく、そこにあるのは顔射スペルマだらけってこと。
好きで勝手にやるのが目的の言語なんだから成功だろう……本人にとっては。
OSは知ったこっちゃ無いがライブラリはどんどん増えてるな どこまでネタでどこから本気なんだか分からん ネタのつもりがいつの間にか本気で取り組んでたって人多そう
メソッド名がバカ長くなるのを避けてるのは実にイイ
モナドってどうやって書くの?
Y Combinator ってこれであってるのかな... package main func main() { fact5 := func(f func(func(int)int)(func(int)int)) (func(int)int) { return func(proc interface{}) (func(int)int) { return f(func(arg int)int{return proc.(func(interface{})(func(int)int))(proc)(arg)}) }(func(proc interface{}) (func(int)int) { return f(func(arg int)int{return proc.(func(interface{})(func(int)int))(proc)(arg)}) }) }(func(f func(int)int) (func(int)int) { return func(n int) int { if n == 0 { return 1; } return n * f(n - 1); } })(5); println(fact5); }
>>590 Y Combinatorとやらを実現しようとすると、こうなるってこと?
確かにこれは言語の表現力が足りなそうだ
表現力の問題じゃないだろ。型推論がないから全部厳密に型指定する必要があるだけ
型推論とかw
凡人どもが古い考え方に捕らわれて 新しい発想についていけなくて哀れよのう
>>590 そのプログラムを書くプログラムを書いてくれないか?
λ計算は、再帰をどうするかって話もおもしろいけど 並行β変換で正規形に必ず到達できるっていうカッコイイ証明があるんだから Goで遊ぶならまずそっちが先だろう
並列は実際はthreadで十分実用だったりするからそんなに偉そうにしてもだれも聞いてくれないだろうな。
軽量プロセス(笑)
再帰と並列って仲悪そうだな 再帰はスタックを使うが、並列はキューみたいなchannelを使う
Chrome OSのソース公開してきたな 検索・ブラウザ・OS・クラウドと順調に支配しつつあるけど言語は上手くいくかな
しかしGoogleもさることながら 今年はM$の快進撃もすごかったな 逆にAppleはMacの低調さと忍び寄るAndoroidの影におびえてもうただの音楽プレイヤー屋さんに成り下がりそうな勢い
来年もM$・Google・Sun・Adobeあたりが注目株か? とりわけM$はWindows Azureで2010年に勢力を一気に拡大しそうな気配だな
声に出して読みたいスレタイ
Chrome OSとAndoroidは明らかにGoと関連があるだろ
Go は Googleの一部が作っただけなのにか?
chromeのlinux版は、確かテキストフォームへ入力が出来ないんじゃなかったか? そういう未完成でもない中途半端なところで発表・公開してるからグーグル信者以外の開発者間では避けられてる。 これも一円も金を使わないで作らせて株価を釣り上げるグーグルの株価操縦のパターン。
>>605 来年になるとね、SUNはなくなっちゃうから。
それに、chrome osとか業界話はgoのスレとまったく関係ない。
GoのCocoaBindが欲しいな
Gocoa
GoGoの紅茶
C言語のunionやHaskellの代数的データ型みたいに複数の取り得る型を一つの型として扱いたいんだけど、 どうすれば良いんだろう?
interface{}じゃないの var x interface{} x = 99; println(x.(int)); x = "hello"; println(x.(string));
>>615 mp3のエンコードが速くなるって聞いてやって来ました!
Goの変数は全部ヒープに乗るの?
>>622 なんだってー
これでHTAみたいなのが復権したら面白いんだけど
セキュリティが問題になるんだよなあ
なだってーもなにも Googleの目的は検索をたくさんしてもらって広告収入を集めることなんだから 多少でも高速化するようなものを支援するのは当たり前
Chrome OS糞すぎるwwwwwwww
俺もChrome OS入れたよまぁGoogleがクラウド至上主義なのはわかった まぁWaveの招待状が届いたからChrome OSなんかどうでもよくなったけど
native client (NaCl) 用の ネイティブなjavascript 代わり
gccgoをビルドして出来る、bignum.goxみたいな.goxのファイルはなに?
ところで文字数をカウントするには自分でエンコード管理しないとならんのかこれ?
UTF-8なら utf8.RuneCountInString(u8str)) すればいいんだけど UTF-16とか他のエンコーディングをどうするかが困ったちゃん
Goってわざわざ新しい言語作るほどのもんなのか?
ほどのもんだよ
仕様としては、正直言って古い言語しか知らない人間が作った センスの悪い未熟な言語仕様だよ Googleというだけで盲目的にマンセーする信者がいるだけの カス言語
マンセーしてる人はあんまりいないんじゃね? ヨチヨチ歩きの赤ちゃんを見守ってるようなもんだと思うよ
産んだのがじいさんだからみんな心配してんだよ
じいさんはKenとRobの二人だけでしょ
錚々たる面々に期待してみたら実際には老害とか
関数のオーバーロードや例外がないってのはどういう思想なの?
復古主義
べつにそんなもんはいらねえよ。どうでもいいじゃん ないとまともに書けないひと?
引数が違う関数全部にいちいち別の名前考えるのめんどくさいな
例外もないのかよ ホント糞だな 基本中の基本もできてないのかGoogleは
Googleがやってるからというだけで「いや、これはこれで面白い」 とかいう奴が大量に沸くんだよ Googleブランドで過大評価された言語だな
Goは100ステップ程度の処理を書くための言語 それ以上の機能が欲しければGoは不適切ですC++でもやっていて下さい
googleブランドもさることながら中の人の名前の方がたまらんだろうマニアには
>>643 複数の値を返せるということとオーバーロードができないということは何も関係ないのでは?
関係しそうなのは、型関連の事柄で、動的に書くことができるという点だが
中の人の名前はむしろ過小評価の要因だろ じいちゃんだし
Goは優秀なJavaScriptですって売り出せば凄いって絶賛されたんだろうが 何を血迷ったのかC++と比較するような広報活動を行ってしまったのがまずかったんだと思う
それはないな よく知らん一般人にはJavaScriptはお手軽な初心者用言語で VBあたりの仲間みたいなイメージがあると思うが、 マニアにはJavaScriptは優秀な言語仕様であるということが知られているよ
少なくともJavaScriptで10万ステップのプログラムは作らないだろ そんな物を保守出来るような言語仕様じゃないしGoもその点を誤解されないようにJSと比較すべきだったな
>>647 複数の値が返せるから・・・ってのは例外について
オーバーロードについては俺は何も言ってないよ
例外を戻り値で扱うってのもアレだよな 自分でエラーの階層情報を設定しながら親へ親へと毎回リターン文を書くんだろ
仮にGoがScalaのような言語仕様だったら、神格化されて 凄いことになっただろうけど、Pascalもどきだからなんか持ち上げられ方も 微妙な感じだな
>>650 JavaScriptが糞だった時期を知らんようだなw
>>651 今まで大規模開発に耐えうるIDEがなかっただけで
言語仕様が悪かったわけではないというのが個人的意見
議論はあるだろうが
>>655 それは主にブラウザの互換性が問題だっただけだろ
ブラウザの互換性は今でも大問題www
標準化されたので以前ほどではなくなった
Scalaは10年以上きちんと研究と実装重ねてきたけど Goは老害爺どもの懐古主義者が復権をねらって作ったゴミ言語だし
Pythonの製作者が加われば面白かったのだが
どこが?実装面は最低じゃん 記法はシンプルでいいと思うけど
とりあえずGoの生みの親が目指しているゴールと 現状標準ライブラリの整備を進めているボランティア達が目指しているゴールとの間に 大きなズレが生じていることが問題なんだな
今の流れは実装面の話じゃないだろ 記法がシンプルとかそいうものも含んだ、言語仕様の話だろ
生みの親はGoを 小さいプログラムをシンプルに書けるものにすることをゴールとしている とりまきどもはGoを何でも出来る言語にしようとしている
小さいプログラムをシンプルにとか、それこそperlやpythonで十分だな
出来ればブラウザベースのChrome OSとかは クラウドに巨大なアプリを置いてローカルからはそれを高速に並列的に叩くだけの小さなプログラムが存在することが理想なじゃないのかな? ブラウザベースでクラウドを叩くにはJavaScriptだけでは弱い、だからGoが必要になった。みたいな妄想をしているのだが
Goの目的はやっぱりシステムプログラミングだろ JavaScriptやPerlの代替ではなく、CやC++の代替で正しいよ ネイティブにコンパイルするし
Goが注目されたのはgoogleの名前のおかげ。 それだけだ。
part2まで行っても全く話が深まらないのが素敵
>>664 > 小さいプログラムをシンプルに書けるものにすることをゴールとしている
そんなこと言ってないぞ。 システムプログラミングを目標にした
言語と言っている。
googleはマジでこれ使おうとしてるの? 10年くらいしたら使えるようになるの?
OS書く気? システムプログラミングって何を指すんだろ
>>672 Googleのバックエンドは巨大な分散システムだ。 1つのサーチの結果を
導くのに何百ものシステムに分散して処理される。 Google File Systemも
分散ファイルシステムだが実装はOSでなく、ユーザーモードのサーバー
プロセスで実現されている。 こういう分散システムのプログラミングが
Googleが主にターゲットとするシステムプログラミング。
という妄想
ChromeやGoの登場で、Google神話もだいぶ崩れてきたな ブランド力としてはMicrosoft並みに落ちるのも時間の問題だな
お前は世界的にMicrosoftのブランド力が Googleなんかと比べ物にならない位高いことを知らないのか?
とするとGoもGoogleの中で実際に使われることはあるかもね だが外では... Googleクラスの分散システムを維持運営できるのって世界でもAmazonとMicrosoftくらいのもんだろ 一般人どころか日本の超大手でも関係ないわ
>>677 いつの時代の話?
AndroidでiPhoneを駆逐すると予想されているGoogleに
Winごときが勝てると思っているのか?
クソM$信者が実際にいることに驚いた。
失敗したC++を薦めるバカ社員もいるなw
まあ人気だけの虚像企業GoogleやAppleと違ってM$は実力があるからね .NET&ASP&WM&Azureでローカル・サーバ・モバイル・クラウドまでリッチ環境を提供して 全て同じIDEでシームレスに生産性の高い開発が出来る
684 :
デフォルトの名無しさん :2009/11/21(土) 13:00:37
Appleは頑張ってるけど Googleは検索以外は全部ゴミ まあつべは赤字垂れ流してでも続けてくれ
2000年代初頭はみんなアンチMicrosoftを自称することがカッコイイみたいな風潮があって 有志によるOOSこそがこれからの時代のあるべき姿だとみんな夢を見ていたんだよね でもそれから10年経ってみんな夢から覚めて本当に大切なことに気付いた
OOSじゃなくてOSSだった
>2000年代初頭はみんなアンチMicrosoftを自称することがカッコイイみたいな風潮があって ここ20年くら毎年繰り返されてる風潮です
買収や外注の機能包括ではなく この10年で実際に現実物を生み出し続けてきたのはGoogleでもAppleでもなくSunとM$
Open Operation System
おまいらGoの話もしなさいよ
>>688 MSがどんだけ買収してるか知らんのか?
windowsの人は使えなくてかわいそう
Linuxが世界をより良い物にすると10年前みんなそう思っていた
Solarisが最強
言語仕様全く知らない俺が一言 プリプロセッサがない時点で糞
初心者ほど文句つけたがる
よくわからないまた新しいのが出たから脳が足りないのはすぐ文句言う
MSの中の人は悪い意味で公務員化してしまっていると思う つまり予算消費型のプロジェクトを立ち上げてしまう
予算投資型プロジェクトを禁止しよう
CoLinuxを入れたら動くかな?
PGたるものLinuxの一つくらい仮想環境で飼っておこうぜ
確かUbuntuもWindowsアプリみたいに使えた気がする
VirtualBoxのシームレスモードおもろいよ
Java、Solaris,ZFS、DtraceにVirtualBOX作ったSunが最強
VirtualBox良いよね うちは CentOS5 / FreeBSD8.0R を飼ってるよ
virtualboxはopenofficeと同じで企業買収しただけ作ったわけじゃない。 googoleもゴミみたいなクラスライブラリとか下らない写真管理ソフトなんかで騙してないでアドビを企業買収してアドビの全ソフトをオープン・プロジェクトとして公開しろ。
GoogleさんMS買収してくれないかな
グーグルが買収するなら、アップルかアドビかSUNの方がいい。 msしか知らないと気がつかないんだろうけど、svg連合としてmsを追い出せる。
Appleはjobsがいないと役に立たないが JobsがいるとGoogleが自由にできないので 買収する意味がない
しかしつまらんスレだな
オラクルがSUNのハードを手に入れてDB用にカスタムして売る時代なんだか、 ゴーグルが主張するクラウドのデフォ環境としてアップルのハードを手に入れるって考えれば、そうとも言えない。 jobsについて個人的には好きだけど、jobsのファッションに振り回されてるだけって言えなくもなく、それじゃいつまでたってもアップルは大きくなれない。 nextstepの時と同じくまた追い出して革新的な企業を立ち上げて勝手にやってくれてればいい。
>>712 jobsは老い先短いからappleは今が買い時
Chrome OS触ってみたがGoogleとしてはデフォルト環境は 完全にブラウザにするつもりなんだろ 特定のハードウェアとかOSとかにこだわらない気がする それにAppleのやり方はChrome OSとは対極にある
windows3.1/95のころはmsよりmacの方に未来があったんだよな… 企業規模もそんなに差はなく、市場だって、dtpとdosで住み分けてたんだから15年後にはアップルの方が大きくなる未来もあったはずなのに…なんでだろ?…
>>715 グーグルの眼中にあるのは、m68k,ppc,x86,x64じゃなくてarmですよ。
2009年現在では、ブラウザとかOSとかは実際は巨大アプリって位置づけでしかないんで(巨大アプレットって言った方がいいですかね)。
googleが作ってるOSやらブラウザはGoで作られてんの?
GoGoGoGo!!!!!!!!!!!!!! ごごごごごごごご!!!!!!!!!!!!!
Chrome OSはGoで書かれている! だったらカッコ良かったのに
プログラミングの話題がない
Googleの困ったちゃんな所は、優秀な人が多すぎて 中のツール間の連携が弱い事だな 作った人がバラバラなんだな。 公開されて、後で洗練されていく、か捨てられていくのどっちか。
>>717 だからこそGoもネイティブにしたんだろうな
再帰ってあれか。 「はるこさん、御飯はまだかのう‥?」 ってやつか。
ばらばら->民主党
>>685 永遠の厨二病です。
早めの治療をお勧めします(ある程度のレベルまで行くとOSなんてどうでもよくなる)。
>>695 はぁ?ないならcpp持ってきたら?
日本のプログラマーってお客様ばかりだな
アマグラマーですっ(キリッ
glamourではありません
730 :
デフォルトの名無しさん :2009/11/21(土) 18:56:42
>>716 アップルはOSとハードが一体であったこと
(当時は色んなメーカーが出してたワープロも消滅したよね)
それとCanonが(ry
731 :
デフォルトの名無しさん :2009/11/21(土) 18:59:32
初級者と上級者はM$の良さを理解しているんだよ 世の中分かったつもりでいる中級者はM$が大嫌い
おまえら! N88ベーシックの時代を思い出せ! 使ってるだけじゃだめなんだよ! 利用者全員がプログラマーにならなきゃ世の中は良くならない! そうだろうみんな!!
中級者は生産性を高めるソリューションを 馬鹿でも扱えるものだと見下して悦に入っているだけだからな 難解な道具をつかって上から下まで何でも出来る自分は他人とは違い高尚なものだと酔っているだけ
>>734 上から下まで何でもできるのはすごい人だと思います。
尊敬しちゃいます。
737 :
デフォルトの名無しさん :2009/11/21(土) 20:03:48
>>730 apple はともかく canon は NeXT にひどいことしたよね
今日もGoについて調べるのが億劫なおっさんしゃべり場と化してるな
10万行w
>>738 この流れが続くのはキツイな
スレ違いとか気にしない人だらけだしどうしたもんかね
もう少し時間がたてばいなくなるさ そういう人は話題性でここにいるだけだから
742 :
デフォルトの名無しさん :2009/11/21(土) 20:18:02
グーグル信者なんてそんなもんだろ。 時計とかカレンダーが動いてるってだけで喜んでるレベルなんだし。
公開されて1周間だから何か新鮮な「情報(informations)」を期待する根性の方がおかしい。
>>741 だといいね
既存の文書を読みながらまったり待つか
あのMLのクレームの量は一般人ならうつになるレベル 中の人だいじょぶかな
Google waveだと人間が少ない分キチガイがほとんどいなくて助かる
>>745 色んなレベルの人が自分勝手に書いてるよね。
もう少し静かになって欲しい・・・・
メール配信頻度を1日1回にまで落としたよ
みんなよかれと思ってやってんだよね…
749 :
デフォルトの名無しさん :2009/11/21(土) 20:39:28
なかのひとはいっぱいつれたとよろこんでいます
2chで鍛えられてるから結局JAPANESEが最強ですよね?!
GoといえばPenPointがな…
>>703 vmwareのユニティモードと一緒だな。
vmwareの方が軽い気がするけど。
VirtualBoxしか使ったことないわ
どうでもいいよ
どうでもよくないことって何さ
明日からgo触ってみる。 どの程度"使える"言語なのか試してみよう。
759 :
kyon :2009/11/22(日) 01:21:04
ここまでざっと読んだ。焼酎が進んだ。go、つっこみどころ満載だろうが、今後のための学習用言語としては、Scalaやよりおすすめかもしれない。常に何かが足りないと思われる言語は貴重。
>>754 vmwareってvboxと比べるとそんなに軽くて速いの?
761 :
kyon :2009/11/22(日) 01:26:40
ついでにwindowsマシンへのgoのインストールについて言っておくと、andlinuxはvistaとの相性に問題があることを知った(ネットワーク周りのドライバとの相性?)。
762 :
kyon :2009/11/22(日) 01:28:49
が、ひとたび、andlinuxが入っていれば、ほとんど立ち止まらずにgoは入るよ。ubuntuあたりを使うのが無難かもしれないが。。通りすがり失礼。
この言語の優れた特徴って何? って言われたらすごく困る言語だな 特に、Dより優れたところって何一つないんじゃないか? あえて言えば言語仕様が小さいということぐらい
>>760 boxの方が軽い
vmwは窓から捨てた
>>763-764 Googlle製がすぐれてるといって良いかどうかは疑問だが
みんなが知っているところが作ってるっていうのは
なぜか根拠の無い安心感がもたらされるらしいんだな
日本ではPython薦めてもなにそれ?Rubyじゃだめなん?って返事が返ってくる
Rubyのせいで日本はガラパゴス化すると思う
日本市場が世界の先行指標的な役割果たしてるから 日本で受け入れられなかったら諸々C系方言の一つとして埋もれてしまう危険性高いな
>>766 Pythonの宣伝でさんざ「Google言語」を謳っているのにそれはないわ
あとマーティンファウラーなんかもRubyをすすめてるし、
別にRuby人気が日本特有って訳でもないでしょ
ちなみにRuby厨と言われる前に言うが、
俺はRuby(とJavaScript)が嫌いだ
ガラパゴスという点ではJavaが最右翼な気がする
パイソンってブロック文 {print hello;}みたいなの書けるようになったの? いまだにインデントを強制されるわけ?
必要ないけどgoの行末に思わず;をつけてしまうプログラマは 多いだろうな。 どうも無いと落ち着かない。
パイソンって、ruby -e みたいに一行でシェルから起動するときどうするの?
python -c
任意のブロック化ができないなら一行で書けないからawkみたいに使えないし、使うことはないだろうな。
てす
なるほど、焦点をメディア管理に移したか・・・
>>771 C の struct 宣言で、}; とするのが気持ち悪かった人には吉。
781 :
デフォルトの名無しさん :2009/11/22(日) 18:32:38
>>771 慣れると、今度は ; の必要な言語に戻ったときに変な感じするぜ。
みんな飽きてきたころか
じゃあこれからだな func NewFile(fd int, name string) *File ファイル作るのにfd指定するってどういうことよって思考停止した俺 設計が興味深いわ
うぅ
Openがあるやん
仮想マシンにLinuxでも入れたほうがいいんじゃないか?
>>786 Mercurial入れないとダウンロードすらできないのか・・・
C#の方がよっぽど優れてるな Googleもこの程度なのか
どう考えてもDと同じくネタ言語
これってLimboNGなのかな?
引数の省略は出来ないんだな
Isuue 9 は関係者からは無視されたままだね
さっさとWindowsのGUIライブラリ作れ。
>>791 さんきゅ。
pkg/net/fd_mingw.go がないから、大事なところが動かなさそうだなぁ
>>796 今のところのままではcovコマンドとprofコマンドもコンパイルできないよ。
windows.go が整備されるまでどうでもいいなこれ
しかしwindowsナシでこの賑わいっつうのは結構すごいな これでwindows版が出たら・・・と思ったけど、新言語なんて触るヤツはlinux入れてるかw
なんでWindowsなんていう斜陽環境のこときにするんだ
>>800 msの主張では「全世界のPCを使ってる人はwindows os」っていういってますが、
このリサーチを盲信してるms信者が多いからじゃないですか?
ここでいうPCってのをx86に限定しちゃえば当然でしょうけどw
googleが作ってるOSもubuntu以下だろう
これ作った人たち 時代についていけず過去の人になったか
overloadくらいはいずれつくんじゃないのかね。
ウォーターフォールについていけずアジャイルの人に・・・
ウォーターフォールだとかアジャイルだとか、セミナー屋に洗脳された奴ばっかだな。 実際の開発はそんな型にはまったもんじゃないよw
自分で安全性は効率を把握できない人間はやたら流行の技術を取り込みたがる
実際の開発では出来る奴見つけてそいつに押し付ければいい
>>810 手柄を立てるには、最初に大枠を作って細部をほかの奴らに押し付けて自分は相談役に納まること。
くされシステム屋の匂いがするな。
創立10年になる会社です
ボスも、自分のアイデアが絶対正しくて違う意見の奴は敵みたいな考え方の持ち主だからマジ引いたわ。
そういう会社は潰れるよ
世の中そんな綺麗に潰れないからおかしなことなってんだろが
そうだね 正しい人がどんどん消されていくね(´・ω・`)
考えて見ると当たり前のことだけどな。 正しいったって力がなきゃ。 お父さんお母さんにずっと守ってもらって生きていく訳じゃないんだしさ。
>>817 違うって。
無能なイエスマンだけが残って詐欺集団に変わるんだよw
>>820 正しい=国益?(全体主義)
正しい=金を稼ぐこと?(資本主義)
正しい=ヒッピー(無政府民主主義)
正しい=合理的効率化(ハッカー) ←ココ
ツマラン
>>823 いや。この流れは一見日本ブラック企業の話題に見えるが、実は今のグーグルがやってることその物だと思わないか?
中途半端なプロジェクトをいくつも発表して、細部はオープンコミュニティーまかせ。コミュニティーの運営すらしないでボランティアに任せてほったらかし。手柄はグーグルが一人じめ。
日本法人は人の使い捨て激しいけどなぁ
だよな
>>825 「人の使い捨て」といわれている行為は団塊世代がリーダーになってから、
それまで自分たちがやってきた事と現代とのギャップが引き起こしたことだと思うなぁ。
高度成長期のやり方しか知らない団塊世代が同じようにしようとして失敗したわけだけど、
もうその団塊世代も引退したわけだから、プログラマの環境も少しずつよくなっていくと思うよ。
世の中にはとんでもない悪人が存在する。 彼らは絶対数が少ないから大したことはないけど、 一番数が多くてたちが悪いのはその悪人に追従する人間だ。 本当はいい子だけど悪いことするからたちが悪い。
ひろゆきと俺らみたいなもんか
830 :
デフォルトの名無しさん :2009/11/23(月) 18:55:35
>>824 Googleでは勤務時間の20%をコミュニティの活動に費すべし、というルールがあるらしいから
任せられたコミュニティのメンバーもGoogle社員が占めてるんじゃないかと
831 :
デフォルトの名無しさん :2009/11/23(月) 18:56:09
グーグルのバックにいるのはひろゆきだったのか!!
>>830 え?20%は、何か自由な開発じゃないの?
ひろゆきは偉大だなぁ
スレ全部読むのめんどくせー なんかスレ伸びてるけど進展あったん?
この騒ぎ、ひろゆきは今頃ほくそえんでるんだろうな(笑)
チャンネルという自由度の低いインタフェースを強制するくせに sync.Mutexでlock、unlockってアホとしか思えないんだけど これってどういうこと? CSPの良さが台無しでは? 偉い人のコメント頼む。
CSPだと理論重視で性能限界あるから諦めろ
>>832 何をするかを選んでよいという意味でしかないぞ
結果どうなってもいいということはない
簡単に言うと、人事評価の20%はその自由プロジェクトの成果で決まるわけだw
>>838 性能限界ってチャネル使ってる時点でたいした性能でるわけないじゃん。
CSPの検証性(へんな言葉かな?)を捨てているのなら中途半端にチャネルなんていらない。
lock、unlockさせるぐらいなら素直にpthreadのAPIでいい。
と思うわけだけど、goのチャネルのメリットってなんなのだろうか?
>>840 現状いろんなの実装しました〜(お花畑)
って状態で議論の余地なくね?
842 :
837 :2009/11/23(月) 20:38:12
調べてみるとLimboもCSPベースのようだから、 何か理由があってのこだわりだと信じたい。
cspってのは単なる宣伝文句でした。 想定しているハードと言いますか、設計自体がマルチコア向けなんで。
第五世代コンピュータだよ!!! GHC!!GHC!!
>>840 中途半端は悪くない
純粋〜だとか〜指向だとか、型にはまるのは良くない
847 :
デフォルトの名無しさん :2009/11/23(月) 20:48:06
昭和時代は自由な発想ってものが最良と考えられていました。
848 :
837 :2009/11/23(月) 20:49:31
>>843 > cspってのは単なる宣伝文句でした。
> 想定しているハードと言いますか、設計自体がマルチコア向けなんで。
具体的にGo!のどこがマルチコア向け?
チャネル?
何度の言うけどlock, unlockがいるチャネルって何がうれしいの?
煽ってるんじゃなくて本当に教えてほしい。
849 :
837 :2009/11/23(月) 20:52:43
>>846 >
>>840 > 中途半端は悪くない
> 純粋〜だとか〜指向だとか、型にはまるのは良くない
AでもBでもOKなマルチパラダイムならわかるよ?
でもGo!の場チャネルとMutexを組み合わせないと同期がとれない。
(全部、値渡しならそりゃチャネルだけでいいだろうけど)
Go!
あのGoogleがこの程度だったのか 所詮ネームバリューだけかってのがショック
値渡しでやれってことなんだろ
Erlangもある程度の大きさデータの場合 内部で参照渡し+lockしてるはずだから いいんじゃね?
同期とらなくてもいいような作りにすればいいんだよ
どの程度妥協するかは、IBM謹製のGCが入ると変わってくるでしょう。 JavaもIBMのおかげで実用レベルに達したわけだし
>>855 それって、msとボーランドのコンパイラが優秀だったからときいてるんだが?
857 :
837 :2009/11/23(月) 21:17:52
>>853 使ったことないから間違ってるかもしれないけど、
Erlangは純粋関数型言語じゃなかったか?
どういう処理なのかにもよるけど、 今時、64000byte(や32k)程度なら値渡しでもいいと思うよ。 たぶんポインタ渡しマンセーが抜けないのは、昭和時代にあった○○パラダイムの名残りなんだろうし。
それはどういう処理なのかにもよるんじゃないの
大量処理時にメモリコピーはコストが高すぎるだろ・・・
862 :
837 :2009/11/23(月) 21:29:47
>>858 そうなのか、さんきゅう
遅まきながらErlangに興味でてきた。
調べてみるわ。
lispとか関数型とか完全にソフト環境でしか触ったことしかないのもいるみたいだから少しわかりやすく言うと、 x86 sseとかだとfloat32 x4で4オペランド(つまり4x4の行列で64byte)が現状では当然のごとく値渡しなわけで、 ポインタ(4byte)が効率的ってわけじゃない。 それに一番大事なのはキャッシュアクセスが速度を決するいまの時代、ポインタでのアクセス、つまりヒープメモリアクセスに頼ること自体がもう時代遅れってこと。 32k byte(2^15)ぐらいなら2次キャッシュでも十分足りるから、今後10年は合理なパラダイムだと思う。
>>855 HotSpot は IBM 関係ないんじゃないの。
Animorphic チーム(今 Google で V8 をやってる所)の成果でしょ。
jitでしょ。nn3,nn4で数秒止まったjavaが、認められるようになったのは。 hotspotはjitの後のテクノロジーだし。
一行抜けてたけど、
>>863 はOOPじゃなくてCやGO!のような式指向言語のパラダイムによく当てはまるってこと。
ヒープを使うのは、OOPとGCのパターンで既に完成しているから、goはcとは遠い親戚だけどjava,c++は親戚じゃない。
>>865 HotSpot は HotSpot Compiler というくらいだから JIT だし、HotSpot の元ネタの
Strongtalk の VM も JIT だし、IBM に関係なく JIT はそれ以前から存在していたと
思うけど、IBM は何かしたんだっけ?
868 :
837 :2009/11/23(月) 21:52:00
>>863 パフォーマンスの観点で考えるなら帯域で考えないと意味がないよ。
また値渡ししていいかどうかは、コヒーレンシをとる必要があるかどうか
という観点も必要だよ。
869 :
デフォルトの名無しさん :2009/11/23(月) 21:55:33
なんかプロっぽいから背伸びしたのは分からないでもないけど、知らない用語はwikiで頑張って頑張って勉強してくらはいw
>チャネルとMutexを組み合わせないと同期がとれな
871 :
837 :2009/11/23(月) 22:11:48
3ー4年前にamdが、cpu命令はintel x86をインターフェイスapiとして統一しようって提唱してたけど これをgo(と言うかlang c==asm macroのように)がやってくれればいい。 つまり、x86命令コード(movとかのあれとかarith int,fpu,sseとか)の抽象化をgoがになえば いままでc+asm埋め込みでやってたのがgoに移行するから次世代c言語として完全に存在意義を得るだろうし。 ついでにマルチコアとか仮想vtとかもgoの言語仕様やライブラリで抽象化するってこと。 armもボリューム(スマート電話とか電子辞書とか)からすると32bit+2GHzぐらい十分で64bitなんか必要とされてないし、結局32bitsならintel,amdが歩んだそういう技術が実装されるんだろうから。 ms(xbox)のセンサー技術とか他に研究が一段落したいろいろな次世代UIからすれば、次世代ハードへのネイティブ・アクセス言語なのかなってかんじ。 実際のところ、pythonとかjava,c++haskellとかそういうネイティブ(ハード)に極力触らないような設計の言語とはあまり関係ないよ。 グーグルがどういう方針で言語設計し活用したいのかは謎だけど。
874 :
837 :2009/11/23(月) 22:22:20
googleが作るなら当然クラウド側でスケールする言語でしょと思うけど Go!は言語レベルでプロセス空間を超えることは考えていないね。 そこもこれからの言語として全然いけてないと思ってる。
Go言語酷い Go言語酷い 俺が作り直す
だれか Go を称揚するリストを作ってくれ。
どこから作り直せばいいぉ? VIPの俺にもわかるように指示をくれ
>>864 Javaの場合はVM最適化の話じゃなくて、
当初の予想と違ってサーバサイドで成功したわけじゃん。
これはIBMがサーバサイドJavaを推進したのが大きいんじゃないの。
まぁIBMのVMに過大な期待しないほうがいいかもしれないな。
Animorphicもずいぶん汚いコードで速度稼いでるみたいだし
879 :
837 :2009/11/23(月) 22:51:10
否定的なこと書いてすまん。 Go!の良さを納得させてくれる人希望。 小さいデータはチャネルで楽チン、大きいのはMutexで自分でやってくれっていうのは 現実的にはありのような気がしてきた。 が、それならMutexの部分ももう少し抽象化しろよと思うわけで。
>>879 Go!の良さ? Go言語と紛らわしいところかな。
>>879 データの大きさの問題じゃなくて
送受信がブロックするのを利用して同期をとるんでしょ
882 :
837 :2009/11/23(月) 23:18:43
>>881 スレを順に読んでもらえればわかると思うけどさ。
CSP本来ならそうだよ。
でもGo!にはMutexが用意されていて、つまりそれは
何でもかんでもチャネルで渡すのは現実的でないからだよね。
大きい小さいとあいまいに濁しているのはわざと。
とりあえずGoogleのサービスでなんか使ってみりゃいいのに。 Visual Studioの最大のお客さんがMS自身であるように。
>>873 なんか唐突だが、thx
よくわからん俺にはここ数十レスもっとも有益なレス
なんで型推論とデッドロック検出機構 つけなかったんだろう? 付ければプロト的な使い方できたのに
高階関数と普遍的なネストの概念もないから 関数型の特徴もないなあ
これ見たら、GoogleよりMSの方が技術が高いんだということがよくわかった .NETとGo比べたら大人と幼稚園児だな
仕事か趣味かの差だろ
googleはいつものように 野良Godに餌を撒いて、成果を収穫する気なんだろうなぁw
Go!ってさ別言語だよね?
891 :
837 :2009/11/23(月) 23:46:56
>>885 Mutexあるから静的にデットロック検出できないよね。
>>887 .NETと比べるならAxumだね。
あっちは非常によく考えられていて気に入ってる。
.NETじゃなければいいのにw
比べるべきはCだろ。 なんか見当違いな批判が多すぎる気がする。
>>873 絶対やると思っていたからやらなかった
でもamd64版はまだなのね
>>892 CとC++の両方で実装可能なものがほぼ全て可能で、
その上で、一部でも多少でも読み書きしやすいってなら十分過ぎるかもな
ホントにそうなら良かったんだけどな…
お前らが不満に思ってGoのソースを改編し始めたらGoogleの思うつぼ 虚像企業がボランティアの力を借りてMicrosoftと闘おうとしているものにわざわざ協力する必要はない
でも奉仕精神旺盛な天才的馬鹿達が集まってGoogleを繁栄させていくのが現実 Googleさんウハウハですな
いまいちその張り付き方の意図がわからない
>>897 だとしても、その課程は"オープン"なんだろ?別に誰も得はしても損はしないと思うのは
Googleマジックなのかな?
まあ何かの間違いでMSが潰れたり今以上にひねくれたりしたら、カオスな世界になる可能性はあるが。
型推論のメリットってなに?
コードが簡潔になる
読みにくくなってるだけでは?
デバッグっつーかテストコード書きまくってリリースが遅れる罠
何か勘違いしてるグーグル社員が沸いてるから一応言っとくけど、 グーグルってのは単なる検索サービスであり、インターネットの広告最大手企業ってだけだよ。株式市場上では。 アンドロイドが成功するかどうかが本命だけど、HTML5とかやってないでさ、webの方が一段落したらそのうちMSが攻撃仕掛けてるからそっちの方を警戒した方がいいと思うよ。 例えばMSとアップルなら売上規模を除けば比べるところは多いけど、 MSとグーグルを比べたら検索ポータル以外はほとんどMSに負けてる。 それにグーグルは何かを作ってるわけじゃなくてオープンプロジェクトを名前を変えて自分の手柄にしてるだけ。 アンドロイド自体ももともとjvm仕様の実装なだけだし。
板違い
googleの兵糧攻めに合い、officeとwindowsの収益が大半なMSが危機を感じて反撃中。
>>907 お前は間違ってる
GoogleはAndroidだろうとiPhone・Windows Mobileだろうと
携帯機で検索をたくさん使ってもらえるようになれば充分なんだよ
そりゃ制限のないAndroidのほうが自社サービスとの連携が強いが
一番重要なのは検索をしてもらった広告収入を増やすことだ
なんかスレがいつの間にか見えない敵と戦う人ばっかりになってるのはどゆこと?
windows osって実際3万以下じゃん。 3万も出せないってわけじゃないよな。 スキルがあれば中国版(ダウソもの)もあるわけでしょ。 一般人だとしても、note pcなら最新win os+officeつきで7-9万ぐらい。 たかが3万の差でそこまでひねくれることもないと思うよ。 msはね、dotnet辺りからゲイツを追い出して社の方針をかえたから、金(それも3万ぐらい)さえ払えばかなり快適だったりする。 つまりグーグルはいつまでも検索ポータルのままじゃ、MSには勝てないし、SUNと同じく7年後につぶれる(買収される)ってこと。
一瞬コードが3万って意味かと思って 頭おかしいんじゃないかと思ったわw
Goの話以外はよそでやってよ
>>911 思考回路が不思議なんだよな。
技術面で言えば Go は Google だからどうだという言語でもないのにね。
D++言語にあきてGO!に期待を込めたgoogle信者が居ついちゃってるんだろう。 ここまでレスは、関数型言語と言うかerlag信者がgoを何かと勘違いしてるだけだったし。 正式リリースがでるまで、1年ぐらいはこの調子なんじゃないの?
googleと切り離して考えろと言うのが無理な話だろ プログラミング言語自体は無数にあるわけで、その辺の高校生が作ったような言語が無視されて これが注目される理由は一つしかないよ
仮にGoogleが作ってなくても開発者があのメンツなら ここまで行かなくとも相当注目されただろ
>>918 そうなんだよね。
意味不明に Google を叩いてる人はきっと Rob Pike も
Ken Thompson も知らないんだろうね。
技術を知らないと Google だから注目されてると思うのかな。
>>919 注目を浴びる存在というよりも、古代の化石(レガシー)って意味でなら知ってるが?w
>>920 君が不勉強だという話を俺に聞かせてどうするんだ
しかしつまらんスレだな
>>919 意味不明にって、googleが叩かれる理由なんていくらでもあると思うけど
C・C++に置き換わるという謳い文句でgoogleがGoを世に出したのは事実でしょ
それすら知らないの?
Googleって広告代理店みたいなものだよね
違う、純粋な広告代理店だ
>>923 技術者なら、自分で要素技術を調べてマーケッターの言う事をスクリーニングできるもんだ。
それすらできずに叩いているのはこの板的には意味不明だよ。まさに板違い。
広告ビジネスは終わる
これくらい余裕とか、出来て当然とか 見飽きた
意見があるならレスアンカー付けなよ
じゃあ何かコードでも提示してみれば(笑)
世論掌握だけが上手くて実力のない組織のバブルはいつか弾けるはずなんだけど Googleは反社会的な手法で永遠に夢を見させながら膨張を続けそうなのがムカツク
932 :
デフォルトの名無しさん :2009/11/24(火) 02:01:37
Googleは何の技術力もない癖にMicrosoftを見下しているからな 世の中もそんなGoogleをチヤホヤしているし
934 :
デフォルトの名無しさん :2009/11/24(火) 02:03:09
真面目に努力している組織が評価されないで 不正を働いている組織に金儲け目的の人が群がるような 間違った世の中の流れを皆の力で変えよう
937 :
デフォルトの名無しさん :2009/11/24(火) 02:17:53
再帰は出来ないのかな?
goに絡んでるかわかんないけど、python、rubyが伸びてきた頃は言語自体の性能は2の次、記述力重視みたいな傾向があったけど 一年くらい前からちょっと雰囲気が変わってきたな blogとか見てても表現がシビアになってきてる感じがする リンク辿って2006年くらいに書かれた内容とかみると、なんか呑気だなって感じを受ける やっぱ富豪的ってコンセプトはうまくいかなかったのかな
>>938 その頃は消費電力なんかあんまり気にしてなかっただろ?
増井が言ってた富豪的って意味を誤解してる奴が多すぎる
増井はあくまでもヒューマンインターフェース方面の人間だから、 たとえばサーバやスパコンで動くプログラムのことを言ってるわけじゃなくて、 人間にとっての見た目や表現方法について言っているだけだよ。
クラウドが発展してくれば、データ処理はサーバ側で行い、 クライアント側では高度なデータ処理を行わず情報表示だけを行うようになる。 情報表示といっても3Dやら何やら使ったら結構なリソース食いそうだけど、 今までのGUI程度ならさほど処理能力も要らないから 富豪的プログラミングのコンセプトと相反することはないよね。
944 :
デフォルトの名無しさん :2009/11/24(火) 03:14:31
ここ、何のスレ?w てか、増井ってだれだよwwww
>>944 増井俊之
「富豪的プログラミング」って言葉を作った人
Appleを追い出された人だっけ?
goはchromeに組み込まれてるんだっけ? だったら将来的にgoにwebインターフェースをやらせる予定ってわけじゃん。 ajaxの進化系?通信部分がjavascript以上に最強っぽいw
>>943 いずれ車は空を飛ぶ時代が来るとか言っているのと同じだな
ブラウザを介して動画を見ようと思う人はいるかも知れないけど
仕事で表計算を使うのにクラウドでやろうなんて思う人はいない
>>949 でも実際google documentは結構使い物になるしねw 機能強化してくれたらうれしいな。
リソースプールとしてのクラウドは確実に社会に浸透してるよ。
amazon ec2みたいな基盤も出来上がってきてるから、いろいろやりやすくなってきてる。
ブラウザなんかその典型だよね。 メモリ管理をまともにしてなかったブラウザはメモリバカ食い動きモッサリで嫌われ、 変わりにアセンブラレベルでチューニングされたJSエンジンが持てはやされるわけで。 GoはGC持ってる時点でC/C++の代わりにならないよ。 それにGCあろうが商用レベルのもの作るときには結局メモリ管理って必要なんだよな。
>>951 ポインタもあるからgcに全部お任せにしなくても良いようにできてるよ。
富豪といえばGoのinterfaceのダックタイピングだな。 代入の度に関数テーブルをサーチするってなんだよそれw Cの代わりになんて無理だわ。
957 :
デフォルトの名無しさん :2009/11/24(火) 03:51:32
連投支援age
連投支援sage
今回のグーグル社員のレベルは、このスレ的にはかなり低い。 あと50スレぐらいだからその調子で埋めてくれてもいいし、今後は隔離スレ立てて他でやるってくれるか?
GCが夢のメモリ管理技術だと思ってる奴が多いよね。 明らかに安全に開放できる不要なメモリだけを自動開放する技術なのに。
GC実装できるスキルがあればこんな糞スレでレスなんかしないだろうな。
セミコロンがいる場合といらない場合がよく分からないから 結局付けちゃう・・・・
>>962 セミコロンは文のセパレータ
でもってトップレベルのconstやfuncなんかの末尾には不要
でも省略するのキモイから結局付けちゃう
>>953 俺もそれ気になってた。
実行時に型がInterfaceを満たすかチェックされるんだよね?
それってコストが大きいような気がする。
極端だけどInterfaceに何百、何千とメソッドが定義されていても
全部照合するんだよね?
それとも一回チェックした型とInterfaceの組の合否はキャッシュされるのかな。
>>964 > 実行時に型がInterfaceを満たすかチェックされるんだよね?
リンク時じゃなかったっけ?
966 :
837 :2009/11/24(火) 12:55:07
>>964 キャッシュはやってるかもね。
Rubyもメソッドのキャッシュが有効だったし。
>>965 リンク時は無理じゃね?
型あり言語なのになぜinterfaceだけダックタイプにしたのかよくわからん。
型の不一致はコンパイル時にエラー出るほうがうれしい。
普通にコンパイル時に型チェックしてるし 実行時の型チェックは type assertion したときだけでしょ
go-windowsってまだ80回しかダウンロードされてないんだね。 意外と不評?
オフィシャルのinstallページからリンク張ってるわけでもないし 存在に気がついてないんだろう
囲碁のゲームじゃないのか
>>938 C10K問題がついに誰でも遭遇しうる現実の問題となってきたから
あとはデュアルコアあたりまえ、メニーコア時代がサーバサイドでやってきつつある状況で
プログラミングに求められる条件が変化しつつあるんでないか
クラスベースがついに否定されたから オブジェクト指向に求められる条件が変化しつつある。
>73がFizzBuzzになってないのに突っ込みがない
クラスベース否定ってどういこと? ソースがあるなら知りたい。
キーワードにclassがないからそう思っちゃったんじゃねw
C++のクラスはPythonのクラスになれないし ある言語のクラスが別の言語のクラスを否定するのは 最初から分かってた筈なんだが ついに現実の問題となってきたんだろう
ソースに互換性無いんだからどうでもいいと思うんだが
>>981 goはどっちのコンパイラ使った?
できれば両方試してもらえると嬉しいな。
>>977 継承による差分プログラミング面倒くせって話じゃないの
>>982 64bit版のUbuntuなので6gを使いました。
gccgoはコンパイルに時間がかかるのでインストールしていません。
gccgoはバックエンドがgccで、最適化はより優れていると思いますので、
たぶん、少し速くなるかもしれませんね。
試してみたいと思います。
>>975 JavaScriptのことも思い出してあげてください
>>984 了解です。これに関しては6gのほうが速いかも…と思ったんですが、
最適化にもよるのでそのあたりの傾向がわかるといいな、と。
だいたい同じスペックの実機32bit うちではgoの方が速い感じなんだけど erlang使ったことないのでなんか違うのかなぁ 計測用のshスクリプトくれ
>>919 たとえば、デニス・リッチーの作った新言語もあるんだけど
君知ってる?
Googleの名前がなきゃその程度なんだよ
今日もこの流れか
Limboのことかね? まあRob Pikeの方が主要メンバーだけど。
>>991 Limbo ならリッチーの作った新言語なんて言い方はしないと思うけどなあ。
それに、このスレでも Limbo の話題は既出だよ(多分、最初に言及したの俺だし)。
LimboよりGoの方が注目されてるのは確かだな
実際googleが発表したんだから沢山ニュースが出たんだろ。一般向けにもだぞ?ありえないだろ それが関係ないとでも言いたいのかよ、頭おかしいんじゃないの
こういうタイプがむしゃくしゃして秋葉原無双とかやっちゃうのだろうか
>>988 さんはまだかな。
これで Limbo の話だったら笑うけど、
>>988 さんはその程度じゃないはずだ。
>>997 はこのスレに常駐してるらしいけど、どの程度でこんな便所の落書きに貼りついてんだ
ホントに何がしたいのか分からない
>>987 ↓のシェルスクリプトでプロセス数M 10000〜100000、メッセージ数N 100固定、実行時間 の順で出力します
非常に汚いので恥ずかしいものですが、gnuplot用に書いたものです。
#!/bin/sh
for i in `seq 10000 10000 100000`
do
a=`erl +P 200000 -noshell -eval 'io:format("~w", [timer:tc(ring, start, ['$i', 100, "hello"])]).' -s init stop | cut -d',' -f1 | cut -c2-`
b=`perl -e 'printf "%f", '$a'/1000000;'`
echo $i $b
done
>>988 の言ってるのがLimboだろうがそうでなかろうが、
Googleの名前でGoが売れたことは変わらんよ
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。