Menu

[GSoC 2026] Implement Initial Object Oriented Support

2026-03-25
2026-03-30
  • Saurabh Kumar

    Saurabh Kumar - 2026-03-25

    Hello everybody!

    My name is Saurabh Kumar. I am a self-taught computer programmer from India with interest in Compilers and low-level development. I am one of the core contributors of the LFortran project, a modern, interactive and open-source LLVM based Fortran compiler.

    GnuCOBOL currently has no support for handling OO code and exits with an array of unhelpful error messages due to the lack of parsing support for OO code constructs. I propose to implement initial parsing, AST and codegen support for object-oriented (OO) COBOL into GnuCOBOL as part of my GSoC project.

    I have been working with @sf-mensch on a proposal for this project and have an implementation plan ready and reviewed.

    I have experience designing and implementing OOP features into the LFortran compiler and intend to add similar capabilities to GnuCOBOL.

    Here is the link to the complete proposal: https://docs.google.com/document/d/1TS4NMJvzrD0xq9CTCOMWn3TZyXewDHF3vUk1J09YJ0I/edit?usp=sharing

    I’d really appreciate any feedback or pointers from the community. Looking forward to contributing to GnuCOBOL!

    Edit: Added proposal link

     
    😄
    1
    👍
    1

    Last edit: Saurabh Kumar 2026-03-30
    • Vincent (Bryan) Coen

      Suggest you take a look at the C++ version of GC, although it is out of
      date the programmer did make an effort to start OO facilities using the
      C++ to do so and no I have not looked at the code base as I don't do C++.

      It might help you.

       

      Last edit: Simon Sobisch 2026-03-26
  • Mickey White

    Mickey White - 2026-03-25

    Saurabh, Welome to the GnuCOBOL discussion forum and project. Glad you are here.

     
  • Saurabh Kumar

    Saurabh Kumar - 2026-03-26

    @vcoen thanks! I will take a look into that branch.

     
  • Simon Sobisch

    Simon Sobisch - 2026-03-26

    The C++ branch generates C++ and uses structs for underlying data definition.

    The latter helps for inspecting the generated code and with C debugging, so at least taking part of that over is interesting. But that would be a separate effort.

    I've thought about that as a good starting point for OO COBOL years ago as well, but Ron convinced me that we do not need a C++ generation for that, so I now consider the rest of the (outdated) branch not that useful, at least not for GSoC.

     
    👍
    1

    Last edit: Simon Sobisch 2026-03-26
  • Saurabh Kumar

    Saurabh Kumar - 2026-03-30

    I have added the proposal link into the main post above. I would appreciate it if I could get a review from the community. Comments can be added directly on the document. I am sorry for the delay, I was not well.

     

    Last edit: Saurabh Kumar 2026-03-30

Log in to post a comment.

MongoDB Logo MongoDB