Haxell
Jump to navigation
Jump to search
| Paradigm(s) | Functional |
|---|---|
| Designed by | User:Hakerh400 |
| Appeared in | 2024 |
| Computational class | Turing complete |
| Major implementations | Implemented |
| File extension(s) | .hs |
Haxell is an esolang invented by User:Hakerh400 in 2024.
Overview
Haxell is similar to Haskell, but there are few differences:
- File name and module name are unrelated. Relative import paths are supported. For example
import Data.Listimports built-in moduleData.List, whileimport "./data/list"imports the local filelist.hsfrom the directorydatarelative to the current file (not to the current working directory of the compiler invocation). Imports from parent directory are also supportedimport "../../util". If the path represents a directory, thenindex.hsfile is imported from that directory. Quotes are optional. - Compiler flag
-trans-importsallows transitive imports (module exports itself as well as all imported modules). - Infix operator
#is used instead of$. - In a
doblock, thelet x = exprsyntax behaves exactly asx <- pure # expr(no indentation quirks, unlike in Haskell). - Snake case is recommended instead of camel case for user-defined functions.