Conversation

“Error” might be “I can’t”, or “You’ve asked me not to”, or “I will, but only if you super-promise that these shenanigans are what you meant to do”; “warning” might be about anything: style, performance, possible issues, or even *likely* issues too noisy to make errors.
1
3
Any idea what a better prefix would be? Or would it be better to just remove it? Or do we dial down the severity of this stuff in development, so you get 'info' and 'note' messages instead, leaving the errors for CI and release builds?
2
Yeah, thinking maybe it would be good to demonstrate that in the examples and documentation. Try to nudge downstream tool-makers in the right direction I guess… ‘this is what your tool could be like’ – hehe :)
1
1
What about "fixme: "? Thinking about this:
Quote Tweet
This is most obvious with refactoring — experienced programmers will structure a refactoring so that the type checker tells them everywhere they need to fix (whenever possible…). Those “errors” are just a checklist from a very diligent partner.
Show this thread
2
3
Also thinking about hole driven development, and about that gives you a bunch of 'todo's for missing parts of the code you still need to fill in… sometimes those are displayed as warnings, or in an interactive side-panel in your IDE/editor. 🤔
1
3
Thinking about Lean's info panel, which is a bit like a todo list (you can even add custom widgets for your own datatypes): github.com/leanprover/vsc – they still use red squigglies and text for ‘errors’ though. Other theorem provers have similar ways of listing your ‘goals’…
1
3
Seems like Pyret just does away with a prefix in their browser based editor. Of course they have more freedom their with formatting, vs. the console. Was inspired to check them out again thanks to this tweet:
A view of the Pyret language editor (available at https://code.pyret.org/editor) attempting to run the following program:

x :: Number = "hello"
print(x)
Quote Tweet
Replying to @yminsky
We have @Bootstrapworld teachers who use @PyretLang error messages as a pedagoical device. I think that's possible in part only because we don't have screaming red error messages, and in fact quite sophisticated output (partly thanks to @tenellous).
2
3
Show replies