On Fri, Jul 16, 2010 at 09:19, Eric Niebler <e...@boostpro.com> wrote: > On 7/16/2010 2:12 AM, Joel Falcou wrote: >> >> I think proto is currently filling a hole which will increase in >> importance. Putting my researcher cap back for a minute, I can tell you >> that the DS(E)L topic is relatively hot at the moment with effort from >> a lot of big guns like the SCALA team from Standford or Paul Kelly's >> team from Imperial College. They all use various host languages and >> various technology to implement these and I think C++ with the help of >> Proto has a major role to play in this paradigm shift. So having some >> brain tank here about that feels important to help push these kind of >> work in both academic and industrial contexts. > > > I am not familiar with other technologies used to implement DSEL in > other languages. Are you? Can you point me to some information or > describe the other efforts in this area? I used little more than my own > needs and my knowledge of compiler construction toolkits to guide the > design of proto. Maybe there are other good ideas out there we can steal.
Haskell people have Template Haskell [1]. It allows one to freely generate syntax trees. One can have DSLs that "hijack" Haskell's syntax, assigning it non-standard semantics. Oleg Kiselyov has a very simplified example of tuning an interpreter into a compiler [2]. It would be great if we could write DSLs in C++ at compile time, as one can use Template Haskell to write DSLs in Haskell (or Lisp DSLs in Lisp, and so on). But, until then, we have proto. :) Cheers, Marcin [1] http://www.haskell.org/haskellwiki/Template_Haskell [2] http://okmij.org/ftp/tagless-final/#tc-GADT > -- > Eric Niebler > BoostPro Computing > http://www.boostpro.com > _______________________________________________ > proto mailing list > proto@lists.boost.org > http://lists.boost.org/mailman/listinfo.cgi/proto > _______________________________________________ proto mailing list proto@lists.boost.org http://lists.boost.org/mailman/listinfo.cgi/proto