Есть одна ситуация...
Sumo 24.10.2015 11:30
/ 24.10.2015 11:31
... когда нам надо выдать ошибку, если в аргументе пришло значение, а не код. Так как это делают ^if, ^for и другие встроенные функции.
Я бы сделал аннотацию у параметров:
@myfor[var;from;to;code:code;separator]
# Если в code пришел не код, то Парсер вывалит исключение «параметр code должен быть кодом».
Если давать пользователю проверять, то сделать другой синтаксис:
@myfor[var;from;to;code;separator]
^if($code has code){...}
^if(^reflection:argument_has_code[code]){...}
Этот подход мне нравится меньше, потому что позволит писать функции, которые зависят от типа вызова.
- Поведение is junction, G_Z [M] 24.10.2015 04:11
- Ответ, MoKo 24.10.2015 20:47
- Ну так мы про это и говорим..., Sumo [M] 24.10.2015 21:57
- Ответ, G_Z [M] 24.10.2015 20:58
- Ответ, MoKo 25.10.2015 02:41
- Ответ, G_Z [M] 25.10.2015 02:55 / 25.10.2015 02:59
- Ответ, MoKo 25.10.2015 03:29
- Ответ, G_Z [M] 25.10.2015 03:33
- Ответ, MoKo 25.10.2015 13:15
- Ответ, G_Z [M] 25.10.2015 14:15
- Ответ, MoKo 25.10.2015 14:26
- Ответ, MoKo 25.10.2015 14:45
- Ответ, G_Z [M] 25.10.2015 15:05
- Ответ, MoKo 26.10.2015 02:55
- Ответ, G_Z [M] 26.10.2015 03:11
- Я понимаю, G_Z [M] 25.10.2015 14:31 / 25.10.2015 14:33
- Ответ, MoKo 25.10.2015 03:03
- Ответ, G_Z [M] 25.10.2015 03:17
- Ответ, MoKo 25.10.2015 03:24
- Есть одна ситуация..., Sumo [M] 24.10.2015 11:30 / 24.10.2015 11:31
- У «кода» другая семантика..., Sumo [M] 24.10.2015 10:37 / 24.10.2015 10:42
- Ответ, G_Z [M] 24.10.2015 16:13 / 24.10.2015 16:17
- Ответ, Sumo [M] 24.10.2015 17:09