+instance FromJSON SupportLevel where
+ parseJSON (Bool False) = return Unsupported
+ parseJSON (Bool True) = return EnvVars
+
+makeFilename :: T.Text -> T.Text
+makeFilename s = T.pack ( "./programs/" ++ T.unpack s ++ ".json" )
+
+save :: T.Text -> Program -> IO ()
+save filename program = do
+ createDirectoryIfMissing False "./programs/"
+ B.writeFile (T.unpack filename) (encodePretty program)