We show how the programming language GCLA can be used to naturally express both relational and functional programs in an integrated framework. We give a short introduction to GCLA, and to the theory of partial inductive definitions on which GCLA is based. GCLA is best regarded as a logic programming language, but instead of saying that the query follows from the program in some a priori given logic, we say that the program defines the logic in which the query is proved. We then demonstrate how to implement both relational and functional programs as well as a combination of them in GCLA.