plafer / Tissue.jl

Framework for building computational graphs that process any real time data source.
https://plafer.github.io/Tissue.jl/stable/
MIT License
2 stars 1 forks source link

Error message system #12

Open plafer opened 3 years ago

plafer commented 3 years ago

We want an error message system as the one in Rust. For every possible error by the user, we should output an error message which explains what went wrong concisely, as well as an error code such as E1032, which users can use in a call to Tissue.describe_error(:E1032) in the REPL, and get a verbose description of the errors, common mistakes related to it, examples on how to fix it, etc.

This will be especially useful when writing macros, to help the user use the correct syntax.

plafer commented 3 years ago

Note: for the error of binding a calculator's input stream to an output stream of a different type, we can use Core.Compiler.return_type(function, args_tuple) to check, in the graph constructor, if types works.