In a batch programming system developed in the late 1960s - early 1970s at the Joint Institute for Nuclear Research in the city of Dubna near Moscow, it was possible to dump object files to punch cards in "binary" format, then use those punch-card equivalents of binary object files in a deck together with sources. A typical object file on punch cards looked like this:
.............................................................................O.. ..O............................................................................. ..O..O.....O..OOOO.......OOOO.....OOO....OOOOOO...OOOOOOO...................O.O. .....O.....O..O...O.....O....O...O...O...O.....O.....O.......................... ..O...O...O...O....O....O.......O.....O..O.....O.....O.......................OO. ..O...O...O...O.....O....OOOO...O.....O..O.....O.....O......................OOO. .......O.O....O.....O........O..O.....O..OOOOOO......O.......................O.. O.O....O.O....O.....O........O..O..OO.O..O...O.......O......................OOO. ........O.....O....O...O.....O...O...O...O....O......O......................O... O.......O.....OOOOO.....OOOOO.....OOO.O..O.....O.....O.......................... ............................................................................OOO. ............................................................................OOO. .O...O..........O...O.............O...O....O...O..........O.OO.O.....OO.OO...O.. ....................O.............O........O...O..............O.....OO...OO..... ....O.O........................................................O...OOO.OOO..O.O. ..O........................................................O.O.O....OO...O...... ..O..OO...............................O.................................O....OO. ....OOO...................................................O.O.O....O...O....OOO. ..O..O...............................................................O...O...O.. O.O.OOO..............................................................O.O.O..OOO. ..O.O...........................................................O..O.O...O..O... O...............................................................O......O........ ....OOO.O.......................................................O....O.O.O..OOO. ....OOO.........................................................O..O.OOO.OO.OOO. .....O....O.....OOO....OOO.OO.....O...O.O.OO...O.O......O....................O.. .O......OOO...O..O.....OOO..OO...OOOO.....O.O.OO................................ ....OO..O....O.OOO....O.O.OOO....OOO.O..O...O.O..O......O...................O.O. ..O...O.OOO..OO..O......O...O..O.OOOO...O...OOOO.O...O..O..........O...O........ .....O..OO...O..O..O...O...O.....OOO.OO.....O.OO............O................OO. ..O.O....O...O.O......O...O.......O.O........O.O.......O....................OOO. ..O..............O......O...O.......O........O............O............O.....O.. O.O.O........O.O.O.O..O.O.O.O........O....................O.O...............OOO. ..O..............O......O...O....................O...O....O...O.............O... O.O.O.O........O......O...O....O..........O......O...O.......................... ...............O.O....O.O.O.O....................O...O....O...O.............OOO. ..O.O.O........O.OO...O.OOO.OO.O..........O......O.O.O....O...O........O....OOO. .O.O.O........O........O........O............................................O.. .OO...............O...OO..O....O................................................ ....O.O..O....O...O....OO..OO...OO..........................................O.O. ..O...................OO..O....O................................................ ..O..OO....................O....O............................................OO. ..O.OOO................OO..OO...OO..........................................OOO. .....O....O....O...O.......O....O............................................O.. O.O.OOO...O....O...O....O..OO....O..........................................OOO. ....O.................OO..O....OO...........................................O... O.O....................OO...O...OO.............................................. ..O.OOO...O....O...O.......O................................................OOO. ..O.OOO..OO...OO..OO..OO..OO...OO...........................................OOO.
(An equivalent assembly language code is 42 lines long.)
Each card contains its ordinal number in the "object file", a parity column, and the module name in ECMA-1 code (with uniquely Cyrillic letters replacing the controls and some punctuations). The last card has an EOF flag.
In addition to Soviet mainframes, there were CDC and ICT computers at the JINR. Did their programming systems, or any other programming systems of that time, include such a capability, or was it a Soviet invention out of necessity, because magnetic tapes were in short supply and not of a particularly high quality?