سلام دوستان، معمولا یکی از کارهایی که خیلی دوست دارم و در عین حال به عمیق شدن دانشم خیلی کمک میکنه اینه که فارغ از فضای مجازی پیرامونم که پر شده از مطالب کاملا سطحی و بی ارزش، سعی می کنم برم دنبال آدمایی بگردم که واقعا از نظر علمی و تخصصی خیلی جایگاه بالایی دارن و در عین حال دانششون رو با دیگران به اشتراک میذارن.
پیدا کردن اینجور آدما خیلی سخته، چون اونا برای دیده شدن مطلب نمینویسن و براشون هم کمیت مخاطبین مهم نیست، خیلی اوقات اینطور آدم هارو اتفاقی پیدا میکنم ولی وقتی پیداشون میکنم سعی می کنم هر آنچه که ارائه دادند رو برای خودم جمع آوری کنم، حتی اگه نتونم در لحظه همه مطالب رو بخونم سعی می کنم با یه فعالیت جمع آوری دقیق همه چیز رو برای خودم ایندکس کنم، خیلی وقت ها پیش اومده در یه زمان دیگه ای اون مطلب به شدت به کارم اومده
افسوس که به خاطر مشغله های کاری خودم فرصت کمی دارم برای پرداختن به این دست فعالیت ها، اما اگه شما فرصتشو دارید حتما سعی کنید مطالبشون رو دنبال کنید که بی نهایت به عمیق شدن دانشتون کمک میکنه
اینارو گفتم که امروز آقای Ian Lance Taylor رو به شما معرفی کنیم، ایشون از اوایل دهه ۹۰ میلادی روی gcc کار میکنه و کسی هست که gccgo رو از همون سال ۲۰۰۹ شروع کرده به ساختن.
اگه نمیدونید gccgo چی هست میشه gcc frontend for go language، که میشه کامپایلر غیر رسمی go روی gcc
در اینکه عملکرد gccgo بدتر از خود gc رسمی گولنگ هست شکی نیست، اما چون عملکرد gccgo بدتره دلیل نمیشه در موردش نخونید، با دنبال کردن مطالب و باگ و چالش هاش، کلی مطلب مفید در مورد زبان گولنگ و عملکرد کامپایلرها یاد میگیرد.
برای اطلاعات بیشتر در مورد gccgo میتونید لینک های زیر رو ببینید
https://gcc.gnu.org/onlinedocs/gccgo/
https://meltware.com/2019/01/16/gccgo-benchmarks-2019.html
https://stackoverflow.com/questions/25811445/what-are-the-primary-differences-between-gc-and-gccgo#:~:text=Compared%20to%20gc%2C%20gccgo%20is,the%20processors%20that%20GCC%20supports.
https://golang.org/doc/install/gccgo
در نهایت میخوام پست های آقای Ian Lance Taylor که در مورد golang هست رو به شما معرفی کنم، اکثر پست ها مربوط به سال های ۲۰۰۹ و ۲۰۱۰ هست و با خوندنش دید بهتری نسبت به go internal خواهید داشت قطعا.
Go
https://www.airs.com/blog/archives/273
Go Channels
https://www.airs.com/blog/archives/275
Go Interfaces
https://www.airs.com/blog/archives/277
Go Interface Values
https://www.airs.com/blog/archives/281
Go New/Make
https://www.airs.com/blog/archives/283
A GCC Frontend
https://www.airs.com/blog/archives/287
Generics
https://www.airs.com/blog/archives/291
Go Linkage Names
https://www.airs.com/blog/archives/309
Thread Sanitizer
https://www.airs.com/blog/archives/321
Signed or Unsinged
https://www.airs.com/blog/archives/327
Software Paradigms
https://www.airs.com/blog/archives/342
Container Models
https://www.airs.com/blog/archives/349
Destructors
https://www.airs.com/blog/archives/362
gccgo panic/recover
https://www.airs.com/blog/archives/376
GCC Summit
https://www.airs.com/blog/archives/435
Versioning
https://www.airs.com/blog/archives/442
Gccgo in GCC
https://www.airs.com/blog/archives/448
Race Conditions
https://www.airs.com/blog/archives/482
Go experience report: the append function
https://www.airs.com/blog/archives/559
#the_right_person
#golang #gcc
#go_internal
@gocasts
Post #70
1.63K