refal-5-lambda
refal-5-lambda copied to clipboard
Избыточные ^ сделать ошибкой
Знак ^
после имени переменной означает, что это не повторная, а новая переменная, скрывающая ранее описанную с тем же именем. Однако, ошибкой не является использовать знак ^
после переменной, ранее в предложении не встречавшейся. В этом случае нужно выдавать предупреждение.
А почему бы не сделать это предупреждение ошибкой?
Если сделать ошибкой, то входной язык изменится, сузится, нарушится обратная совместимость. Поэтому просто так нельзя взять и запретить какой-то синтаксис.
Предлагается такая стратегия: версию, помеченную тегом N, всегда можно собрать версиями N−1 (техническое требование, ибо раскрутка) и N+1. Последнее требование новое, оно теперь будет определять политику подобных изменений. При этом, если некоторый синтаксис планируется объявить ошибкой со следующей версии, то в текущей версии должно выдаваться на это предупреждение.
Соответствующие предупреждения будут называться -Wdeprecated
.
Так что, даже если и делать это сообщение ошибкой, то со следующей версии. Сначала оно должно стать предупреждением.