Причиной ошибки были одинарные кавычки вокруг {new_user_interval} day
. Но посмотрите ответ @ Георгия выше, который я принял, так как он указал мне правильное направление.
Веб-сайт 'лямбда, которая окончательное' очень о языках программирования и них иногда, имеет некоторые хорошие ресурсы, хотя они имеют тенденцию больше интересоваться академическими видами вещей. Функциональное программирование является большим там, например.
http://lambda-the-ultimate.org/node/3
Вы могли взять страницу от того же места как Java, Ruby, Objective C и другие и проверить Дизайн Priciples Позади Smalltalk. Большая часть этого является основополагающим материалом по коммуникации между объектами, а не чем-либо о Smalltalk конкретно.
До действительно вдумчивых книг по дизайну языка я думаю, Дизайн и Эволюция C++ определенно заслуживают упоминания. Я колеблюсь, так как Вы говорите желание "идеального" языка OO, и C++ совсем не прекрасен. Вы могли, вероятно, все еще узнать о много из него, все же.
Точки, которые Вы поднимаете, тем не менее, кажутся, что они больше имеют отношение к Принципу Наименьшего количества Удивления или Правилу Наименьшего количества Удивления, чем с дизайном внутренностей языка.
Вы могли проверить документы дизайна Perl6
При чтении Резюме 6 Вы узнаете, что оператор сложения называют:
infix:<+>
infix:«+»
infix:<<+>>
infix:{'+'}
infix:{"+"}
Что означает, что можно создать собственные операторы:
sub postfix:<!> ($n) { [*] 1..$n }
Дизайн и Эволюция C++ хороши.
Объектно-ориентированная Конструкция программного обеспечения также.
Они являются довольно определенными для языка (C++, Eiffel), но существует много агностических языком уроков.