The problem of computing integrals can be approached in many ways. We consider the setting where functions are represented as elements of appropriate differential fields and an antiderivative in an elementary extension of that field is sought. In 1969 Risch gave an algorithm for elementary integrands, which later has been extended to (transcendental) Liouvillian integrands. In this talk we present a recent extension of that algorithm to a certain class of non-Liouvillian functions. These algorithms can also be applied naturally to compute definite integrals via a differential analogue of creative telescoping. We will also discuss related problems and give examples.