Last couple of years I’ve been working from time to time on porting from Matlab to Python the CompEcon toolbox that comes with the textbook by Miranda and Fackler (2002).

A major difference in this implementation is that much of the code is object-oriented, providing classes to represent:

- Interpolation bases: Chebyshev, Spline, and Linear
- Dynamic programming models: with discrete and/or continuous state and action variables
- Nonlinear problems
- Optimization problems

Some other differences are:

- The solution of dynamic models is returned as a pandas dataframe, as opposed to a collection of vectors and matrices.
- Some additional functionality is included, most notably for Smolyak interpolation.
- Basis objects are callable, so they can be used to interpolation function by “calling” the basis.

Although I haven’t finished this task, there is some progress; to see what is available so far, check these Jupyter notebooks to see which demos have already been replicated with the Python version.

I have shared the source code in Github for some time now, but to make it easy to final users to start using the toolbox right away, I have uploaded it to PyPI. Assuming you have `pip`

on your computer –as will be the case if you’ve installed Anaconda–, you can install the latest release of compecon by typing:

`pip install compecon`

at a terminal point.