I'm trying to read a text file asynchronous line by line but the following code fails to compile import asyncdispatch, asyncfile, os proc main() {.async.} = var filename = getTempDir() / "test.txt" var file = openAsync(filename, fmWrite) await file.write("test1\ntest2") file.close() var file = openAsync(filename, fmRead) while true: let line = await file.readLine() if line.len == 0: break echo line file.close() removeFile(filename) waitFor main() Run
Error messages Exception message: index out of bounds Exception type: [IndexError] Error: execution of an external program failed: '/home/hdias/Documents/Nim-Cookbook/async_openfile ' In Nim is possible make same thing like this with templates? for var line = await file.readLines(): echo line Run // Javascript for await (const line of readLines(filePath)) { console.log(line) } Run [https://medium.com/@wietsevenema/node-js-using-for-await-to-read-lines-from-a-file-ead1f4dd8c6f](https://medium.com/@wietsevenema/node-js-using-for-await-to-read-lines-from-a-file-ead1f4dd8c6f)