Если кто сталкивался, помогите с синтаксисом
В упор не понимаю в чём проблема:
Весь код:

Ответ нашёлся, табуляции не было...
`
ОЖИДАНИЕ РЕКЛАМЫ...
17
Ответ нашёлся, табуляции не было...
Принятый ответ
24
PyCCKuu_4eJl, табуляция влияет на компиляцию? Впервые вижу такое в языках, что же это за компилятор дикий такой
28
Ответ нашёлся, табуляции не было...
Оно прям error выводило? Оно могла просто подчеркнуть, что ты забыл табуляцию.
15
Оно прям error выводило? Оно могла просто подчеркнуть, что ты забыл табуляцию.
На уровне модуля компилятор не ждёт табуляции, только объявление, посему воспринимает вызов как попытку объявить переменную
darkowlom:
Впервые вижу такое в языках
Ну хотя бы о Python ты должен был что-нибудь слышать....
28
Ну хотя бы о Python ты должен был что-нибудь слышать....
В Phython табуляция не влияет на компиляцию, потому что Phython - интерпретируемый язык, у него нет компилятора.
24
PT153, насколько я знаю, питон тоже можно скомпилировать при желании в байткод для его виртуальной машины, чтобы не интерпретировать заново каждый раз, как и большую часть современных интерпретируемых языков.
15
В Phython табуляция не влияет на компиляцию, потому что Phython - интерпретируемый язык, у него нет компилятора.
Я о компиляции Python* ничего не говорил.
17
Утром пол часа бился с TriggerAddAction, он не воспринимал функцию как функцию.
Вурст штука прикольная, но слишком сильно отличается от стандартного Jass к которому уже успел привыкнуть
endfunction также вызывает еррор :D
Залез в него из-за удобного создания объектов и прописывания того же макс хп одной строкой в коде :D
Ненавижу стандартный РО
15
PyCCKuu_4eJl, в идеале лучше по максимуму избегать нативных и бж-функций, заменяя их эквивалентамии из стандартной библиотеки, например
код
package Test
import NoWurst
import Trigger
import RegisterEvents

function actions()
    // ...

init
    CreateTrigger() // Тут ничего не поделаешь, берем нативную
    ..registerAnyUnitEvent(EVENT_PLAYER_UNIT_SPELL_EFFECT)
    ..addCondition( Condition(()->GetSpellAbilityId() == 'A000') )
    ..addAction(function actions) // Из пакета Trigger

    registerSpellEffectEvent('A000', function actions) // То же самое, но короче (пакет RegisterEvents)
29
В Phython табуляция не влияет на компиляцию, потому что Phython - интерпретируемый язык, у него нет компилятора.
Очень интересная история, только во всех современных "интерпретируемых" языках интерпретируется не текст, а байткод, который компилируется самым настоящим компилятором из текста программы, только не заранее, а каждый запуск. Как уже упомянули, тот же самый байткод можно сохранить в .pyc файл.
28
Doc, обычно компиляция также проверяет и соответствие типов, что в Python невозможно сделать. Потому я так и ответил. Но действительно, компиляцией может быть просто трансляция ЯП на низкоуровневый язык. Если Python таким промышляет, то тогда я действительно ошибся.
29
Компиляция ни в каком смысле не обязана проверять соответствие типов. Typechecking - отдельная фаза компиляции, которая может там быть или не быть. Это просто трансляция текста понятного человеку в данные, понятные машине. Виртуальной или физической. Я не смогу назвать ни одного более менее крупного языка, который бы не использовал байткод.
17
PT153:
А ты документацию читал?
Да, но на практике лучше получается :D
GetLocalPlayer, Спасибо за статейки на русском ;3
Чтобы оставить комментарий, пожалуйста, войдите на сайт.