M>ВНЕЗАПНО! Появился еще один модификатор, которого до этого не было. Это некий символ ! который объявляет какие-то mutable переменные. Mutable у всех программистов означает "умеющий изменять значение".
Он не внезапно появился, он там и был. Версию не обновлял.
Еще раз, повторение мать учения. Конспектируем.
Есть в системе два предопределенных мутабл переменных ( счетчика ) I и J
Теперь разбираем код с моими комментариями
M>
M>E S:=1 обьявили переменную S (S неизвестный идентификатор, поэтому это и обьявление переменной)присвоили значение
M>E !N:=1..1048576 обьявили мутабл переменную N (N неизвестный .......)
M>E S*=N уже изсвестной переменной присвоили значение
M>
M>Итак, что имел автор в виду, когда ввел (без объяснения) некий модификатор "!"? (это, кстати, к вопросу об "ультрапонятности язвыка")
Можно тебя поздравить с новой закорючкой, вроде уже все с синтаксиса рассмотрели. А ну еще квадратные скобки есть
"Вся страна играть в футбол умеет, лишь мы 11 человек играть не умеем"(с)КВН
S>Mamut, мне право неловко. Я ничего такого не делаю, за что мне можно было бы ставить оценки. Копипащу код в интерпретатор и выхлоп обратно.
Не переживайте, я же не переживаю. Не знаю как тут рейтинги считаются, но судя по всему скоро он у меня будет отрицательным
"Вся страна играть в футбол умеет, лишь мы 11 человек играть не умеем"(с)КВН
Здравствуйте, PC_2, Вы писали:
S>>И вообще походу я единственный олень, который скачал интерпретатор... (и посмотрел что под капотом )
PC_>не единственный
Единственный кто в этом спалился
M>>ВНЕЗАПНО! Появился еще один модификатор, которого до этого не было. Это некий символ ! который объявляет какие-то mutable переменные. Mutable у всех программистов означает "умеющий изменять значение".
PC_>Он не внезапно появился, он там и был. Версию не обновлял. PC_>Еще раз, повторение мать учения. Конспектируем.
Угу. Только фигня, что про ! ты говоришь впервые
PC_>Есть в системе два предопределенных мутабл переменных ( счетчика ) I и J PC_>Теперь разбираем код с моими комментариями
M>>
M>>E S:=1 обьявили переменную S (S неизвестный идентификатор, поэтому это и обьявление переменной)присвоили значение
M>>E !N:=1..1048576 обьявили мутабл переменную N (N неизвестный .......)
M>>E S*=N уже изсвестной переменной присвоили значение
M>>
После твоих "объяснений" понятнее ничего не стало. См. ниже
M>>Итак, что имел автор в виду, когда ввел (без объяснения) некий модификатор "!"? (это, кстати, к вопросу об "ультрапонятности язвыка") PC_>Можно тебя поздравить с новой закорючкой, вроде уже все с синтаксиса рассмотрели. А ну еще квадратные скобки есть
Ты не ответил на мой вопрос.
Итак:
E S:=1
E !N:=1..1048576
E S*=N
E S:=1
E N:=1..1048576
E S*=N
В чем между ними разница, и почему?
ЗЫ. Рассказываю азы: mutable переменная — это переменная, которой можно присваивать разные значения. В коде выше S — это mutable переменная с точки зрения всех программистов мира. Кроме, видимо, тебя.
KV>Ну как бы отловить данную конкретную "unreachable statement" для произвольных типов i и n как бы не очень реально. Более простые ситуации, компилятор вполне отлавливает:
А где в твоём примере произвольные типы i и n? Ведь Немерле вывыдет их тип в момент компиляции, так что они станут вовсе даже непроизвольными.
S>Mamut, мне право неловко. Я ничего такого не делаю, за что мне можно было бы ставить оценки. Копипащу код в интерпретатор и выхлоп обратно.
S>И вообще походу я единственный олень, который скачал интерпретатор... (и посмотрел что под капотом )
Вот за это и оценки
ЗЫ. Это мне напоминает эпоху синтасического оверхеда и blackbox'а. Тогда я, помнится, получал дикие оценки за то, что запускал и скриншотил все это дело Мучения надо поощрять
Здравствуйте, samius, Вы писали:
S>Здравствуйте, PC_2, Вы писали:
S>>>И вообще походу я единственный олень, который скачал интерпретатор... (и посмотрел что под капотом )
PC_>>не единственный S>Единственный кто в этом спалился
Ну зря ты так, ты поступил мудро скачав транслятор.
Теперь у тебя есть много разных аргументов.
Другие же просто ограничиваются "оно не работает",
а мамут вот весь в догадках так и не понимает азбуку в мутабл переменными,
скачал бы транслятор сразу бы понял )
"Вся страна играть в футбол умеет, лишь мы 11 человек играть не умеем"(с)КВН
Здравствуйте, Mamut, Вы писали:
M>ЗЫ. Это мне напоминает эпоху синтасического оверхеда и blackbox'а. Тогда я, помнится, получал дикие оценки за то, что запускал и скриншотил все это дело Мучения надо поощрять
M>>В чем между ними разница, и почему?
PC_>разница в восклицательном знаке, не ?
Нет, ты внятно объясни. ричем в терминах, которые являются общепринятыми, а не непонятно, откуда выбранными (напоминаю, что с точки зрения программиста S — это mutable переменная)
Здравствуйте, PC_2, Вы писали:
PC_>Здравствуйте, samius, Вы писали:
PC_>Ну зря ты так, ты поступил мудро скачав транслятор. PC_>Теперь у тебя есть много разных аргументов.
PC_>Другие же просто ограничиваются "оно не работает", PC_>а мамут вот весь в догадках так и не понимает азбуку в мутабл переменными, PC_>скачал бы транслятор сразу бы понял )
А я и с транслятором не понимаю, что за косяк с мутабельностью. Прав Mamut что они все здесь мутабельные.
Здравствуйте, Mamut, Вы писали:
M>Нет, ты внятно объясни. ричем в терминах, которые являются общепринятыми, а не непонятно, откуда выбранными (напоминаю, что с точки зрения программиста S — это mutable переменная)
Что значит S мутабл переменная ?
Я же тебе дал четкий ответ:
M>>Нет, ты внятно объясни. ричем в терминах, которые являются общепринятыми, а не непонятно, откуда выбранными (напоминаю, что с точки зрения программиста S — это mutable переменная)
PC_>Что значит S мутабл переменная ?
То и значит.
mutable переменная — это переменная, которой можно присваивать разные значения.
Если мы можем сделать так:
S:=1
S:=2
S:=1..3
То S — это mutable переменная. потмоу что это — общепринятое понятие
PC_>Я же тебе дал четкий ответ:
Это был не четкий ответ, а какой-то набор слов с какими-то понятиями, которые никто и нигде не использует так, как используешь их ты
PC_>Ну давай вот так
PC_>OrdinaryVar := 8 //обычная PC_>!MySuperMutableVar := 1..5 //мутабл
PC_>а теперь вот так
PC_>OrdinaryVar := MySuperMutableVar
PC_>Это всеравно что на сишном забыдлокодить чтото вроде
PC_>for(int i=1; i<=5; i++) PC_> OrdinaryVar := i
Теперь это стало понятнее. Это — не mutable переменная, а счетчик для циклов. При этом такой способ задания циклов приведет к дикому количеству неявных багов при разработке:
Var1 := Var2
Var3 := Var4
Где у нас здесь цикл, а где присвоение значения переменной? Учти, что Var2 и Vsr4 могут быть назначены за 100 строк до этого или в другом модуле/файле
S>>>>И вообще походу я единственный олень, который скачал интерпретатор... (и посмотрел что под капотом )
PC_>>>не единственный S>>Единственный кто в этом спалился
PC_>Ну зря ты так, ты поступил мудро скачав транслятор. PC_>Теперь у тебя есть много разных аргументов.
PC_>Другие же просто ограничиваются "оно не работает", PC_>а мамут вот весь в догадках так и не понимает азбуку в мутабл переменными, PC_>скачал бы транслятор сразу бы понял )
С ртранслятором идет документация? Прямая телепатическая закачка знания в мозг? Переводчик с твоих терминов в общепринятые?