<div class="gmail_quote">On Sun, Dec 2, 2012 at 7:31 PM, Joerg Fritsch <span dir="ltr">&lt;<a href="mailto:fritsch@joerg.cc" target="_blank">fritsch@joerg.cc</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div style="word-wrap:break-word">This is probably a very basic question.<div><br></div><div>I am working on a DSL that eventuyally would allow me to say:</div><div><span style="color:rgb(51,51,51);font-family:monospace;line-height:19px;white-space:pre-wrap;font-size:small"><br>
</span></div><div><span style="color:rgb(51,51,51);font-family:monospace;line-height:19px;white-space:pre-wrap;font-size:small">import language.cwmwl</span></div><div><span style="color:rgb(51,51,51);font-family:Georgia,serif;line-height:19px;font-size:small"><pre>
main = runCWMWL $ do</pre><pre>    eval (&quot;isFib::&quot;, 1000, ?BOOL)</pre></span></div><div><br></div><div>I have just started to work on the interpreter-function runCWMWL and I wonder whether it is possible to escape to real Haskell somehow (and how?) either inside ot outside the do-block.</div>
<div><br></div><div>I thought of providing a defautl-wrapper for some required prelude functions (such as print) inside my interpreter but I wonder if there are more elegant ways to co-loacate a DSL and Haskell without falling back to being a normal library only.</div>
<span class="HOEnZb"><font color="#888888"><div><br></div><div>--Joerg</div><div><br></div></font></span></div><br></blockquote></div><br>+1<br>I am also interested in the DSL-in-Haskell possibilities<br><br>[I am assuming Joerg that you&#39;re familiar with the basic ideas and terminology like<br>
<a href="http://martinfowler.com/bliki/DomainSpecificLanguage.html">http://martinfowler.com/bliki/DomainSpecificLanguage.html</a> and the links therein]<br><br>Rusi<br clear="all"><br>-- <br><a href="http://www.the-magus.in" target="_blank">http://www.the-magus.in</a><br>
<a href="http://blog.languager.org" target="_blank">http://blog.languager.org</a><br><br><br>