Hi Tassilo, Thanks for your reply. I agree that you need a persistence layer and a VCS provides additional useful capabilities other than persistence. My suggestion isn't to dispense with a persistence or VCS layer. Its more that the REPL connects directly to the VCS layer (which may be remote or local) to retrieve its code artifacts. Persistence would of course be a requirement of the VCS layer. The workflow would change, instead of checking out a filesystem from a VCS and then starting a REPL to load the checked out code, you would first start the REPL and then point it to the VCS endpoint, bypassing the local filesystem. This enables the user to work directly with the VCS inside the REPL without the intermediate local filesystem. In this mode I ask what value would writing source files to a local filesystem provide?
Regards, Nathan On Tuesday, July 17, 2012 12:40:09 PM UTC+1, Tassilo Horn wrote: > > N8Dawgrr <nathan.r.matth...@gmail.com> writes: > > > http://clojurian.blogspot.co.uk/ > > > > In a nutshell its about why use files for source in Clojure, can we do > > better? > > Interesting thoughts. With a dynamic, interactive language like Clojure > it would certainly be possible to omit files at all and instead hack > everything together at the repl where all def-forms would carry all > previous versions in their metadata. > > But I think that's not better than the traditional file-based approach. > Version control systems provide far more than just keeping previous > revisions. You want do diffs, do branching, merge across different > branches on possibly different repositories, etc, etc. > > That's all already provided by modern VCS in a language independent way, > so I hardly see a reason to reinvent the wheel here. And in the end, > such an approach will also need some persistency layer, since you don't > want to loose your program and all its history if the JVM crashes. > > Bye, > Tassilo > On Tuesday, July 17, 2012 12:40:09 PM UTC+1, Tassilo Horn wrote: > > N8Dawgrr <nathan.r.matth...@gmail.com> writes: > > > http://clojurian.blogspot.co.uk/ > > > > In a nutshell its about why use files for source in Clojure, can we do > > better? > > Interesting thoughts. With a dynamic, interactive language like Clojure > it would certainly be possible to omit files at all and instead hack > everything together at the repl where all def-forms would carry all > previous versions in their metadata. > > But I think that's not better than the traditional file-based approach. > Version control systems provide far more than just keeping previous > revisions. You want do diffs, do branching, merge across different > branches on possibly different repositories, etc, etc. > > That's all already provided by modern VCS in a language independent way, > so I hardly see a reason to reinvent the wheel here. And in the end, > such an approach will also need some persistency layer, since you don't > want to loose your program and all its history if the JVM crashes. > > Bye, > Tassilo > On Tuesday, July 17, 2012 12:40:09 PM UTC+1, Tassilo Horn wrote: > > N8Dawgrr <nathan.r.matth...@gmail.com> writes: > > > http://clojurian.blogspot.co.uk/ > > > > In a nutshell its about why use files for source in Clojure, can we do > > better? > > Interesting thoughts. With a dynamic, interactive language like Clojure > it would certainly be possible to omit files at all and instead hack > everything together at the repl where all def-forms would carry all > previous versions in their metadata. > > But I think that's not better than the traditional file-based approach. > Version control systems provide far more than just keeping previous > revisions. You want do diffs, do branching, merge across different > branches on possibly different repositories, etc, etc. > > That's all already provided by modern VCS in a language independent way, > so I hardly see a reason to reinvent the wheel here. And in the end, > such an approach will also need some persistency layer, since you don't > want to loose your program and all its history if the JVM crashes. > > Bye, > Tassilo > -- 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