Crossover: Towards Compiler-enabled COBOL-C Interoperability
summary
Crossover compiles BabyCobol and C modules into one executable using LLVM and an explicit foreign-function interface, exposing a C runtime bstd library that marshals COBOL PICTURE types to C primitives and structs. The system is bidirectional, tested with boundary-value suites, and the demo shows calling C from BabyCobol and vice versa works. Performance measurements show conversions are cheap for by-value/struct but expensive for by-reference-as-primitive. Source and DOI are on GitHub/10.1145/3624007.3624055.
AI-written summary · about
chapters (9)
- 0:00Introduction
- 1:56Legacy COBOL relevance
- 4:45Baby COBOL subset
- 6:11COBOL-C interoperability demo
- 9:45Bridging COBOL and C data types
- 12:35Correctness vs performance trade-offs
- 14:42Foreign function interface design
- 15:26Future interoperability directions
- 15:52Q&A
related talks
43mLiving with and Leveraging GCC
16mSoftware Language Engineers’ Worst Nightmare
37mTCO
40m"Fine-Grained C++ Interop"
31mCo- and Contra-: Adding a Little Variance
54m10-Year Most Influential Paper Talk: Coq: the world's best macro assembler?
01h 03mCLANG + C2 - Engineering/Futures/Measurements
14mOn-Stack Replacement for Program Generators and Source-to-Source Compilers
