1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/turtle-sim-turtle-universe-issue-tracker

 / Детали:

Добавьте некоторые примитивы по функциям.

Предстоит сделать
Владелец
Создано  
27.04.2025

Сначала речь идет о параметрах функций:
__args[]: список, полученный из всех параметров
__arg[index]: параметр, полученный по указанному индексу
__args-length[]: количество параметров

Затем идут специальные примитивы для специальных функций:
__yield: приостановить выполнение функции
__then,__catch,__finally: привязать обещания (может быть реализовано в расширениях)
__for-of: перебрать значения итератора
__next: вычислить следующее значение итератора
Анонимные функции могут переключаться на разные режимы функций в зависимости от начальной строки выражения и соответствующего поля functionType.
Примеры:
Обычная функция: [-> repeat 3[show 1]report 0]
Генераторная функция: [-> __ignore "generator" repeat 3[yield i]report 0]
Асинхронная функция: [-> __ignore "async" yield user-input "ts" report 0]
Анонимные функции после определения проходят через функцию checked, что позволяет легко реализовать генераторы и асинхронные функции.
Однако, создание приостановки выполнения NL во время выполнения требует расширений.

Комментарий (0)

GitLife Service Account Задача создана
GitLife Service Account добавлено
 
NetLogo
label.
GitLife Service Account добавлено
 
建议
label.
Развернуть журнал операций

Вход Перед тем как оставить комментарий

Статус
Ответственный
Контрольная точка
Pull Requests
Связанные запросы на слияние могут быть закрыты после их объединения
Ветки
Дата начала   -   Крайний срок
-
Закрепить/Открепить
Приоритет
Участники(1)
1
https://api.gitlife.ru/oschina-mirror/turtle-sim-turtle-universe-issue-tracker.git
git@api.gitlife.ru:oschina-mirror/turtle-sim-turtle-universe-issue-tracker.git
oschina-mirror
turtle-sim-turtle-universe-issue-tracker
turtle-sim-turtle-universe-issue-tracker