shakespeare_generator doesn't compile on Nim 1.4.8 / Arraymancer 0.7.1
Compilation of [this example](https://github.com/mratsim/Arraymancer/blob/master/examples/ex06_shakespeare_generator.nim) fails with an [error](https://github.com/mratsim/Arraymancer/blob/master/examples/ex06_shakespeare_generator.nim#L59): 

`(59, 6) Error: 'strToTensor' can have side effects`

This appears to be caused by a `newTensor` call adding side effects. Making all the `func`s `proc`s in the example fails with a different error: `'optimizerAdam' can have side effects`.

[This line](https://github.com/mratsim/Arraymancer/blob/master/examples/ex06_shakespeare_generator.nim#L295) also gives me a "wrong number of arguments" / "illformed AST" error in VS Code, but I'm not sure how accurate it is with other errors blocking compilation.

This is my first time trying out the library, so I'm not sure if the examples are outdated or whether I'm doing something wrong. Are they tested in CI? If not, it might be worth ensuring that they still compile with each new release/breaking change.

```
Nim Compiler Version 1.4.8 [Linux: amd64]
arraymancer  [0.7.1]
Command: nim r -d:danger <example_file>
```