There are/have been some implementations of the ideas mentioned in the original post: 1. Smalltalk - I used the Squeak implementation in college and found it terribly frustrating when the image would crash. 2. IBM VisualAge for Java - I used this about 15 years ago. It still used files for each class, but there was one view where you could pretend you were just editing methods. 3. Go - There is a standard Go format and tool to do the formatting, users can transform it if they'd like.
You would need the ability to capture the edits to the environment in some serialized form to avoid the crashed image file problem. There could be several levels of understanding built into a SCM system: character stream, forms, AST. The system might track all three, promoting its understanding as code is completed and compiles. I came to like Go's approach/attitude to formatting. There's one "right" way, but your way is fine too. As long as you can reformat to a style you're comfortable with, there's no problem. With s-exprs that's even easier. One complicating factor that might be helped by the multiple levels of understanding is creating a partial ordering of edits so that you have more flexibility in merging. If the SCM understands the type of transform you are performing, there might be all sorts of ways to reorder changes. You could even create "action macros" for applying a common transform to large numbers of functions. I suspect that you might still use files to represent your current state. The real benefit comes from the SCM system understanding the code and the context of changes. On Friday, July 20, 2012 5:44:14 AM UTC-4, Mark Derricutt wrote: > > On 20/07/12 2:45 AM, Mark wrote: > > That's what I was thinking. Is Envy still around? The Google didn't give > me much after a quick search. > > Not sure about Envy - but "Store" is what Cincom Smalltalk now uses: > > - public repository - > http://www.cincomsmalltalk.com/CincomSmalltalkWiki/PostgreSQL+Access+Page > - info - > http://www.cincomsmalltalk.com/CincomSmalltalkWiki/Store+Misc+Note > > the links off the info page take you info about the database schema and > everything you might need to look at. > -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en