Ti has TIGCC
and an official SDK
for C programming. There are also other languages to program (besides that built-in on-calculator programming languages) such as TI-Power and the Multi-Platform Language for Calculators, which also works on some Casio calculators as well. And then, there is of course assembly, which their are multiple assemblers for that are specifically designed for TI-calculator programming - TASM, SPASM, Brass, DASM, and OTBP Assembler (which is an on-calculator assembler, so you can program in assembly directly on your calculator without having to type in hex codes).