I thought I'd take the time to offer a kind of update. I rarely post about what I'm programming since the stuff I do tends to be very specific and not useful in many other applications.
Most of what I do is related to mathematical algorithms so I actually jump between writing it in TI-BASIC/Python for quick testing and optimizing and then C/Assembly as the intended final result.
Things I've done in TI-BASIC:
- Higher precision computation of the natural logarithm, since I needed a method to create arbitrary sized tables for an algorithm similar to BKM.
- Implementations of algorithms similar to BKM in order to evaluate the complex logarithm and exponential functions. I needed these as possible internal algorithms for my Z80 floating point library as from those functions we can directly acquire the real or complex versions of sine, cosine, arctangent, exp, and log, and with those it's easy to find the hyperbolic functions, remaining trig functions, logy(x), yx.
- The AGM algorithm as a means to compute inverse trig, and logarithm functions.
- The Borchardt-Gauss algorithm as a means to compute inverse hyperbolic, inverse trig, and logarithm functions.
- This far better implementation of the BKM algorithm. I had to use lists that rotated!
- An implementation of a super old algorithm I created in highschool to compute sine and then a new inverse algorithm for arcsine. In highschool I used a fractal as a quick lookup table for values of sine, but after college I came back to it and found that I could use the classic graycode for arbitrary sized inputs and on a computer that can be computed faster than an ADD/SUB instruction. Unfortunately, us not efficient to then compute as a float or real number as it involves nested radicals.
- A program to generate coefficients for the Padé approximations of the exponential function where $f(x)/f(-x)\approx e^{x}$. It allows me to get approximations at half the cost of Taylor series.
- Implementations of mergesort, quicksort, and heapsort, as well as a few of my own ideas.
There are many more I just can't remember them all
Z80 Assembly>English>TI-BASIC>Python>French>C>0