Перейти до змісту

Програма

Програмою вважаються файли з розширенням .бр та .барвінок, але запускати можна файли з будь-яким розширенням

Важливо

Файл має бути закодований в UTF-8

Структура програми

Програма складається з інструкцій(оголошення функцій, інструкції якщо, циклу, тощо) та виразів(присвоєння змінній значення, змінних, отримання атрибутів, літерали, виклики функції).

Імена

В Барвінку імена змінних розрізняються за регістром, тобто змінні, записані з великої та маленької літери, вважаються різними

! Для Барвінку це дві різні змінні
змінна = 1
Змінна = 2

Підтримувані символи

Імена змінних можуть містити лише:

  • Символи української абетки (літери від А до Я та від а до я, включно з ' апострофом)
  • Цифри (0–9)
  • Символ нижнього підкреслення (_)

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

Апостроф в іменах

Апостроф дозволено використовувати в будь-якій частині імені, крім початку. Він також може з'являтися в кінці імені, що довзоляє наприклад уникнути конфлікту з вбудованими ключовими словами чи іншими іменами. Крім того, апостроф можна використовувати кілька разів поспіль, створюючи змінні з однаковою базовою назвою, але різними "ітераціями".

Приклади корректних імен з апострофами:

змінна = 1             ! базова змінна
змінна' = змінна * 2   ! схожа змінна, просто з апострофом
змінна'' = змінна' + 4 ! можна додати кілька апострофів поспіль
ім'я = 10              ! апостроф в середині
! 'функція' - ключове слово, але якщо додати апостроф, це вже інше ім'я
функція' = 42

Шебанг

Барвінок підтримує шебанг.

Приклад програми з шебангом

#!барвінок
друкр("Привіт, Світ!")

Зони видимості

Все, що визначається за межами функції, належить до глобальної зони видимості. Тоді як, все, що визначається в межах функції, належить до локальної зони видимості.

1
2
3
4
5
число = 20 ! глобальна зона видимості

функція тест() ! функція теж належить до глобальної зони видимості
    рядок = "Привіт, світ" ! локальна зона видимості
кінець

Виконання коду

У Барвінку немає поняття точки входу в програму, тому код виконується в порядку написання.

привітання = "Привіт, %ім'я%" ! Виконання програми почнеться тут
друкр(привітання)