Установка, REPL и запуск кода

Ставим Julia, осваиваем интерактивную консоль REPL и учимся запускать программы.

REPL (Read-Eval-Print Loop) — интерактивная консоль Julia: вы вводите выражение, она его вычисляет и сразу показывает результат.

Установка

Рекомендованный способ — менеджер версий juliaup. Он сам скачивает нужную версию Julia и позволяет переключаться между ними. После установки команда julia запускает интерактивную консоль.

# macOS / Linux
curl -fsSL https://install.julialang.org | sh

# Windows (PowerShell)
winget install julia -s msstore

# проверка
julia --version

Первый запуск в REPL

Запустите julia без аргументов — откроется REPL с приглашением julia>. Введите выражение и нажмите Enter:

julia> 2 + 2
4

julia> println("Привет, Julia!")
Привет, Julia!

julia> x = 10
10

julia> x^2
100

Обратите внимание: REPL сам печатает значение последнего выражения. Если вы не хотите видеть результат, поставьте в конце точку с запятой — x = 10;.

Запуск скриптов

Сохраните код в файл с расширением .jl и запустите его из терминала:

julia my_script.jl

Пример простого скрипта hello.jl:

name = "мир"
println("Привет, ", name, "!")
for i in 1:3
    println("строка ", i)
end

Вывод:

Привет, мир!
строка 1
строка 2
строка 3

Полезные режимы REPL

REPL Julia умеет переключаться в специальные режимы прямо по нажатию клавиши в начале строки:

КлавишаРежимНазначение
?helpсправка по функции: введите имя и получите документацию
]Pkgменеджер пакетов: add, status, update
;shellвыполнить команду оболочки прямо из REPL

Чтобы выйти из любого режима обратно в julia>, нажмите Backspace в пустой строке.

Как работает под капотом

Первый запуск REPL и первый вызов функции могут заметно «подвисать» — это так называемое time to first plot. Julia в этот момент компилирует код. Зато все последующие вызовы той же функции с теми же типами мгновенны: работает уже скомпилированный машинный код. В свежих версиях Julia это «холодное» время заметно сократили за счёт кэширования скомпилированного кода.

Частые ошибки

Новички часто перезапускают Julia после каждого изменения, теряя время на повторную компиляцию. Удобнее держать одну сессию REPL открытой и переопределять функции на лету. Для разработки также используют пакет Revise.jl, который автоматически подхватывает изменения в файлах без перезапуска.

Итоги

  • Устанавливать Julia удобнее всего через juliaup.
  • REPL — интерактивная консоль: вводите выражение, сразу видите результат.
  • Скрипты .jl запускаются командой julia file.jl.
  • Режимы ? (help), ] (Pkg) и ; (shell) ускоряют работу.
  • Первый вызов медленный из-за компиляции, последующие — мгновенные.
Проверьте себя
1. Что произойдёт, если в конце выражения в REPL поставить точку с запятой?
AВозникнет синтаксическая ошибка
BРезультат выражения не будет напечатан
CJulia перезапустится
DВыражение выполнится дважды
2. Какая клавиша переключает REPL в режим менеджера пакетов?
A?
B]
C;
D@
3. Почему первый вызов функции в Julia часто медленнее последующих?
AJulia скачивает функцию из интернета
BПроисходит JIT-компиляция в машинный код, а потом используется кэш
CПервый вызов всегда выполняется на сервере
DJulia проверяет лицензию