Nim
Материал из Поле цифровой дидактики
| Краткое описание языка | |
|---|---|
| Компетенции в каких сферах формирует | Computational Thinker |
| Парадигмы программирования | |
| Возрастная категория | 16 |
| Назначение языка (Общее / Учебное) | Язык общего назначения |
| Visual_Text_Blocks | Текст |
| Измерение (2D/3D/Tangible) | 2D |
| Область знаний | |
| Открытость продукта | Открытый |
| Address | https://nim-lang.org/ |
| Предки (Ancestors) | Lisp, Python |
| Потомки (Descendants) | |
| Активность в данный момент | Project is active |
| Доступны ремиксы? | |
| Год создания | 2008 |
| Создатели | |
| Поясняющее видео | |
| Используется для создания мобильных приложений? |
- Nim упоминается в свойствах следующих страниц
Пример программы - Объект первого класса
Пример кода на языке Nim.
# присвоим процедуру переменной
var value = proc() =
echo "value"
value() # вызов процедуры
var value2 = value
value2() # вызов процедуры
# процедура будет передана другой
proc two(): string =
return "two"
# процедура будет получать другую процедуру
proc wrap(x: proc) =
echo "one"
echo x()
echo "three"
# вызов процедуры которая получает на вход другую процедуру
wrap(two)
# процедура, которая возвращает процедуру
proc closure(x: int): proc =
proc res(y:int): int =
return y*y+x
return res
var result = closure(2) # вызовем процедуру которая вернет другую процедуру
echo result(3) # вызов внутренней процедуры
