-
Notifications
You must be signed in to change notification settings - Fork 0
Added modules to all files #1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Changes from 1 commit
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1 @@ | ||
| use flake |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -4,3 +4,5 @@ | |
| *.hi | ||
| *.o | ||
| .DS_Store | ||
| .claude | ||
| .direnv | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,3 +1,5 @@ | ||
| module Baby where | ||
|
|
||
| doubleMe x = x + x | ||
|
|
||
| doubleUs x y = doubleMe x + doubleMe y | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,3 +1,5 @@ | ||
| module Heathrow where | ||
|
|
||
| import Data.List | ||
|
|
||
| data Section = Section { getA :: Int, getB :: Int, getC :: Int } | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,3 +1,5 @@ | ||
| module CMaybe where | ||
|
|
||
| data CMaybe a = CNothing | CJust Int a deriving Show | ||
|
|
||
| instance Functor CMaybe where | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,3 +1,5 @@ | ||
| module FmappingIO where | ||
|
|
||
| import Data.Char | ||
| import Data.List | ||
|
|
||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,3 +1,5 @@ | ||
| module IOFunctor where | ||
|
|
||
| main = do | ||
| line <- fmap reverse getLine | ||
| putStrLn $ "You said " ++ line ++ " backwards!" | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,3 +1,5 @@ | ||
| module Knight where | ||
|
|
||
| type KnightPos = (Int, Int) | ||
| type KnightPath = [KnightPos] | ||
|
|
||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,3 +1,5 @@ | ||
| module DiffList where | ||
|
|
||
| import Control.Monad.Writer | ||
|
|
||
| newtype DiffList a = DiffList { getDiffList :: [a] -> [a] } | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,3 +1,5 @@ | ||
| module KnightMonadic where | ||
|
|
||
| import Control.Monad | ||
| type KnightPos = (Int, Int) | ||
| type KnightPath = [KnightPos] | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,3 +1,5 @@ | ||
| module Monadic where | ||
|
|
||
| import Control.Monad.Writer | ||
|
|
||
| keepSmall :: Int -> Writer [String] Bool | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,3 +1,5 @@ | ||
| module Prob where | ||
|
|
||
| import Data.Ratio | ||
| import Data.Bifunctor | ||
| import Control.Monad | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,3 +1,5 @@ | ||
| module Random where | ||
|
|
||
| import System.Random | ||
| import Control.Monad.State | ||
|
|
||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,3 +1,5 @@ | ||
| module Reader where | ||
|
|
||
| addStuff :: Int -> Int | ||
| addStuff = do | ||
| a <- (*2) | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,3 +1,5 @@ | ||
| module Stack where | ||
|
|
||
| import Control.Monad.State | ||
|
|
||
| type Stack = [Int] | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,3 +1,5 @@ | ||
| module Filesystem where | ||
|
|
||
| import Data.List (break) | ||
|
|
||
| x -: f = f x | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,3 +1,5 @@ | ||
| module Tree where | ||
|
||
|
|
||
| data Tree a = Empty | Node a (Tree a) (Tree a) | ||
| deriving Show | ||
|
|
||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,3 +1,5 @@ | ||
| module Factorial where | ||
|
|
||
| factorial :: Integer -> Integer | ||
| factorial n = product [1..n] | ||
|
|
||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,3 +1,5 @@ | ||
| module Lockers where | ||
|
|
||
| import qualified Data.Map as Map | ||
|
|
||
| data LockerState = Taken | Free deriving (Show, Eq) | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,3 +1,5 @@ | ||
| module Modules where | ||
|
|
||
| import Data.List | ||
| import Data.Char | ||
| import qualified Data.Map as Map | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,3 +1,5 @@ | ||
| module OwnList where | ||
|
|
||
| infixr 7 :-: | ||
| data List a = Empty | a :-: (List a) deriving (Show, Read, Eq, Ord) | ||
|
|
||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,3 +1,5 @@ | ||
| module TypeSyn where | ||
|
|
||
| type PhoneNumber = String | ||
| type Name = String | ||
| type PhoneBook = [(Name, PhoneNumber)] | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,3 +1,5 @@ | ||
| module YesNo where | ||
|
|
||
| import Traffic | ||
| import Tree | ||
|
|
||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,3 +1,5 @@ | ||
| module Forever where | ||
|
|
||
| import Control.Monad | ||
| import Data.Char | ||
| import System.IO | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,3 +1,5 @@ | ||
| module Form where | ||
|
|
||
| import Control.Monad | ||
|
|
||
| main = do | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1 +1,3 @@ | ||
| module HelloWorld where | ||
|
|
||
| main = putStrLn "Hello, world" |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,3 +1,5 @@ | ||
| module PutStr where | ||
|
|
||
| main = do | ||
| putStr "hey, " | ||
| putStr "I'm " | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,3 +1,5 @@ | ||
| module Reverse where | ||
|
|
||
| main = do | ||
| line <- getLine | ||
| if null line | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,3 +1,5 @@ | ||
| module Rock where | ||
|
|
||
| main = do | ||
| putStrLn "Hello, what's your name?" | ||
| name <- getLine | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,3 +1,5 @@ | ||
| module Rock2 where | ||
|
|
||
| import Data.Char | ||
|
|
||
| main = do | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,3 +1,5 @@ | ||
| module When where | ||
|
|
||
| import Control.Monad | ||
|
|
||
| main = do | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,3 +1,5 @@ | ||
| module AppendTodo where | ||
|
|
||
| import System.IO | ||
|
|
||
| main = do | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,3 +1,5 @@ | ||
| module ArgTest where | ||
|
|
||
| import System.Environment | ||
| import Data.List | ||
|
|
||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,3 +1,5 @@ | ||
| module ByteStringCopy where | ||
|
|
||
| import System.Environment | ||
| import System.Directory | ||
| import System.IO | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,3 +1,5 @@ | ||
| module CapsLocker where | ||
|
|
||
| import Control.Monad | ||
| import Data.Char | ||
|
|
||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,3 +1,5 @@ | ||
| module DeleteTodo where | ||
|
|
||
| import System.IO | ||
| import System.Directory | ||
| import Data.List | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,3 +1,5 @@ | ||
| module GirlfriendCaps where | ||
|
|
||
| import System.IO | ||
| import Data.Char | ||
|
|
||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,3 +1,5 @@ | ||
| module Girlfriend where | ||
|
|
||
| import System.IO | ||
|
|
||
| main = do | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,3 +1,5 @@ | ||
| module GuessTheNumber where | ||
|
|
||
| import System.Random | ||
| import Control.Monad(when) | ||
|
|
||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,3 +1,5 @@ | ||
| module Palindrome where | ||
|
|
||
| main = interact respondPalindrome | ||
|
|
||
| respondPalindrome :: String -> String | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,3 +1,5 @@ | ||
| module Random where | ||
|
|
||
| import System.Random | ||
|
|
||
| threeCoins :: StdGen -> (Bool, Bool, Bool) | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,3 +1,5 @@ | ||
| module RandomString where | ||
|
|
||
| import System.Random | ||
|
|
||
| main = do | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,3 +1,5 @@ | ||
| module ShortLinesOnly where | ||
|
|
||
| main = do | ||
| contents <- getContents | ||
| putStr (shortLinesOnly contents) | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,3 +1,5 @@ | ||
| module ShortOnly where | ||
|
|
||
| main = interact shortLinesOnly | ||
|
|
||
| shortLinesOnly :: String -> String | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,3 +1,5 @@ | ||
| module Todo where | ||
|
|
||
| -- todo check that index is not out of bounds | ||
| -- todo check that the index is a number | ||
|
|
||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -47,4 +47,4 @@ | |
| ''; | ||
| }; | ||
| }); | ||
| } | ||
| } | ||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
[P1] Resolve Random module name collision
This file declares
module Random, butch9/random.hsnow declares the same module name. Two different source files implementing the same module cannot coexist in the same compilation unit, so attempting to load the code as a package or run both examples together will fail with duplicate module errors. Giving these modules distinct names (for exampleChapter9.RandomandChapter14.Random) would avoid the conflict.Useful? React with 👍 / 👎.