Follow Slashdot stories on Twitter

 



Forgot your password?
typodupeerror
×
Programming Open Source

Free/Libre 'GnuCOBOL' Compiler Reaches Maturity, Can Compete with Proprietary Offerings (thenewstack.io) 49

An anonymous reader shared this report: After 20 years of development, the open source GnuCOBOL "has reached an industrial maturity and can compete with proprietary offers in all environments," said OCamlPro founder and GnuCOBOL contributor Fabrice Le Fessant, in a FOSDEM talk about the technology. GnuCOBOL turns COBOL source code into executable applications. It is very cross-platform, running Linux, BSD, many proprietary Unixes, macOS, and Windows, even Android. And the latest version, v.32, is being used in many commercial settings...

Sobisch noted that the GnuCOBOL is seeing a lot of commercial deployments, such as for banking back-end apps, many of which are being migrated from Micro Focus, with users reporting performance improvements as a result. The French DGFIP federal agency moved from a GCOS mainframe to GnuCOBOL, with the help of Le Fessant's firm.

Originally called OpenCOBOL, the project was started in 2002 and renamed GnuCOBOL in 2013. In the past three years, it has received attention from 13 contributors with 460 commits. Most Linux package managers have a copy of GnuCOBOL for the program for downloading... It can compile to C code (C89+), making it extremely portable, from mainframes to Raspberry Pi's, Sobisch said...

Also new is SuperBOL, a development studio for GnuCOBOL developed by Le Fessant's OCamlPro. It runs as a VSCode Extension and features a full COBOL processor (written in OCaml).

This discussion has been archived. No new comments can be posted.

Free/Libre 'GnuCOBOL' Compiler Reaches Maturity, Can Compete with Proprietary Offerings

Comments Filter:
  • program in raw, unaddorned hexadecimal. Directly.

  • " It is very cross-platform, running Linux, BSD, many proprietary Unixes, macOS, and Windows, even Android. "

    And yet, a windows apllication I need will have its developer say no more windows 7 version, it isn't supported by Microsoft anymore. You can't imagine how I despise such short-sightedness and insult to the principles of software development. What a sad epoch we are living in.

    • by tysonedwards ( 969693 ) on Sunday March 17, 2024 @02:20PM (#64322619)
      Often times, said new updates will work on older OSes, but is simply untested. After all, maintaining a QA lab with an EOL/EOS Operating System is rarely worth the cost. And thatâ(TM)s aside from the organizational risk of having a business critical system that is unsupportable.
    • by TwistedGreen ( 80055 ) on Sunday March 17, 2024 @02:21PM (#64322625)

      I'm still angry from when Firefox dropped support for Windows 98!

    • by gweihir ( 88907 )

      It is not short-sightedness. It is unfettered greed. They want to save a bit of money by not testing on Win7 anymore. That this causes large cost to you is something they simply do not care about.

      • by internetd00du ( 7659518 ) on Sunday March 17, 2024 @03:26PM (#64322809)

        How many versions of Windows OS would you support if you ran a software company?
        I assume it would be 7, 8, 10 & 11?
        What about 8.1 or the half yearly updates to 10?

        Having worked in the software industry... we had a fixed team size. Each time a new OS/Browser came out, we dropped the oldest. Otherwise our Dev + QA + Support time would keep increasing.

        • I would offer a version of 7 or 10 that only got security updates and charge for the updates. The business world needs a version that just stays the same. Why do they *have* to keep making it worse? If they could make money from keeping it secure, money is money.

          Now if the gamers want a cutting edge version, fine.

        • As an ex-employee of DEC, I feel deep regret whenever I see such laments and complaints. DEC put far more emphasis on reliability, security, and compatibility. But customers ran, rather than walked, to the far cheaper PC-based software.

          It's one of the most sensational examples of piling up mountain ranges of technical debt for a short-term advantage.

      • Possibly not greed, but lack of resources. Maybe greed at highest levels to keep employee counts low, but at the middle and low levels often it's just frustrating to get every increasing workloads without being allowed new employees or even replacement employees.

    • by satanicat ( 239025 ) on Sunday March 17, 2024 @02:40PM (#64322671)

      On the other hand, Microsoft itself has a pretty impressive record with maintaining backward binary-compatibility with older applications on newer OS versions. To the extent I haven't seen really anywhere else.

      Whether that's a good thing or not however, I don't know.

    • by Somervillain ( 4719341 ) on Sunday March 17, 2024 @03:13PM (#64322769)

      " It is very cross-platform, running Linux, BSD, many proprietary Unixes, macOS, and Windows, even Android. "

      And yet, a windows apllication I need will have its developer say no more windows 7 version, it isn't supported by Microsoft anymore. You can't imagine how I despise such short-sightedness and insult to the principles of software development. What a sad epoch we are living in.

      Apples to oranges, my friend. If you want a basic mainframe environment, it can be supported 50 years. If the only interface a program interacts with it TCP/IP and disk and all transmissions are unencrypted, the same is possible. If you want to use a UI?...sorry...that's tough to maintain. You want it to be secure?...that's tough.

      I have supported ancient applications. It SUUUUUCKS. For commercial applications, if something breaks, we have to fix it. Oh, our newest application doesn't run on your 30 year old Solaris installation?...welp....I either say "sorry, you have to run modern Linux"...or I get to go out and buy some 30 year old solaris boxes on eBay and maintain a museum of every customer installation....or pay an emulation service and hope they do a good enough job.

      We break support for legacy environments because of security reasons. Any app that does anything useful has at least a dozen dependencies. Also, as developers, we get very constrained and can't use modern features if we have to support ancient technology. I primarily write business applications in Java and similar languages. I rely on a JVM and we have to upgrade faster than we want to because neither Oracle nor OpenJDK will support anything older than Java 11 plus I really like Java records (a new feature) which makes my code leaner and more secure. I don't want to support your Java 1.2 env from 1999. Anything that worked in 1999 probably has many known vulnerabilities...which are well-known to attackers and your firewall is the only thing preventing it from being taken over by a shitty hacker or a foreign government.

      And my job is WAAAAAY easier than something that relies on a local GUI, where APIs are changing all the time and permission models are evolving and adding new restrictions constantly. My apps are conduits to a DB and only touch a network stack and JDBC driver. Your WIndows 7 app probably has a lot more touchpoints with your OS.

      Sure, we COULD do more with legacy systems, but then you'd be complaining about all the viruses you're getting and how slow they are and how slowly everything comes out and how it costs so much more. Sorry...the reason no one supports legacy is because it's a bad idea. It's much more efficient and intelligent to keep things modern.

    • OK... I get why people want very old operating systems to still run. But why do you want very old OSs with new software?

    • What a sad epoch we are living in.

      I for one am happy that software vendors drive the stubborn to upgrade their OS to one currently in support. We have enough problems with zombie machines run by hackers without having people who think running a 15 year old OS is acceptable contributing to their botnet.

    • You can't imagine how I despise such short-sightedness and insult to the principles of software development.

      It's just that they are more oriented to the principles of bank account development.

  • Cobol is something that I've always thought I should be doing more with.

    It's designed around record management, which is where a lot of programming projects end up.

    Geany (my favourite code editor) has Cobol synax highlighting and markup support too.

    I've got a few books on Cobol and I've actually spent a bit of time learning something about it but every time I get started I seem to get sidetracked onto something else.

    But it's still on my one-of-these-days list.

  • Great news, now have GCJ working, mature and stable by 2050 and I will be happy!
    https://en.wikipedia.org/wiki/... [wikipedia.org]

  • GnuCOBOL project team members keep dying of old age.

  • I mean everybody assumed that Java would be the "new COBOL" until Oracle announced that it wouldn't be. A GPL COBOL compiler would probably create more interest in that area.

    • by gtall ( 79522 )

      Oracle thought that too. In a meeting room, lawyers for Sun and Oracle were hashing out the buyout:

      Oracle Lawyer: So, this Java thing, what is it?

      Sun Lawyer: it's the next phase in software, oh yes!

      OL: And we can expect giant profits from it?

      SL (now with tears in his eyes): Oh fer sure, fer sure....Big, Big Money, we have loads of companies hooked on it, they'll love you.

      OL: Shazzam, we gotta have some of that!!

      SL is now back at Sun Central Command is talking to another lawyer.

      ASL: And you told them they'd

  • Just in time LOL

  • by jmccue ( 834797 ) on Sunday March 17, 2024 @02:48PM (#64322697) Homepage

    World would be a much different world if a cheap, good COBOL was around in the early 90s. IIRC, the FSF refused to help fund a COBOL in the early days. This was due to elitism.

    Many people were begging for a good COBOL for PCs and Linux in the early days, but all that was available were versions that cost thousands. Glad to see it is here now, will be good for young people needing to learn it for Mainframes.

  • SAMPLE CODE (Score:4, Funny)

    by cstacy ( 534252 ) on Sunday March 17, 2024 @02:49PM (#64322701)


    IDENTIFICATION DIVISION.
      PROGRAM-ID. SNOZBERRY.
    COMMUNITY DIVISION.
      LICENSE SECTION.

          01 GPL VERSION 3.0
    ENVIRONMENT DIVISION.
            SYSERR IS /dev/null
    DATA DIVISION.
      WORKING-STORAGE SECTION.
        01 WILLY PIC A(9).
        01 WONKA PIC A(9).
        01 TIME PIC A(9) VALUE 'SO MUCH'.
        01 TODO PIC A(9) VALUE 'SO LITTLE'.
    PROCEDURE DIVISION.
      MOVE TIME TO WILLY
      MOVE TODO TO WONKA.
      * STRIKE THAT. REVERSE IT.
      MOVE TODO TO WILLY
      MOVE TIME TO WONKA.
      DISPLAY 'PURE IMAGINATION'.
      STOP RUN. DONT. COME BACK.

  • Next (Score:4, Interesting)

    by faldore1 ( 7298482 ) on Sunday March 17, 2024 @02:49PM (#64322703)
    Next up - CobolScript, running in NodeJS/Browser
  • Since it's a banking language I wonder if v.32 is running code at the Bank of International Settlements.

  • Cocoon [imdb.com] Remake Pitch: When a group of trespassing retired mainframe programmers swim in a pool containing GnuCOBOL on USB drives, they find themselves energized with youthful vigor. :-)

  • Yes, I appreciate the tools, and I"m definitely poor enough to need them... But I get tired of being told to make the same thing that I'm sure someone else has made/needs. That's the world that "intellectual property" has given us.

  • I don't remember COBOL being considered overly complex. It was used a lot on those old, puny-by-today's-standards, mainframes of the 1970s. Certainly is was no PL/1 monster.

    So I'm wondering why it took so long to get this compiler. I'm not complaining or criticizing; on the contrary, I applaud the achievement. But still, it seems late in the day. My guess would be lack of interest and therefore lack of resources, but that's just speculation.

  • Before the last person who actually used Cobol to write a program that actually got used died.

  • Yes, I did get an "A" in class in COBOL in 1977. No, it never made it to my resume.
  • We were afraid we were going to have to _abandon_ CoBOL in favor of some new-fangled programming language like Lisp or even <<shudder>> C. Perish the thought!

"I've finally learned what `upward compatible' means. It means we get to keep all our old mistakes." -- Dennie van Tassel

Working...