Li-Fan Chen says to YSITD
你同一個功能的 function 在不同 type 上面做一樣的事情不是重複的 code 是啥,他唯一差別就只是針對那個 type 有做優化或檢查或轉型之類的不同而已,原則上邏輯不會改變啊