Вы можете написать свой движок на любом языке и заставить его работать с Arena, если он говорит по протоколу WinBoard или UCI. Оба из них предполагают, что ваш движок (который работает как отдельный процесс) вводит и выводит простой текст. Вы можете написать это на C ++, Java, Visual Basic, COBOL, Forth или как угодно. (Примечание: я не рекомендую пытаться написать шахматный движок на языке COBOL.)
То же самое верно для всех других графических интерфейсов шахматного движка, на которые вы можете выбрать таргетинг (их немало, и вы можете найти несколько, просто введя chess gui
в Google): все они понимают WinBoard или UCI или оба и им все равно, на каком языке реализован движок.