Why Move to JVM COBOL Code?

Using JVM COBOL code has many advantages such as:

Micro Focus COBOL already is a Java language:
The COBOL language has been extended over the years and supports a lot of the features in the JVM.

In most cases, the process of moving to JVM COBOL code entails recompiling the existing COBOL code to JVM COBOL code in Enterprise Developer. Also, you can use the ILSMARTLINKAGE COBOL compiler directive to recompile to JVM COBOL code (see the Examples section in this topic). ILSMARTLINKAGE enables COBOL to interoperate with other managed languages.

Take full advantage of the capabilities of the JVM:
  • Use the run-time system services provided by the JVM - these provide for integrity and the security of your COBOL applications, and provide exception handling and garbage collection. As the run-time system services optimize how your code executes, this results in improved application performance over time.
  • Improve your application performance - the JVM applies many optimizations including those based on how the code is actually executed at run time; therefore, it can make optimizations that a static analysis cannot.
  • Create your own JVM COBOL objects - with JVM COBOL you can do a lot of what you can do with any other managed languages, such as creating your own methods, classes, delegates, and interfaces. See An Introduction to Object-Oriented Programming for COBOL Developers, available on the Micro Focus Customer Support Documentation Web site.
  • Easy to learn if you have experience with other managed languages - learning JVM COBOL doesn't differ from learning any other managed language. If you already program in other managed languages, you only need to learn the syntax rules.
  • Access a variety of reusable libraries of code - the JAVA SDK includes large libraries of reusable code and constructs which you can reuse directly in JVM COBOL code. This means you can easily solve just about any programming task, and be more productive in your work.
COBOL can interoperate with other languages:
  • Since all JVM languages compile to files that use the same byte code, COBOL compiled to JVM COBOL code can talk to other JVM applications written in any other JVM language, or be deployed on other JVM platforms.
  • COBOL can interoperate with other languages - other languages can call COBOL and vice versa.
  • Debug COBOL and parts of your application in other JVM languages together. You can step between the COBOL code and the code written in the other JVM language.
Create new, modern user interfaces:
Using JVM COBOL code is a great way to modernize the look and feel of your applications by taking advantage of the many UI frameworks that are available for the JVM.
Deploy to Java application servers:
Java application servers are required when you provide "thin" client architecture for your applications. End users use a thin client installed on their machines to communicate with the main program which is deployed on the application server and processes all requests.

Enterprise Developer supports all major Java application servers and enables you to create and deploy COBOL applications on Java application servers as Web services or Java interfaces.

Create applications for deployment on the Web and mobile:
Modern application servers are designed to be used by applications written in a managed language such as C#, Java, and JVM COBOL. Using native COBOL for applications you upload to the server might not be possible or could lead to instabilities if the native program terminates due to an error condition.