cabal exec -- ghc --make scanner.hs
./scanner input.json output.htmlOrigin Json File
{
"quiz": {
"sport": {
"q1": {
"question": "Which one is correct team name in NBA?",
"options": [
"New York Bulls",
"Los Angeles Kings",
...
],
"answer": "Huston Rocket",
"age": 31,
"case": true
}
},
...
}
}-
IO _ when return type is IO _, use <- to assign it to a variable
addOne :: Int -> IO Int addOne x = do return x main = do value <- addOne 1 print(value)
-
unusual show
> show '"' "'\"'" :: String > show '\\' "\\\\" :: String > show 'x' "'x'" :: String
if want to convert Char to String
> ['x'] "x" :: [Char]
regex cheat sheet Install
$ cabal install regex-pcreError may occur
Wrap.hsc:148:10: fatal error: 'pcre.h' file not found
#include <pcre.h>solution for mac
brew install pcre
cabal install regex-pcre
Manage packages in local directroy
cabal sandbox initto use ghci with packages with local sandboxs
# For GHC < 7.6
$ ghci -no-user-package-conf -package-conf .cabal-sandbox/x86_64-osx-ghc-8.2.2-packages.conf.dto comile hs file with local sandboxs
cabal exec -- ghc --make myhaskell.hs