Научная статья на тему 'ПОПУЛЯРНЫЕ ПРОГРАММЫ, ИСПОЛЬЗУЮЩИЕ СИСТЕМУ ПРЕПРОЦЕССИНГА'

ПОПУЛЯРНЫЕ ПРОГРАММЫ, ИСПОЛЬЗУЮЩИЕ СИСТЕМУ ПРЕПРОЦЕССИНГА Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
0
0
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
исходный код / препроцессор / программирование / CSS / SASS / source code / OOC / SCSS / preprocessor

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Паневин Н.Б.

В работе рассматривается программное обеспечение для препроцессинга исходного кода, позволяющее трансформировать программы с одного языка программирования на другой с помощью транспайлера. Рассматриваются такие языки программирования, как SASS, Nim, OOC, Vala, а также препроцессор C++. Описывается функционал каждого из языков, их особенности и способы использования.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

POPULAR PROGRAMS USING PREPROCESSING SYSTEM

The paper considers software for source code preprocessing, which allows programs to be transformed from one programming language to another using a transpiler. Programming languages such as SASS, Nim, OOC, Vala, as well as the C++ preprocessor are considered. The functional of each of the languages, their features and ways of use are described.

Текст научной работы на тему «ПОПУЛЯРНЫЕ ПРОГРАММЫ, ИСПОЛЬЗУЮЩИЕ СИСТЕМУ ПРЕПРОЦЕССИНГА»

УДК 004

Паневин Н.Б.

студент магистратуры Тульский государственный педагогический институт им. Л.Н. Толстого

(г. Тула, Россия)

ПОПУЛЯРНЫЕ ПРОГРАММЫ, ИСПОЛЬЗУЮЩИЕ СИСТЕМУ ПРЕПРОЦЕССИНГА

Аннотация: в работе рассматривается программное обеспечение для препроцессинга исходного кода, позволяющее трансформировать программы с одного языка программирования на другой с помощью транспайлера. Рассматриваются такие языки программирования, как SASS, Nim, OOC, Vala, а также препроцессор C++. Описывается функционал каждого из языков, их особенности и способы использования.

Ключевые слова: исходный код, препроцессор, программирование.

Программное обеспечение для препроцессинга исходного кода позволяет трансформировать программу с одного языка программирования на другой с помощью транспайлера. Транспайлер принимает исходный код на одном языке и создает эквивалентный код на другом языке. В данный момент существует несколько языков программирования, для которых были реализованы системы препроцессинга. Проанализируем такие программы как SASS, Nim, OOC, Vala.

SASS

SASS — это препроцессорный язык сценариев, который преобразуется в код CSS. Он расширяет язык CSS, добавляя новые функции в язык, такие как переменные, вложенные правила, миксины и функции, совместимые с синтаксисом CSS. SASS упрощает работу с большими проектами, уменьшая

размер таблиц стилей и, а также затрагивает импорта файла с отдельными стилями.

CSS3 состоит из селекторов и псевдоселекторов, которые уточняют применимые к ним правила. SASS дополняет CSS, предоставляя несколько механизмов, доступных в более традиционных языках программирования, особенно объектно-ориентированных языках, но недоступных самому CSS3.

SASS состоит из двух синтаксисов. Исходный синтаксис, называемый «синтаксис с отступом», использует синтаксис, не имеющий явных символов разделения. Для работы с ним используется синтаксис схожий с Python: для разделения блоков кода используются отступы, а инструкции разделяются переносом строки. Спустя время был добавлен новый синтаксис SCSS использует форматирование блоков, аналогичное привычным языкам программирования высшего уровня: символы «{» и «}» для разделения блоков инструкций и символ «,» для разделения инструкций. Расширения для этих синтаксисов соответственно .sass и .scss соответственно.

Данный препроцессор реализует дополнительный функционал языка CSS, такой, как:

1) Создание переменной.

Для объявления и определния переменной вызываются функции языка JavaScript, а также создаётся ссылка на переменную для дальнейший обращений из SASS.

2) Объявление inline функций.

Специалисты создали встраиваемые функции, которые при компиляцие описанные пользователем функции не сохраняются, а вызовы заменяются на значение, которые является результатом функции в результате общраения к ней с перечисленными аргументами.

Nim

Nim — это статически типизированный язык программирования, использующий компилятор в своей работе. Он соединяет синтаксис и конспеции следующих языков программированния:

1) Python

2) Ada

3) Modula.

Nim компилирует исходных код в исполняемые файлы без зависимостей собственные исполняемые файлы без зависимостей, не зависящие от компилируемой машины. Nim способен скопилировать файлы на Windows, Linux, BSD и macOS. Nim позволяет выбрать целевой язык программирования. Для выбора доступы C, C++ и JavaScript, что позволяет Nim использоваться как в backend части и в frontend части.

OOC

OOC — это современный, объектно-ориентированный, функциональный, язык программирования, который упрощает работу с языком C. OOC занимается автоматической компоновкой и очисткой неиспользуемых объектов в памяти.

В основе реализации OCC лежит Rock, что является автономным компилятором, занимающийся упрощением, последовательной компиляцией OOC в C, и C в машинный код для создания исполняемого файла.

Vala

Vala — это высокоуровневый объектно-ориентированный язык программирования, который генерирует код C и использует систему GObject.

Vala заимствовал синтакс из C# и включает в себя с автономным компилятором для упрощения работы. Компиляция происходит не в машинных код, а в низкоуровневый язык, который дальше преорабзуется в машинный код с помощью C. Vala добавляет дженерики, вспомогательные управление памятью, обработку исключений и цикл foreach.

Препроцессор C++

Препроцессор в C++ используется для обработки кода перед его использованием компилятором. Основной задачей является добавление зависимостей в код для включения в пускаемый файл. Препроцессор также поддерживает условную компиляцию и добавляет макросы. Условную компиляцию можно использовать для включения или исключения частей кода.

В C++ директивы препроцессора — это инструкции, которые начинаются с символа «#». Он позволяет изменить код до процесса компиляции, изменив используемые куски кода или добавив новые. Дополнительным функционалом можно считать указание параметров компиляции, что позволяет игнорировать предупреждения компилятора или передать компилятору дополнительные инструкции.

СПИСОК ЛИТЕРАТУРЫ:

1. Денисик А. С. Сравнительный анализ препроцессоров CSS / А. С. Денисик, Н. П. Шутько. - Минск, 2020. - 165-167 с.;

2. Sass: Syntactically Awesome Style Sheets [Электронный ресурс]. - Режим доступа: https://sass-lang.com. - Дата доступа: 26.06.2024;

3. Sass: Syntax [Электронный ресурс]. - Режим доступа: https://sass-lang.com/documentation/syntax. - Дата доступа: 26.06.2024;

4. OOC » The OOC programming language [Электронный ресурс]. - Режим доступа: https:// ooc-lang.org. - Дата доступа: 26.06.2024;

5. Язык программирования Vala [Электронный ресурс]. - Режим доступа: https:// vala.dev/ru. - Дата доступа: 26.06.2024;

6. Vala: high-level programming with less fat [Электронный ресурс]. - Режим доступа: https:// arstechnica.com/information-technology/2007/09/vala-high-level-programming-with-less-fat/. - Дата доступа: 26.06.2024;

7. A look at two new languages: Vala and Clojure [Электронный ресурс]. - Режим доступа: https:// lwn.net/Articles/335966. - Дата доступа: 26.06.2024

Panevin N.B.

Tula State Pedagogical Institute (Tula, Russia)

POPULAR PROGRAMS USING PREPROCESSING SYSTEM

Abstract: the paper considers software for source code preprocessing, which allows programs to be transformed from one programming language to another using a transpiler. Programming languages such as SASS, Nim, OOC, Vala, as well as the C++ preprocessor are considered. The functional of each of the languages, their features and ways of use are described.

Keywords: CSS, SASS, source code, OOC, SCSS, preprocessor.

i Надоели баннеры? Вы всегда можете отключить рекламу.