On Tue, Apr 10, 2012 at 3:50 AM, David Jeske <[email protected]> wrote:
> > On Apr 9, 2012 6:32 PM, "Jonathan S. Shapiro" <[email protected]> wrote: > >> In the absense of versioning issues, don't most dynamic language > runtimes handle modularity? Java/JVM, C#/CIL, Python, Ruby, Javascript... > all can have interfaces specified (whether checked by a compiler or not) > and load compatible classes at runtime. > > > > I think that most of the "object as hash-map" languages are immodular - > the problem is that in most of those languages an object's has-map is > modifiable by third party code. > > I agree with this design criticism, though in practice this is often not > an issue. For example, the large majority of Python software does not > modify classes at runtime. Javascript (and prototype languages in general) > do, however, have this problem. > I was interested to note in ECMAScript 5 that the defaults for mutability in this regard were changed. You can still have mutable hash-maps, but it is now the default that they are *not* mutable. > This problem is exacerbated by traditional OS/UNIX design, where > /usr/bin/python is a single installed version of python. How then are we to > support two python programs which require different versions of python to > coexist on the same system? > Change the path in the #! . > Agreed. By my view CIL seems a strictly better technical design than JVM > in all ways. > Other than public availability on non-M$ platforms out from under a legal cloud. > > However: it is often the case that in layered systems of the type you > describe, the layers in the "waiting for message" state are sitting at the > top of an event loop, and therefore have an effectively empty heap. I think > it is an interesting question whether this can be usefully exploited > somehow. > > I struggle to understand what system this is with an empty heap. Take a > look at some open-source projects struggling with this now... HBase and > Cassandra.. two data-storage engines built with GC. They have very busy > heaps, and their GC pauses are petty unacceptable for clients. > Then they aren't structured in the way I have in mind.
_______________________________________________ bitc-dev mailing list [email protected] http://www.coyotos.org/mailman/listinfo/bitc-dev
