@chemoelectric@masto.ai
@eruwero@ieji.de Even Schemes for the Java VM do not do proper tail calls, at least unless you use an option. The same is true of one other that compiles to C but whose name I do not remember. But some will refuse to call such an implementation βSchemeβ. Most implementations do handle tail calls correctly.
This applies even to call-with-current-continuation. Sometimes this is very inefficient. In Guile it is very inefficient, but works. In CHICKEN or Chez Scheme it is efficient. (And Chez is FAST.)
@eruwero@ieji.de
@chemoelectric@masto.ai it's incredible IMO how fast some schemes or lisps in general (in particular SBCL) can be, even though they allow much more powerful abstractions. It's just that by default they focus on safety and sanity. Really shows that there is no real reason for using something like C++ :)