Have you seen these sites?

Hyperpolyglot.org and Rosettacode.org provide a valuable help for users who need to solve a problem in a new language: Line-by-line comparisons with lots of other languages.

For Maxima users, Hyperpolyglot’s computer-algebra system section has side-by-side tables of comparisons with Mathematica, Maple, Sage and Numpy.

Rosettacode is arranged by task, with user-contributed solutions to common tasks in lots of languages. I was motivated to write this post while working on a new Maxima version of an ordinary differential equations course I’ve taught for years using MATLAB.

Here is Rosettacode’s section on the Euler Method — a method for numerical approximation to the solution of a first order ordinary differential equation.

For the record, this is the version I decided to teach in my course:

( /* Euler Method for initial value problem y'=xy , y(0)=0.5 */ x0:0, y0:.5, h:.25, nsteps:10, xeuler:makelist(0,i,1,nsteps+1,1), yeuler:makelist(0,i,1,nsteps+1,1), xeuler[1]:x0, yeuler[1]:y0, for i:1 thru nsteps do ( xeuler[i+1]:xeuler[i]+h, yeuler[i+1]:yeuler[i]+h*xeuler[i]*yeuler[i] ) );