literatex-0.1.0.0: examples/lowlevel.hs
{-# LANGUAGE OverloadedStrings #-}
module Main (main) where
-- https://hackage.haskell.org/package/base
import System.IO (stdout)
-- https://hackage.haskell.org/package/literatex
import qualified LiterateX
import qualified LiterateX.Renderer as Renderer
import qualified LiterateX.Types.SourceFormat as SourceFormat
------------------------------------------------------------------------------
demo :: String
demo = unlines
[ "-- Demo"
, "-- ===="
, "--"
, "-- This source code is embedded in the example, but it could come from"
, "-- a database or API call."
, ""
, "module Main (main) where"
, ""
, "main :: IO ()"
, "main = putStrLn \"Hello!\""
]
------------------------------------------------------------------------------
main :: IO ()
main = LiterateX.runIO
SourceFormat.DoubleDash
(Renderer.defaultOptionsFor "haskell")
(LiterateX.sourceString demo)
(LiterateX.sinkHandle stdout)