Appendix A -- OmniMark for the Impatient

[Previous] [Next]

OmniMark is used in this book as an example of a multiplatform programming language that has strong support for today's network programming environments. I have been using OmniMark for 10 years and find it to be stable, fast, and well supported. OmniMark started life as a tool for doing text conversion and has kept ahead of the hottest programming technologies since then.

Now OmniMark can provide a viable alternative to Perl for doing server-based programming. The OmniMark sales materials claim that OmniMark is "cheaper than Perl." This seems kind of silly, since Perl is free, right? Well, not exactly. If you've ever seen Perl code, you've probably noticed that it's visually noisy— because of the arcane regular expression syntax and its heavy use of brackets and other non-word syntax delimiters, Perl code can be difficult to understand.

If you are a Perl programmer, I want to ask you when you last fixed someone else's Perl program. Not easy, right? I've talked to many Perl programmers who would rather rewrite inherited code than fix it in place. Or how about that Perl program you wrote six months ago? Try to fix that today. I have found that the total cost of ownership (TCO) of Perl is quite high when you consider the maintenance issues.

Like Perl, OmniMark is a free product, but that's only part of its allure. OmniMark uses a pattern-matching syntax that is based on English grammar and is easy to learn and maintain. I've found that the total lifetime cost of an OmniMark program is much lower than the lifetime cost of a Perl program, because the OmniMark program can be maintained much more easily than a Perl program. Plus, OmniMark is much faster than Perl in a multiple-processor, multiple-server environment because it runs in a non-flushed mode on the server. A Perl program is typically invoked through a CGI interface. When the program is invoked, the Perl executable must be loaded each time, which opens the script for interpretation. Then everything is flushed, the process repeating for each call. New ISAPI filters and other methods allow Perl to execute in a non-flushed server mode, but in my experience, few programmers use them. This execution capability comes with OmniMark out of the box.



XML and SOAP Programming for BizTalk Servers
XML and SOAP Programming for BizTalk(TM) Servers (DV-MPS Programming)
ISBN: 0735611262
EAN: 2147483647
Year: 2000
Pages: 150

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net