Tags:
Go

แม้ว่าภายในกูเกิลนั้นจะใช้งานภาษา C++ และ Python อย่างหนักก็ตาม แต่ทั้งสองภาษาก็ยังมีข้อจำกัดอยู่บางส่วน ภาษา C++ นั้นต้องเสียเวลาในการคอมไพล์นานในการแก้ไขแต่ละครั้ง ส่วนภาษา Python นั้นมีปัญหาเรื้อรังในการรองรับมัลติคอร์ เพื่อแก้ปัญหานี้กูเกิลจึงเสนอ "ทางสายกลาง" ให้กับเราๆ ท่านๆ ด้วยภาษา Go

ภาษา Go เป็นภาษาที่ต้องการการคอมไพล์ เช่นเดียวกับภาษา C++ แต่มีข้อดีกว่าหลายประการคือ

  • คอมไพล์เร็วมาก กูเกิลโชว์ให้ดูว่าการคอมไพล์โค้ดนับแสนบรรทัดทำได้ภายใน 10 วินาที บนโน้ตบุ๊ก
  • มีระบบจัดการหน่วยความจำในตัว ไม่ต้องจัดการคืนตัวแปรเอง
  • มี type เช่นเดียวกับ C++
  • รองรับมัลติคอร์เต็มรูปแบบ สนับสนุนการใช้ Coroutine แบบเดียวกับ Erlang

ดาวน์โหลดใช้งานได้เลยตอนนี้ ที่ Go

มันเกี่ยวอะไรกับวีซ่าเปล่าหว่า

ที่มา - ArsTechnica, InformationWeek

Comments

By: BlackMiracle
ContributorAndroidWindows
BlackMiracle's blog
on 11/11/09 7:34 #136802 toggle
BlackMiracle's picture

น่ายินดียิ่งนัก


Pitawat's Blog :: บล็อกผมเองครับ

By: spata
spata's blog
on 11/11/09 8:15 #136806 toggle
spata's picture

งานนี้ พี่ท่านทำภาษาเองเลย

By: spata
spata's blog
on 11/11/09 8:17 #136807 toggle
spata's picture

แล้วความเร็วเวลารันเท่า c++ ไหมนี่

By: put4558350
ContributorAndroidUbuntuWindows
put4558350's blog
on 11/11/09 10:00 #136827 Reply to:136807 toggle
put4558350's picture

น่าจะขึ้นอยู่กับการเขียนด้วยแหละครับ

... แต่อย่างน้อยก็น่าจะเร็วกว่า Python เพราะรองรับมัลติคอร์

By: boonkhao
ContributoriPhoneBlackberryUbuntu
boonkhao's blog
on 11/11/09 8:20 #136808 toggle
boonkhao's picture

สงสัยว่าวีซ่าอะไรเหรอครับ

แต่น่าสนใจดีว่าจะลองซะหน่อย

By: theoneox
Android
theoneox's blog
on 11/11/09 8:29 #136810 Reply to:136808 toggle
theoneox's picture

ผมก็สงสัยเหมือนกัน

อ่านๆดูมันไม่ค่อยเกี่ยวกับ Python เท่าไหร่เลย

By: kicub2
Android
kicub2's blog
on 11/11/09 8:43 #136811 Reply to:136808 toggle
kicub2's picture

55 มันเป็น คำโฆษณาของบัตร VISA ครับ GO

By: mnk2551
AndroidSymbianUbuntu
mnk2551's blog
on 11/11/09 8:43 #136812 toggle
mnk2551's picture

สั่งซื้อหนังสือ python มายังไม่ได้อ่านเลย...
...ต้องหาหนังสือเล่มใหม่มาอ่านอีกแล้ว.


tue2551

By: b98se
AndroidWindowsIn Love
b98se's blog
on 11/11/09 8:48 #136813 toggle
b98se's picture

สักวันเราคงขาดอากู๋ไม่ได้

By: tomazzu
Windows PhoneBlackberrySymbianUbuntu
tomazzu's blog
on 11/11/09 8:58 #136816 toggle
tomazzu's picture

เหอ ๆ ต้องลองซะแล้ว


http://tomazzu.exteen.com

By: lastone
Android
lastone's blog
on 11/11/09 9:33 #136820 toggle
lastone's picture

อ่านชื่อ url เว็บ

http://golang.org/ --> โกเล้ง

By: javaboom
WriteriPhone
javaboom's blog
on 11/11/09 9:45 #136823 toggle
javaboom's picture

เมื่อไม่นานมานี้ ผมเห็นที่ทำงานพูดถึง golang แต่ผมเพิ่งทราบว่าเป็นกูเกิล กูเกิลน่าจะผลักดันได้แรงกว่า Erlang หรือเปล่า น่าสนใจครับ


My Blog

By: lew
FounderJusci's WriterMEconomicsAndroid
lew's blog
on 11/11/09 9:48 #136824 Reply to:136823 toggle
lew's picture

เท่าที่ผมอ่าน document ดู

ผมว่ามันเป็นวิญญาญ Erlang เอามาสิงอยู่ใน Syntax แบบ C/C++ อ่ะครับ


LewCPE's Google+

By: javaboom
WriteriPhone
javaboom's blog
on 11/11/09 17:29 #136918 Reply to:136824 toggle
javaboom's picture

Erlang เป็นภาษาที่น่าสนมากครับ แต่ผมก็แปลกใจเหมือนกันว่าทำไม developer ที่ทำงานเกี่ยวกับ HPC (ที่ผมรู้จัก) ไม่เห็นมีใครใช้ Erlang เลย ส่วนใหญ่ยังใช้ที่เป็นไลบรารีมากกว่าอย่าง TBB กับ OpenMP และที่ยังไม่ทิ้งเลยก็ MPI และก็ตอนนี้เริ่มมีให้เห็นเพิ่มทีละนิดคือ CUDA และก็ Hadoop (แต่ Hadoop เหมาะกับมัลติคอมพิวเตอร์มากกว่า)

หรือว่าในแง่ learning curve แล้ว เขาเสียเวลาเล่นไลบรารีที่วิ่งอยู่บนภาษาที่คุ้นเคยมากกว่าเล่นภาษาใหม่อย่าง Erlang ??? อย่างไรก็ดี ผมมองว่าการเขียนโปรแกรมแบบ HPC (เช่น มัลติคอร์ / มัลติเทรด / แบบขนาน) นั้น learning curve มันหนักตรงการศึกษา programming model มากกว่า เพราะ Erlang และ Golang รวมไปถึงไลบรารีที่ผมกล่าวข้างต้นต่างมี programming model สำหรับการพัฒนาโปรแกรมแบบ HPC เฉพาะตัวของมันเอง ดังนั้น developer น่าจะสนใจที่ programming model ที่ตนถนัดหรือเห็นว่ามันง่ายมากกว่า ดังนั้น ถ้า Golang มี programming model ที่เข้าใจได้ง่าย พร้อมกับภาษาที่เป็นที่คุ้นเคยอยู่แล้ว มันก็น่าสนใช่น้อย ... ผมเคยเสียเวลาเล่น Cell SDK มา คิดว่าน่าจะง่าย แต่พอเอาเข้าจริงๆเสียเวลามากกว่าเขียน MPI อีกครับ


My Blog

By: lew
FounderJusci's WriterMEconomicsAndroid
lew's blog
on 11/11/09 17:51 #136925 Reply to:136918 toggle
lew's picture

ผมว่า programming model มันไม่ต่างกันมากนะครับ coroutine+channel แต่ที่ผมขัดใจ Erlang มากๆ คือ Syntax แปลกประหลาดกับ pattern matching ที่ผมไม่เห็นภาพว่าทำไมต้องทำอย่างนั้น

พยายามมาสักพัก หมดแรงไปเรียบร้อยครับ


LewCPE's Google+

By: javaboom
WriteriPhone
javaboom's blog
on 11/11/09 18:49 #136934 Reply to:136925 toggle
javaboom's picture

น่าลองจริงๆครับ แต่งานเข้าตลอดเลย


My Blog

By: chakrit
ContributoriPhone
chakrit's blog
on 11/11/09 21:37 #136966 Reply to:136824 toggle
chakrit's picture

+1 ... Syntax มันดูพิกลๆ ... ผมดู for loop แล้วนึกถึง Pascal ด้วยซ้ำ -*-

By: khajochi
WriteriPhoneIn Love
khajochi's blog
on 11/11/09 10:31 #136836 toggle
khajochi's picture

อ่านในเว็บแล้วสับสน จะ C ก็ไม่ C จะ python ก็ไม่ใช่ บางอย่างเขียนแบบ C บางอย่างเขียนแบบ python .. งงวุ้ย


แฟนพันธุ์แท้สตีฟจ็อบส์ | MacThai.com

By: meawwat
ContributoriPhoneAndroidSymbian
meawwat's blog
on 11/11/09 10:56 #136844 toggle
meawwat's picture

สุดยอด น่าสนใจเป็นอย่างยิ่ง

By: adente
ContributorSUSESymbianWindows
adente's blog
on 11/11/09 11:48 #136858 toggle
adente's picture

เอ้าแล้วสิ มี OS ของตนเอง ตอนนี้จะมีภาษาของตนเองอีก

นี้อาจเป็นนาทีทองของโอกาสแห่งการเรียนรู้สิ่งที่อาจจะเป็นนวัตกรรมในอนาคต

By: ruok191
ruok191's blog
on 11/11/09 12:33 #136865 toggle
ruok191's picture

แล้วเมื่อไร จะมี tool ที่เป็น RAD แบบ visual studio

คงใกล้เข้ามาแล้วนะ

เวลาทำอย่า ให้ น้อยหน้า เขาละ

ให้เร็ว ก็ Take Team Boland มาเลย

By: mr_tawan
ContributoriPhoneAndroidWindows
mr_tawan's blog
on 12/11/09 22:55 #137122 Reply to:136865 toggle
mr_tawan's picture

เห็นว่าโดน MS ดูดไปก่อนหน้าแล้วไม่ใช่เหรอครับ หรือจำผิด :P


By: meawwat
ContributoriPhoneAndroidSymbian
meawwat's blog
on 11/11/09 13:14 #136869 toggle
meawwat's picture

นึกขึ้นได้อย่างนึง

เหมือนเคยได้ยิน google บอกว่าจะช่วยพัฒนา python ให้เร็วขึ้นกว่าเดิม แบบนี้ไม่กลายเป็นว่ามาพัฒนาภาษาใหม่แทนรึครับ

By: lew
FounderJusci's WriterMEconomicsAndroid
lew's blog
on 11/11/09 13:28 #136874 Reply to:136869 toggle
lew's picture

โครงการนั้นก็ยังอยู่ครับ

จริงๆ แล้วส่วนของ Go นี่แทบจะไม่เกี่ยวกับ Python เลย ผมอ่านๆ แล้วมันกลายเป็นการเอา Erlang มาทำให้เป็น C-Like Syntax มากกว่า


LewCPE's Google+

By: panther
ContributorAndroidUbuntuWindows
panther's blog
on 11/11/09 15:27 #136898 Reply to:136874 toggle
panther's picture

ถ้าแบบนั้นแสดงว่าชื่อภาษายังมาจากชื่อบริษัทเหมือนกันเลยนะครับ

ERicson LANGuage กับ GOogle LANGuage

By: ABZee
ABZee's blog
on 11/11/09 18:18 #136930 Reply to:136874 toggle
ABZee's picture

แค่บังคับ type ก็หมดความเป็น Python ไปเยอะแล้ว


LongSpine.com

By: boonkhao
ContributoriPhoneBlackberryUbuntu
boonkhao's blog
on 11/11/09 17:04 #136915 toggle
boonkhao's picture

ยัง install ไม่ได้เลยตอนนี้ ใช้ Ubuntu 8.04 ครับเลยยังไม่ได้ลอง ใครลงแล้วหรือลองแล้ว แนะนำหน่อยนะครับ

By: 9rockky
AndroidWindows
9rockky's blog
on 11/11/09 17:54 #136926 toggle
9rockky's picture

ผมนึกถึง PSP


CCCP

By: mossila
iPhoneWindows PhoneAndroidBlackberry
mossila's blog
on 11/11/09 21:55 #136971 toggle
mossila's picture

google ใช้ mac


Moss 's blog

By: kobkrit
ContributoriPhoneAndroidSymbian
kobkrit's blog
on 11/11/09 22:44 #136975 toggle
kobkrit's picture

น่าสนใจมากๆครับ อย่างงี้ขอลองซะหน่อย

By: PH41
ContributorBlackberryUbuntuWindows
PH41's blog
on 12/11/09 0:13 #136985 toggle
PH41's picture

มาดูความก้าวหน้าของพี่กู

By: luckyman
ContributorRed HatSymbianWindows
luckyman's blog
on 12/11/09 2:38 #137000 toggle
luckyman's picture

คุ้นชื่อเยอะเลย

  • Ken Thompson
  • Rob Pike
  • Robert Griesemer
  • Russ Cox

แถม revision แรกสุดยังเป็น hello world ภาษา B

changeset:   0:f6182e5abf5e
user:        Brian Kernighan <bwk>
date:        Tue Jul 18 19:05:45 1972 -0500
summary:     hello, world

changeset:   1:b66d0bf8da3e
user:        Brian Kernighan <bwk>
date:        Sun Jan 20 01:02:03 1974 -0400
summary:     convert to C

changeset:   2:ac3363d7e788
user:        Brian Kernighan <research!bwk>
date:        Fri Apr 01 02:02:04 1988 -0500
summary:     convert to Draft-Proposed ANSI C

changeset:   3:172d32922e72
user:        Brian Kernighan <bwk@research.att.com>
date:        Fri Apr 01 02:03:04 1988 -0500
summary:     last-minute fix: convert to ANSI C

changeset:   4:4e9a5b095532
user:        Robert Griesemer <gri@golang.org>
date:        Sun Mar 02 20:47:34 2008 -0800
summary:     Go spec starting point.
By: lew
FounderJusci's WriterMEconomicsAndroid
lew's blog
on 12/11/09 2:52 #137001 Reply to:137000 toggle
lew's picture

โอ้โห ปี 72


LewCPE's Google+

By: shikima
Windows PhoneAndroidUbuntu
shikima's blog
on 16/11/09 18:05 #137791 toggle
shikima's picture

Windows ก็รอกันต่อไป


CMDEVHUB

เขียนเอามันส์ ลองเข้าไปดูความมันส์ได้ครับ