Description
like eruby, ehaskell is embedded haskell.
Description
You can embed haskell in Text file. You can use in html, haskell source, and so on.
<%% ... %%> : <%% import Some.Module %%> <%% h = "hello" %%>
<% ... %> : <% ln <- getLine %>
<% ... -%> ... <%- ... -%> ... <%- ... %>: <% if b then -%>Yes<%- else -%>No<%-%>
<%= ... %> : <%= "hello" %>
<%== ... %> : <%== getLine %>
<%=$ ... %> : <%=$ 123 %>
<%==$ ... %> : <%==$ getClockTime %>
You can put code at top level by <%% ... %%>.
You can put code in do-notation by <% ... %>.
You can get args by <% ... -%> ... <%- ... -%> ... <%- ... %>.
If you write <% func -%>abc<%- def -%>ghi<% jkl %>mno<%- pqr %>,
translate in "func (putStr "abc") def (putStr "ghi") jkl (putStr "mno") pqr" and execute.
You can put dinamic String by <%== .. %>.
And rests (<%= ... %>, <%==$ ... %>, <%=$ ... %>) are just syntax sugar.
<%= some %> == <%== return some %>
<%==$ some %> == <%== some >>= return . show %>
<%=$ some %> == <%== return $ show some %>