Galois has released a few well-documented examples including Ivory[1], a language for safer systems programming and Cryptol[2], a language for specifying cryptographic algorithms. A couple of other low-level examples are Copilot[3] and Atom[4], both of which generate C for embedded programming but with somewhat different characteristics and aims. On a slightly different note, we have SBV[5] (SMT-based verification) which presents a high-level programming model for using multiple SMT solvers including the recently open-sourced Z3. All of these follow a pretty similar pattern in terms of letting you specify logic and generate code for it. A different sort of DSL can be found in various combinator libraries like Parsec[6] (for parsing) and the Wadler/Leijin Pretty Printer[7] for, well, pretty printing (ie the inverse of parsing). [1]: http://ivorylang.org/ivory-introduction.html [2]: https://galois.com/project/cryptol/ [3]: https://hackage.haskell.org/package/copilot [4]: https://hackage.haskell.org/package/atom [5]: https://hackage.haskell.org/package/sbv [6]: https://wiki.haskell.org/Parsec [7]: https://hackage.haskell.org/package/wl-pprint-1.0/docs/Text-PrettyPrint-Leij... On Fri, Mar 27, 2015 at 12:04 AM, Закиров Марат <marat61@gmail.com> wrote:
Hi folks!
Are there any examples of Domain Specific Language (DSL) on Haskell? Thank you in advance.
--
*Regards, Marat.* *С уважением Марат.*
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe