aboutsummaryrefslogtreecommitdiff
path: root/ch08/8_a_1.hs
diff options
context:
space:
mode:
authorJan Sucan <jan@jansucan.com>2023-04-22 16:27:28 +0200
committerJan Sucan <jan@jansucan.com>2023-04-22 16:27:28 +0200
commit3c4ac7d6191f6a1dcc9218dfffa17ec7e491acde (patch)
tree404deadbfd4c714f14256b3c3acdd827e0d8ccab /ch08/8_a_1.hs
parentd5bdc79002348178a6376387316505c708b77b06 (diff)
8_a_1: Add solution
Diffstat (limited to 'ch08/8_a_1.hs')
-rw-r--r--ch08/8_a_1.hs23
1 files changed, 23 insertions, 0 deletions
diff --git a/ch08/8_a_1.hs b/ch08/8_a_1.hs
new file mode 100644
index 0000000..d918b6d
--- /dev/null
+++ b/ch08/8_a_1.hs
@@ -0,0 +1,23 @@
+-- Use ghci to explore what happens if you pass a malformed pattern, such as [,
+-- to globToRegex. Write a small function that calls globToRegex, and pass it a
+-- malformed pattern. What happens?
+
+-- When trying to load the GlobRegex.hs file into ghci, I got an error about
+-- that the module was not found. I used Hoogle (https://hoogle.haskell.org/) to
+-- search for Text.Regex.Posix module and found it was in regex-posix package. I
+-- use stack, so I installed the package by
+--
+-- stack install regex-posix
+
+import GlobRegex
+
+callGlobToRegex glob = globToRegex glob
+
+-- ghci> :l 8_a_1.hs
+-- [1 of 2] Compiling GlobRegex ( GlobRegex.hs, interpreted )
+-- [2 of 2] Compiling Main ( 8_a_1.hs, interpreted )
+-- Ok, two modules loaded.
+-- ghci> callGlobToRegex "["
+-- "^*** Exception: unterminated character class
+-- CallStack (from HasCallStack):
+-- error, called at ./GlobRegex.hs:27:31 in main:GlobRegex