Pull to refresh

Comments 13

Красиво. Конечно, траспилятор — это несколько громко сказано, вы только формат данных поддержали, по сути сделали автогенератор парсеров данных по описанию формата на Коболе — но тем не менее.

Спасибо за поддержку! Всё так. Громковато сказано, согласен.

хотел ещё на всякий случай уточнить — это не "автоматизированное" решение, полностью автономное — полученный код компилируется во время работы программы и в ней же исполняется. Т.е. фактически это всё же транспилятор поднабора команд (но не всего синтаксиса).

Тут, не так давно была статья(переводная) или даже пара, по поводу, почему wallstreat не переходит с COBOL на Java или что-то другое.
Насколько я понял основная причина это то, что вычисления происходят с числами с фиксированной запятой. И из-за этого дешевле обучать программистов COBOL, чем переписывать всё на новый язык, с фиксированной запятой.

думаю, там не-технические причины основные. Но помимо этого — COBOL очень крутой язык, реально созвучный бизнес-процессам. И сообщества COBOL до сих пор очень дружелюбны и полезны.


Скажем так — в чистом виде Java очень сильно отстаёт по наглядности разработки от COBOL. Программисты больше голову ломают над техническими проблемами, чем над бизнес-алгоритмами. Это же применимо и к PL/SQL. Но у этих языков всё же есть проблемы масштабируемости, с этим не поспоришь.

Я «Сделал бы то же самое что и автор» (предчувствую, вариант в голосовалке будет непопулярный), потому что люблю парсеры, грамматики, и прочие DSL, и часто юзаю их в своих проектах, особенно, если мне не хватает выразительных средств основного языка. Такой подход очень мало кто использует.

Вот только, в отличие от автора, я потратил бы некоторое время на оформление репы на GH. Сейчас довольно неряшливо (отладочный логгинг надо либо вычищать, либо прятать за флаг, а не комментировать), и, самое главное, нет тестов. Вы хотя бы парочку примеров на коболе туда выложите, сразу больше доверия будет.

Ну и добавьте статью в хаб «Ненормальное программирование», чтобы её заметили :)

Очень извиняюсь за отсутствие тестов и документации. Тесты были выпилены при публикации кода, т.к. содержали проприетарные копибуки.
Тесты и документация будут обязательно добавлены в скором времени. У нас сейчас происходит экспоненциальный рост количества проектов, что требует внедрения операционной методологии. И она уже разработана. "Какая методология?" — в нашей следующей статье. Это будет нечно удивительное.

Добавил тест, а также выпустил CLI релиз (для запуска из командной строки):
https://github.com/INFINITE-TECHNOLOGY/COBOL/releases/tag/1.0.0


Можете скачать и попробовать у себя.


Кстати, есть и облачная версия (она уже пол года работает): https://i-t.io/Cobol


(Тестов будет больше, конечно, в дальнейшем. Это только для примера пока.)

На чистой системе собирается, работает. Это хорошо :)

(Не совсем понятно, правда, зачем такую простую утилиту в спринг бут с его тонной зависимостей заворачивать, но это уже придирки к стилю.)

Спасибо, это по ошибке было. Исправил.
Убрал Spring Boot из cobol-lib. В cobol-cli оставил только Spring Boot Loader (чтобы Gradle делал человеческий толстый jar), но он мало места занимает.


https://bintray.com/infinite-technology/io.i-t/download_file?file_path=io%2Fi-t%2Fcobol-cli%2F1.0.1%2Fcobol-cli-1.0.1.jar

Коллега рассказывал, что они переводили проекты с разных языков программирования на Джаву, в том числе и с Кобола. И делали они это при помощи грамматики, написанной на JavaCC.
В опросе нет такого пункта, что использовал бы парсер-генератор, но другой.

Прямо задачка для хакатона! Спасибо за статью!

Мы на работе мигрируем с Microfocus Cobol на GNU COBOL, а там парсер уже есть... хотя по проекту и кастомные парсеры копибуков разбросаны, увы.

Sign up to leave a comment.

Articles