type-basics revised & more discussion added