Penafian: Saya hanya bermain dengan Go untuk satu hari sekarang, jadi ada kemungkinan besar saya telah melewatkan banyak hal.
Adakah yang tahu mengapa tidak ada dukungan nyata untuk generik / templates / whatsInAName di Go? Jadi ada generik map
, tapi itu disediakan oleh compiler, sementara programmer Go tidak bisa menulis implementasinya sendiri. Dengan semua pembicaraan tentang membuat Go se-ortogonal mungkin, mengapa saya dapat MENGGUNAKAN tipe generik tetapi tidak MEMBUAT yang baru?
Terutama ketika datang ke pemrograman fungsional, ada lambda, bahkan closure, tetapi dengan sistem tipe statis yang tidak memiliki generik, bagaimana cara saya menulis, yah, fungsi generik tingkat tinggi filter(predicate, list)
? OK, daftar Linked dan sejenisnya bisa dilakukan dengan interface{}
mengorbankan keamanan tipe.
Karena pencarian cepat di SO / Google tidak mengungkapkan wawasan apa pun, sepertinya obat generik, jika ada, akan ditambahkan ke Go sebagai renungan. Saya percaya Thompson melakukan cara yang lebih baik daripada orang-orang Java, tetapi mengapa tidak menggunakan obat generik? Atau apakah sudah direncanakan dan belum diterapkan?
interface{}
mengorbankan keamanan tipe statis . Namun ini adalah keluhan yang agak aneh untuk dibuat ketika menyebutkan Skema adalah paragraf berikutnya, karena Skema biasanya tidak memiliki pemeriksaan tipe statis.