SlideShare a Scribd company logo
Visual COBOL Development for
         Unix & Java
        Darren Self & Paula Willis
         Product Development
Visual COBOL for Eclipse

• Complete COBOL development environment
  – Modern IDE
  – Remote development
  – Native and managed code




                2
Why work remotely?




                 3
RSE/SAMBA




            • Project Creation/Maintenance

            • Compilation

            • Debugging



     4
Why hold with tradition?
© Daily Telegraph




                    5
From this...




               6
To this...




             7
Develop on all platforms
     Well, almost!




          © Science Museum, London
Remote Development Supported Platforms




     Desktop Eclipse IDE       Server Hubs



                           9
Seeing more details...




10                 © Darren Self, 2012
11
Java
                                          JVM
source code               managed code

java (.java)               JVM bytecode

                 Java        ...
  class c1     compiler      iconst_0i
                             aload
  {
                 javac       istore_1
  }                          jsr

                            .class/.jar



Write Once Run Anywhere
COBOL
                                           JVM
source code                managed code

COBOL (.cbl)                JVM bytecode

 Program-id P   COBOL         ...
 working-stor   compiler      iconst_0i
 procedure di                 aload
 display “hel    jvmgen       istore_1
 goback.                      jsr

                             .class/.jar
Mixing languages
source code              managed code   JVM



              COBOL
              compiler
 COBOL


                Java
              compiler     ...
  Java                         JVM
                             bytecode

               JRuby
              compiler
 JRuby
What is JVM COBOL?

• COBOL with extensions to take advantage of features of
  the JVM framework

                set/invoke      set/invoke
               OO syntax       OO syntax
               inner-class     inner-class
               annotations     annotations
            exception handling
                            exception handling
               collections     collections
                 declare         declare Core    COBOL
            extension methods
                            extension methods
                sync verb        sync verb
             predefined types predefined types
               linkage-less     linkage-less
                  enums           enums
             and much more....
                             and much more....
Choice of 2 runtime configurations

                                   Pure runtime                          Impure runtime


                                                                          native        native         native
                                                                           app           app            app

                                                    app                                   app
                                           myapp.jar/class                         myapp.jar/class
              runtime components
Micro Focus




                                     FileHandler             SQL               Native
                                                                                              Native SQL
                                    mffilehandler.jar     mfsqljvm.jar      FileHandler

                                              pure runtime                             runtime
                                          mfcobolrtspure.jar                  mfcobolrts.jar & mfcobol.jar


         • Pure JVM runtime, JVM FileHandler, JVM SQL • JVM runtime with native interop support
         • No support for interop to native code      • Calls the native FileHandler
SmartLinkage

•   If legacy COBOL app contains COBOL data types in linkage
•   Set ilsmartlinkage directive on legacy COBOL app
•   On compilation auto-generates managed types
•   So you can access COBOL linkage data from other managed
    languages transparently.

    – No hand-written wrapper classes needed

    – No changes required to the original code

    – COBOL data shown in C#/Java/COBOL intellisense
Darren.Self@microfocus.com
Paula.Willis@microfocus.com

More Related Content

PPTX
COBOL deployment to .NET or JVM
PPT
Evolution Of Java
PPT
The Evolution of Java
PPTX
Presentation on Java Basic
PPTX
Core java environment setup and details
PDF
itft-Java evolution
PDF
Lec 3 01_aug13
KEY
Single Sourcing RCP and RAP
COBOL deployment to .NET or JVM
Evolution Of Java
The Evolution of Java
Presentation on Java Basic
Core java environment setup and details
itft-Java evolution
Lec 3 01_aug13
Single Sourcing RCP and RAP

What's hot (20)

PPTX
History of java'
PDF
Os Rego
PDF
Single Sourcing RAP and RCP - Desktop and web clients from a single code base
PPTX
LUGOD Raspberry Pi Hacking
DOCX
PPTX
PPTX
Transforming your COBOL UI - COBOL Developer Day
PPTX
JAVA ENVIRONMENT
PPTX
Features of java 02
PPT
Apache Harmony: An Open Innovation
PPTX
Java History
ODP
Os Grossupdated
PDF
Developer Conference 2.6 - (Skills and Development Efficiency) Modernizing yo...
PPTX
The Java Story
ODP
3978 Why is Java so different... A Session for Cobol/PLI/Assembler Developers
PPTX
Evolution of java By Abbas khan
PDF
Java presentation
PPTX
Java ms harsha
PDF
Java introduction
PPTX
2012 04-09-v2-tdp-1167-cdi-bestpractices-final
History of java'
Os Rego
Single Sourcing RAP and RCP - Desktop and web clients from a single code base
LUGOD Raspberry Pi Hacking
Transforming your COBOL UI - COBOL Developer Day
JAVA ENVIRONMENT
Features of java 02
Apache Harmony: An Open Innovation
Java History
Os Grossupdated
Developer Conference 2.6 - (Skills and Development Efficiency) Modernizing yo...
The Java Story
3978 Why is Java so different... A Session for Cobol/PLI/Assembler Developers
Evolution of java By Abbas khan
Java presentation
Java ms harsha
Java introduction
2012 04-09-v2-tdp-1167-cdi-bestpractices-final
Ad

Similar to Visual COBOL Development for Unix and Java (20)

PDF
Understanding the Dalvik Virtual Machine
PPTX
JAVAPart1_BasicIntroduction.pptx
PPTX
JAVA_Day1_BasicIntroduction.pptx
PPTX
Java virtual machine
PPT
A begineers guide of JAVA - Getting Started
PPT
Java security
PDF
What Your Jvm Has Been Trying To Tell You
PDF
Enterprise OSGi at eBay
PPTX
Java Starting
PDF
Java unit 1
PDF
Unit 1 Core Java for Compter Science 3rd
PPTX
imperative programming language, java, android
 
PPTX
basic core java up to operator
PDF
Javanotes ww8
PPT
Introduction to Java Programming, Basic Structure, variables Data type, input...
PPTX
OOP with Java
PPTX
Introduction to java by priti sajja
PPTX
Java lab lecture 1
Understanding the Dalvik Virtual Machine
JAVAPart1_BasicIntroduction.pptx
JAVA_Day1_BasicIntroduction.pptx
Java virtual machine
A begineers guide of JAVA - Getting Started
Java security
What Your Jvm Has Been Trying To Tell You
Enterprise OSGi at eBay
Java Starting
Java unit 1
Unit 1 Core Java for Compter Science 3rd
imperative programming language, java, android
 
basic core java up to operator
Javanotes ww8
Introduction to Java Programming, Basic Structure, variables Data type, input...
OOP with Java
Introduction to java by priti sajja
Java lab lecture 1
Ad

More from Micro Focus (20)

PPTX
North America Strategic Modernization Exec Forum
PDF
Tech Channel COBOL ebook
PDF
Unlocking COBOL Business Value
PDF
Quietly confident, enduringly competent - COBOL.
PDF
5 key capabilitie for a smart service desk solution infographic
PDF
SAP Fortify by Micro Focus.
PDF
Digital Transformation pillars 2020
PDF
Whats new in Enterprise 5.0 Product Suite
PPTX
Micro Focus Corporate Overview
PPTX
Why attend the application modernization & connectivity track at Micro Focus ...
PDF
Micro Focus #DevDay50 - Atlanta
PDF
Growth of Internet Data - 2017
PPTX
Easily Create Scalable Automation using Selenium
PDF
The Journey to Mainframe DevOps
PDF
Micro Focus extend 10 and 10.1 with AcuToWeb
PDF
The COBOL Story by Wim Ebbinkhuijsen
PPTX
DevDay Copenhagen - Micro Focus overview and introduction
PPTX
The DevOps Journey
PPTX
ACUCOBOL - Product Strategy and Roadmap
PDF
#DevDay Copenhagen - Bluegarden Presentation
North America Strategic Modernization Exec Forum
Tech Channel COBOL ebook
Unlocking COBOL Business Value
Quietly confident, enduringly competent - COBOL.
5 key capabilitie for a smart service desk solution infographic
SAP Fortify by Micro Focus.
Digital Transformation pillars 2020
Whats new in Enterprise 5.0 Product Suite
Micro Focus Corporate Overview
Why attend the application modernization & connectivity track at Micro Focus ...
Micro Focus #DevDay50 - Atlanta
Growth of Internet Data - 2017
Easily Create Scalable Automation using Selenium
The Journey to Mainframe DevOps
Micro Focus extend 10 and 10.1 with AcuToWeb
The COBOL Story by Wim Ebbinkhuijsen
DevDay Copenhagen - Micro Focus overview and introduction
The DevOps Journey
ACUCOBOL - Product Strategy and Roadmap
#DevDay Copenhagen - Bluegarden Presentation

Visual COBOL Development for Unix and Java

  • 1. Visual COBOL Development for Unix & Java Darren Self & Paula Willis Product Development
  • 2. Visual COBOL for Eclipse • Complete COBOL development environment – Modern IDE – Remote development – Native and managed code 2
  • 4. RSE/SAMBA • Project Creation/Maintenance • Compilation • Debugging 4
  • 5. Why hold with tradition? © Daily Telegraph 5
  • 8. Develop on all platforms Well, almost! © Science Museum, London
  • 9. Remote Development Supported Platforms Desktop Eclipse IDE Server Hubs 9
  • 10. Seeing more details... 10 © Darren Self, 2012
  • 11. 11
  • 12. Java JVM source code managed code java (.java) JVM bytecode Java ... class c1 compiler iconst_0i aload { javac istore_1 } jsr .class/.jar Write Once Run Anywhere
  • 13. COBOL JVM source code managed code COBOL (.cbl) JVM bytecode Program-id P COBOL ... working-stor compiler iconst_0i procedure di aload display “hel jvmgen istore_1 goback. jsr .class/.jar
  • 14. Mixing languages source code managed code JVM COBOL compiler COBOL Java compiler ... Java JVM bytecode JRuby compiler JRuby
  • 15. What is JVM COBOL? • COBOL with extensions to take advantage of features of the JVM framework set/invoke set/invoke OO syntax OO syntax inner-class inner-class annotations annotations exception handling exception handling collections collections declare declare Core COBOL extension methods extension methods sync verb sync verb predefined types predefined types linkage-less linkage-less enums enums and much more.... and much more....
  • 16. Choice of 2 runtime configurations Pure runtime Impure runtime native native native app app app app app myapp.jar/class myapp.jar/class runtime components Micro Focus FileHandler SQL Native Native SQL mffilehandler.jar mfsqljvm.jar FileHandler pure runtime runtime mfcobolrtspure.jar mfcobolrts.jar & mfcobol.jar • Pure JVM runtime, JVM FileHandler, JVM SQL • JVM runtime with native interop support • No support for interop to native code • Calls the native FileHandler
  • 17. SmartLinkage • If legacy COBOL app contains COBOL data types in linkage • Set ilsmartlinkage directive on legacy COBOL app • On compilation auto-generates managed types • So you can access COBOL linkage data from other managed languages transparently. – No hand-written wrapper classes needed – No changes required to the original code – COBOL data shown in C#/Java/COBOL intellisense

Editor's Notes

  • #4: Why?Limited hardwareGeographical realitiesCompile with local librariesThird party limitations (Tuxedo for instance)Debug on platform where code will be running
  • #5: RSE over TCPIP – can be secured over SSLOptional SAMBA connection for project accessLong running daemon on server Starts processes per user under their authentication These processes control compilation and debugging of remote applications
  • #9: Connect to anything – almost!