Because with dependent typing, the length can be specified at runtime and you still get static checking.<p>There&#x27;s also a huge difference between untyped templates and strongly typed generics, but in this particular case the difference is somewhat subtle.