You don't need 3000W, 1kW is plenty. I have a Yuba Mundo (one of the biggest long-tail cargo bikes) and my Bafang motor tops out around 1kW and it's plenty even for the biggest hills here in Bloomington (which is quite hilly).
No, this is exactly what is meant by soundness. Using the `Any` type in TypeScript can result in values that have type `integer` being actually strings, which is unsoundness.
The main implementation of Racket today is built on top of Chez Scheme, which uses the techniques described by Dybvig that I linked to.
In the earlier implementation of Racket, indeed it doesn't convert to CPS but does use something like A-normal form. There, continuations are implemented by actually copying the C stack.
The predictions from this post have almost entirely turned out to be wrong. Chez Scheme upstream decided to merge in Racket's changes entirely, and to make the lead developer of Racket (Matthew Flatt) a core Chez developer. These days Matthew is the most active Chez developer. Over the past few years, half of the serious Chez committers are people who come from Racket.
It's not true that you need to use CPS to implemented first-class continuations. There are plenty of slow ways to do it, and even if you want to be fast you can do multiple different things. Dybvig describes a number of options in his thesis: https://www.cs.unc.edu/xcms/wpfiles/dissertations/dybvig.pdf