Alef [1], [2], [3] can in part be viewed as C where methods are available.

An 'aggr' is equivalent to C 'struct' combined with 'typedef', and an 'adt' is an 'aggr' having methods.

[1] https://en.wikipedia.org/wiki/Alef_(programming_language)

[2] http://doc.cat-v.org/plan_9/2nd_edition/papers/alef/ref

[3] http://doc.cat-v.org/plan_9/2nd_edition/papers/alef/ug