From: Thomas Gagne Date: 2001-11-26T23:46:04+09:00 Subject: [ruby-talk:26516] Re: Table: Ruby versus Smalltalk, Objective-C, C++, Java; David, your table seems to mix language features with library features. Native Threads - isn't this an implementation issue? Doesn't Smalltalk MT use native threads? I personally believe this is a ding against VW. Foreign Function Interface - ST/X does a nice job of this. Heck, you can write C code inside methods! Is it necessary for a language to define how it interacts with the stacks of other languages and their runtime environments? Is it C's responsibility to know how to interface with Fortran, or is the fact that some vendor's implementations of both languages' runtime environments share common stack rules? Where is support for blocks? How many languages support that? It's certainly a useful language feature. Should Value Types be a native language feature? ST/X creates structs quite nicely using ByteArray with great accessors code. I've done a similar thing in VW. Does it have to be a language feature? Must a language define every stinking thing a programmer might do, or should that be the responsibility of standard library features? C doesn't define a GUI interface, and neither should *any* language if you ask me. GUIs exist only in an environment that includes them, and languages must exist without them. All they need is a compiler/interpreter. Access to GUIs, relational databases, HTTP, SMTP, etc. are library problems, not language problems. Certificate and Security mechanisms - I guess I need an explanation on that. On my computer (at least) security is the responsibility of the operating system. It's responsbile for making sure people only have access to what they're supposed to regardless what language a program was written in. In the database world my database keeps track of who's allowed to do what regardless of what language is used. Why should this be a language feature? How would such a language features be useful if not supported/implemented by other other languages used on the same machine/environment? Isn't RegEX supported in a VW parcel? Why would that be a language feature? How big a book do you want to write to teach people how to use a language? Would a student need to read a chapter that includes discussion on startup/compile/execute/shutdown speed? How about a chapter on the language's deployment footprint? Should .net languages include the entirety of Windows as part of their footprint? I appreciate everything you've done for Smalltalk, but your table is more propaganda than anything. Maybe you'd rather build a chart comparing Smallscript to specific language environments from specific vendors. If you want to include the features vendors choose to include/exclude then your chart would make more sense. -- ..tom