On 27/05/2009, at 1:29 PM, Erick Tryzelaar wrote: >> It would actually be useful to modify flxg so that when you say >> >> flxg std file >> >> it compiles "std" right up to the bound symbol table, and then >> stores it to disk. Next time it just reloads std, already bound. >> Keep this in mind during REPL development. > > Yeah, I noticed that this whole process seems to be working towards > being able to incrementally handle imported files. It's not that much > of a leap from incremental binding to just loading a cached bound > table.
In fact the code for 'renumbering' already exists, after all it is just a special case of reparenting. You just synthesis a map i -> j and then apply it to everything, and the stuff is relocated. Some care is needed for non-code such as argument lists etc, but that is already the case. The only constraint is that relocatable modules have to be related with tree-like dependencies. Cross-dependencies won't work without a new way to specify "external linkage". > > I use REPLs a lot with the way I work. With certain problems, I really > like being able to throw together an algorithm via a REPL, or test out > a library to see how it works. At work, we make heavy use of maya's > python interface in which much of the functionality is exposed through > the python REPL, so it's easy to modify the app via little commands. I > also think it's a great learning tool. For instance, I learned ocaml > through the REPL. And while I haven't personally experienced this, > erlang makes extensive use of it's REPL to control what's going on > across it's network, and that could be useful for us if we ever do a > distributed system. Sure, but what is wrong with typing in a text editor and then executing the window contents? Sure it is slightly more hassle to set up, but it solves a lot of the problems. Ocaml's REPL is cool for one line learning experiences, but after that it is pretty useless. And it only works because the entered code goes in a list, and it has hiding. Felix doesn't, it binds things set-wise, not linearly. > And finally, I'm having a lot of fun trying to figure out how to do > it. It's a great way to learn the innards of felix, and good > preparation for that llvm backend I've been dreaming about :) if you learn the innard of Felix .. teach me them! Just cause I wrote a lot of it doesn't mean I understand it. Some of the representations are vastly too fragile, I get lost thinking about it. Eg the vs/ts correlation would be better supported with a bit more structure and abstraction. -- john skaller skal...@users.sourceforge.net ------------------------------------------------------------------------------ Register Now for Creativity and Technology (CaT), June 3rd, NYC. CaT is a gathering of tech-side developers & brand creativity professionals. Meet the minds behind Google Creative Lab, Visual Complexity, Processing, & iPhoneDevCamp as they present alongside digital heavyweights like Barbarian Group, R/GA, & Big Spaceship. http://p.sf.net/sfu/creativitycat-com _______________________________________________ Felix-language mailing list Felix-language@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/felix-language