組み込みのlistの時点でappendとextendが別れてるというのが全てだと思う
データを管理したいならappend(a)とappend(*a)が同時に使えるように書くべきじゃない
型チェックすれば済むとか、処理を把握してるから分かる、とか以前の問題で
どうしたらそういうコードを擁護しうるのかな……と思う 
まあ苦手なものは仕方ないけどね