> A complete language needs a complete implementation. No, Minh, I was not talking about re-implementing a whole Lisp/Scheme language interpreter in Haskell. (I know there is BTW a Scheme interpreter made in Haskell : http://jonathan.tang.name/files/scheme_in_48/tutorial/overview.html).
But what I really wanted to know is how usually haskellers do to script their applications. For instance (as you say), many games made in C/C++ use Lua (for AI or for configuration). That is the kind of scripting I'm talking about : a compiled program (in Haskell) reading an interpreting a script (in some already existing interpreted language (*) or some DSL especially made for this purpose). (*) functional language, because I want to keep the benefit of functional programming for scripting. So no Lua, no Python... > I may have misunderstood your goals and what you mean by "scripting". Our DSEL is intended to be used for expressing all kinds of scripting tasks. Martin, I did not understand your meaning of "scripting". IMO, a program can be scripted if it provides a way to alter (a part of) its configuration without having to recompile it entirely. If need be it recompiles the configuration files, but I think it's better if those files are interpreted (speeds up the program lauching, since it doesn't have to compile and link again (*)) (*) Yi, for instance, takes a little time to recompile its configuration, and when it re-links its executable, it weighs 38Mo! (and dynamic linking is still not perfect in Haskell) Plus, end-users have to install the compiler (GHC, which is not lightweight), even if they have the statically-linked executable of the application. 2010/5/4 minh thu <[email protected]> > 2010/5/4 Limestraël <[email protected]>: > > ... > > > > Minh, Kyle, Gwern, the dyre approach seems to be very interesting too. > > But if I understood well, we also have to recompile at run-time the > > configuration haskell script? > > So the final application (Yi, for instance) will need GHC to be installed > to > > run? Or did I miss something? > > By the way, I had never heard of Yi, but can I deduce from its name its a > > Vi(m)-like (which I am a big fan of)? Moreover, the idea of scripting my > > editor in Haskell appeals me. > > Yes GHC is needed. But if your goal is to produce something with the > benefits of a complete language for configuration, I think it's fine. > Numerous games include for instance a complete Lua interpreter, > SketchUp includes a ruby interpreter (or maybe it is python), Blender > uses python, Common Lisp programs can use Common Lisp, and so on. > > A complete language needs a complete implementation. > > If you want to make your own (non-embedded) DSL, you will either > provide less than a "complete" language or have to implement a lot of > stuff. > > Cheers, > Thu >
_______________________________________________ Haskell-Cafe mailing list [email protected] http://www.haskell.org/mailman/listinfo/haskell-cafe
