Hurl is a language created for one purpose: to explore a language based around exception handling as the only control flow. It was sparked from conversations between Nicole Tietz-Sokolskaya and friends from Recurse Center whose identities will be withheld for their dignity.
This site contains documentation around how to use Hurl. It also provides some examples and guidance for debugging and answers questions.
It comes highly endorsed:
I, uh, have changed my mind about ever implementing a language based on Hurl. This monstrosity is beautiful, and I must never touch it. I don't want my name associated with this in any way.
Unfortunately, I decided to make this language a reality. I'm sorry.
is "🤮" an available quote?
Certified unhinged™!
Exceptions as control flow have been a well-guarded secret within the professional programming community for years. It's about time someone codified these techniques into a coherent whole.
-Jonathan Watmough
To add more praise, email Nicole (please include positive consent to include said quote on this site).
The source code for Hurl and for this site are both available in Hurl's repo. Emailed patches are welcome if you find a bug or an error, but you'll need to sign over all rights to the patch: I need to preserve the ability to relicense this and license it commercially.
For this project, I considered joke licenses and unfortunate licenses. Ultimately, this software is licensed under the following three very serious licenses:
- Under AGPL-3.0
- Under GAL-1.0 (Gay Agenda License)
- Under a commercial license
You may use the software under any one of these licenses, without regard for the others.