<div dir="ltr"><div>I have an implementation of a language that has all the features you mention (ints + booleans, assignment, arithmetic and logic operators, if statements, while and repeat loops, blocks), which I have used in my Programming Languages class.  It also has a typechecker.  It is interpreted --- not sure if that is OK or if you are looking for something with a compiler.  I would be happy to send it to you privately off-list if it sounds like it might fit the bill.</div><div><br></div><div>-Brent<br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, Apr 5, 2021 at 7:34 PM Igor Moreno Santos <<a href="mailto:igormoreno@gmail.com">igormoreno@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div class="gmail_default" style="font-family:tahoma,sans-serif;font-size:small"><div class="gmail_default">Hi,</div><div class="gmail_default"><br></div><div class="gmail_default">I'm looking for a toy imperative language implementation in Haskell for research purposes. I imagine something like the language of arithmetic expressions from TAPL ch. 3 augmented with</div><div class="gmail_default"><div class="gmail_default">- while-loop (so the CFG has loops)</div><div class="gmail_default">- blocks (sequence of statements to put inside loops and conditionals)<br></div><div class="gmail_default"></div><div class="gmail_default">- assignment (otherwise we can't show any effects from sequences)</div><div class="gmail_default"><br></div><div class="gmail_default">I think there's probably nothing exactly like that so we might end up doing it ourselves but maybe there's already something out there.</div><div class="gmail_default"><br></div><div class="gmail_default">Thank you in advance.</div><div class="gmail_default"><br></div><div class="gmail_default">Regards,</div></div></div><div><div dir="ltr"><font face="tahoma, sans-serif">Igor Moreno<br><br><span style="font-size:13px"><br></span></font></div></div></div>
_______________________________________________<br>
Haskell-Cafe mailing list<br>
To (un)subscribe, modify options or view archives go to:<br>
<a href="http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe" rel="noreferrer" target="_blank">http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe</a><br>
Only members subscribed via the mailman list are allowed to post.</blockquote></div>