Hurl, the Exceptional language
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.
Praise for Hurl
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 way1.
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).
Source code
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.
Licenses
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.
Erika did consent to posting this and provided it in its current form. If someone actually does not want their name associated, I would not include it.