Having been convinced of the potential benefits of partial evaluation, we wanted to conduct some experiments in our favourite Computer Algebra System, Maple. Maple is a large language, with a few non-standard features. When we tried to implement a partial evaluator for it, we ran into a number of difficulties for which we could find no solution in the literature. Undaunted, we persevered and ultimately implemented a working partial evaluator with which we were able to very successfully [10] conduct our experiments. In this paper, we document the techniques we had to either invent or adapt to achieve these results. Categories and Subject Descriptors F.3 [Theory of Computation]: Logics and Meaning of Programs; F.3.2 [Logics and Meaning of Programs]: Partial Evaluation General Terms Languages,Design,Theory Keywords Maple, symbolic computation, partial evaluation, residual theorems