SI
SI
discoversearch

We've detected that you're using an ad content blocking browser plug-in or feature. Ads provide a critical source of revenue to the continued operation of Silicon Investor.  We ask that you disable ad blocking while on Silicon Investor in the best interests of our community.  If you are not using an ad blocker but are still receiving this message, make sure your browser's tracking protection is set to the 'standard' level.
Technology Stocks : Wind River going up, up, up!

 Public ReplyPrvt ReplyMark as Last ReadFilePrevious 10Next 10PreviousNext  
To: Boplicity who wrote (1685)8/15/1997 12:30:00 AM
From: Allen Benn   of 10309
 
>Comments please on Java vs WIND.

To begin with it isn't Java vs. WIND, since they aren't competitors. WIND is positioning itself to be a major beneficiary of Java. So are INTS and MWAR. And so is Sun, who is beginning to see the potential of embedded systems, and would like to grab a controlling piece.

Java is the perfect language at the perfect time. It completes the transition from C to object programming begun by C++, eliminating frequent sources of programmer error in the process with its disdain for pointers and with automatic garbage collection. Its on-the-fly interpretive/fast compile network-fed capability is the perfect answer for advancing the media content of the Web, and for enabling networked thin clients to duplicate the complete PC interface paradigm with minimal maintenance.

Unfortunately for Java, and Sun, the embedded systems world cannot just jump onto any new bandwagon that comes along. Embedded systems have to work with far more reliability than applications on your desktop (PC or NC). Inefficient use of code, intrinsic problems with garbage collection, lack of reliable Java libraries, and a myriad of other problems emerging seriously impede the spread of Java in embedded systems.

Keep in mind that most Embedded Internet Devices will NOT utilize dynamic downloading of code all users of PCs and NCs associate with the essence of Java. This means the only reason to program these devices in Java is the syntactical attractiveness of the Java programming language. My guess is that most embedded systems programmers will resist giving up their tight control on memory usage and would surely miss the arcane but useful pointer arithmetic they mastered after so much pain.

Since most embedded systems operate in a hard real-time environment (whether they need to or not) Java's (OS, VJM, etc.) lack of real-time facilities virtually dictates that Java be executed as a task under control of a RTOS like VxWorks. This means that most existing C language libraries used currently for applications (communications, I/O, decision algorithms e.g. fuzzy logic, etc.) will continue to be used for the foreseeable future in embedded systems. (To this day a lot of statistical functions implemented in systems using the C language remain coded in FORTRAN.)

All this adds up to Java being more hype than reality in deeply embedded systems. Java will become prevalent in embedded systems after the turn of the century if and only if the language becomes and stays popular.

In the early seventies IBM, the computer monopolist, coupled the advantages of FORTRAN with COBOL and created the killer language, destined to replace all computer languages. PL1 never quite took off. IBM's PL1 compilers had bugs far too long after the language was introduced, but mostly COBOL programmers only liked the COBOL aspect of PL1, while FORTRAN programmers detested the COBOL aspects of PL1. Java's insistence on object programming may be appealing to computer scientists, but perhaps not to mainline C language programmers. Also, if object programming is so essential, how come AT&T's Limbo language introduced after Java makes a point of not being object oriented.

As another example, explain why the popular teaching language, Pascal, which became very popular with Borland's revolutionary Turbo Pascal introduction in the early eighties, has foundered in competition with the C language. Pascal syntax is clearly superior to the C language, and you can do just about everything in Pascal that you can do in C - except Pascal is not nearly so lax with pointers. Is it possible that C programmers will resist Java for this reason?

Probably the best explanation for the market failure of Pascal is the prevalence of Unix which encourages C familiarity by programmers, systems administrators, and even users forced to chase down problems. What OS is driving the popularity of Java? Certainly not JavaOS, since the JVM will be running on traditional RTOSs in the embedded world.

A final example is Ada. Specified and contracted by the military, Ada was commanded to be the universal language of the military - later limited to "mission critical" systems. The FAA followed suit and standardized all future Air Traffic control systems on Ada. (So far there hasn't been any, but the upgrade scheduled for the late 1980's should appear any year now.) Anyone alive in the late seventies and early eighties had to believe that after taking over the government, Ada would conquer the civilian world of programming. Nothing of the sort happened.

In summary, you should not jump to any conclusions about computer languages. Rather, it is important to position yourself to win whatever outcome the market determines. This is precisely the role WIND has taken regarding Java. If Java fails miserably, it leaves WIND completely and totally unscathed. Life goes on with C/C++ or any other language.

If Java succeeds, then WIND will be amply rewarded from its established beachhead in NCI, and other Java-oriented companies, being an enthusiastic supporter of running a JVM (whatever form this takes ultimately) as a task under VxWorks.

Allen
Report TOU ViolationShare This Post
 Public ReplyPrvt ReplyMark as Last ReadFilePrevious 10Next 10PreviousNext