Closed
Conversation
Haskell source paths, as GHC understands them, are remarkably permissive: they must end with one of the source extensions (now more accurately listed here, with references to the upstream GHC code), but can otherwise contain quirks up to and including multiple extensions, whitespace, and newlines. GHCi is actually even more lenient than this in what it accepts; it'll automatically append `.hs` and `.lhs` to paths you give it and check if those exist, but fortunately they get printed out in `:show targets` and diagnostics as the resolved source paths: ```text ghci> :add src/MyLib [1 of 1] Compiling MyLib ( src/MyLib.hs, interpreted ) ghci> :show targets src/MyLib.hs ghci> :add src/Foo target ‘src/Foo’ is not a module name or a source file ghci> :add src/MyLib.lhs File src/MyLib.lhs not found ghci> :add "src/ Foo.hs" File src/ Foo.hs not found ghci> :add "src\n/Foo.hs" File src /Foo.hs not found ```
1e3dda0 to
13747a1
Compare
3 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Haskell source paths, as GHC understands them, are remarkably permissive: they must end with one of the source extensions (now more accurately listed here, with references to the upstream GHC code), but can otherwise contain quirks up to and including multiple extensions, whitespace, and newlines.
GHCi is actually even more lenient than this in what it accepts; it'll automatically append
.hsand.lhsto paths you give it and check if those exist, but fortunately they get printed out in:show targetsand diagnostics as the resolved source paths:Split off of #297