Разработчик создал язык Ć для написания кода на С, Python и JavaScript одновременно
Разработчик создал язык Ć для написания кода на С, Python и JavaScript одновременно

Разработчик из Польши Петр Фусик представил язык программирования Ć. Главная особенность технологии – возможность транслировать написанный код на С, С++, Java, Python и другие языки.
Зачем нужен новый инструмент
Детали своего проекта по созданию Фусик опубликовал на GitHub. Программист использует в своей технологии транслятор cito, благодаря которому написанный на Ć код можно читать на C, C++, C#, Java, JavaScript, Python, Swift и OpenCL. По словам разработчика, его проект решает актуальную проблему – позволяет писать исходники, которые можно комфортно использовать на разных языках одновременно.
В качестве варианта использования Ć Фусик приводит пример с изобретением нового формата сжатия. Если реализовать его на новой технологии от польского разработчика, то через транслятор cito можно сгенерировать код, который смогут использовать программисты на C #, Java, Python и других языках.
Петр Фусик работает над созданием Ć как минимум с 2013 года, когда он впервые опубликовал на YouTube раннюю презентацию технологии. Почему для языка выбрано такое название и как оно читается, неизвестно. Апостроф над буквой С называется «акут», поэтому теоретически новый инструмент разработки может получить название «Си акут». Также буква Ć есть в польском алфавите и читается она примерно как русская «Ч».
Особенности нового языка
Автор проекта утверждает, что синтаксис Ć похож на C#. Для него вполне подходит стандартная подсветка синтаксиса C#, однако Фусик уверен, что технологию нельзя назвать ни клоном языка от Microsoft, ни его подмножеством. Ключевые различия, по словам разработчика, продиктованы необходимостью полностью автоматической трансляции кода на Ć в эффективный код C и JavaScript. Новый язык является объектно-ориентированным – большинство целевых технологий, с которыми он взаимодействует, тоже относятся к методологии ООП.
Пример кода на Ć
Еще одна особенность Ć – сведение к минимуму зависимостей от библиотек среды выполнения. К примеру, если программист выводит код для использования в приложениях на С, то он получит автономную пару файлов .c/.h с удобочитаемым кодом С99. Аналогичным образом трансляция работает и для остальных поддерживаемых языков, однако есть несколько исключений. Например, если программист при написании кода на Ć, использует коллекции List, Dictionary или SortedDictionary, то для вывода кода на C ему придется использовать библиотеку Glib.
Источник: https://infostart.ru/journal/news/tekhnologii/razrabotchik-sozdal-yazyk-262-dlya-napisaniya-koda-na-s-python-i-javascript-odnovremenno_1536808/
См. также
В GitHub появилась нативная поддержка математических выражений в md-файлах
26.05.2022 478 VKuser24342747 0
Минцифры запустит программу вознаграждения за поиск багов в госсистемах
25.05.2022 842 VKuser24342747 2
Банк России добавил поддержку NFC-технологии в Систему быстрых платежей
20.05.2022 3636 VKuser24342747 4
GitHub до конца 2023 года полностью перейдет на двухфакторную аутентификацию
12.05.2022 4400 VKuser24342747 0
В России создан алгоритм принятия решений о необходимости обновления критичного ПО
21.04.2022 2550 VKuser24342747 0
ИТ-отрасль представила Минцифры список приоритетных направлений поддержки
15.04.2022 3008 VKuser24342747 1
В России разработали открытую операционную систему «Фантом» на собственном микроядре
02.02.2022 6465 user1015646 2
Let's Encrypt отозвал 2 миллиона сертификатов из-за нарушений в коде
02.02.2022 6280 VKuser24342747 0
Google представила новый сервис на замену непопулярной технологии FLoC
01.02.2022 7482 VKuser24342747 0
Samsung разработала модуль биометрической аутентификации для смарт-карт
28.01.2022 7609 VKuser24342747 0
Apple отложила требование об обязательном удалении аккаунтов в приложениях
27.01.2022 11258 VKuser24342747 0
Минцифры разработает единый стандарт для умных многоквартирных домов
24.01.2022 6817 VKuser24342747 0
Visa разработала способ превратить почти любое устройство в POS-терминал
21.01.2022 8555 VKuser24342747 0