Už jen ten princip "interface" mi přijde divnej v procedurálním jazyce. U OOP lze interface chápat jako množinu protokolů které implementuje objekt. V procedurálním jazyce tak maximálně fieldy v struktuře. A co když de o číslo? String? Bool? Ty pak nemaj nic co by šlo považovat za interface.
Jakto že číslo nemá interface? A co jsou operátory +, -, *, / ? Vzduch?
V procedurálním jazyce jo.
OK, dejme tomu.
Vzhledem k tomu, že interface jsou záležitost typového systému, a nikoliv paradigmatu (OOP vs Procedural vs Functional), tak bych v tom principielně problém neviděl. Pokud je GO silně typované, tak interface může sloužit k tomu, aby se hlídalo co kam teče, a co na co voláš. Jestli voláše metodu na objektu (OOP), nebo funkci předáváš objekt (FP), zda držíš stav uvnitř, nebo s ním magicky šašíš (Procedural) to už máš fuk.