Конечно, вы потеряете производительность. Ruby (как, например, Smalltalk и Python, среди прочих) по своей природе очень динамичен и высокоуровнев, плюс динамически типизирован. Многие утверждают, что это позволяет программистам быть намного более эффективными (я склонен согласиться), но OTOH, вызовы должны отправляться, и решение должно приниматься во время выполнения, которое может и на статическом языке, таком как Java, принимается во время компиляции. Так что да, произойдет некоторая потеря производительности.
Но : Это действительно имеет значение? Для 99% всего кода приложения GUI это не так. На современном домашнем компьютере, с точки зрения пользователя, средний метод ruby, похоже, занимает то же время, что и средний Java-метод: около нуля секунд. И на обоих языках, безусловно, большая часть времени будет потрачена на ожидание пользовательского ввода, и в меньшей степени на дисковый ввод-вывод и на графический интерфейс GUI, выводящий на экран новые элементы.
Приложение: Возможный недостаток - такие мосты обычно бывают хрупкими, трудно интегрируемыми с оригиналом (в данном случае с Java) или ломаются с более новыми версиями. Но я не могу судить об этом ...