XGM Forum
Сайт - Статьи - Проекты - Ресурсы - Блоги

Форуме в режиме ТОЛЬКО ЧТЕНИЕ. Вы можете задать вопросы в Q/A на сайте, либо создать свой проект или ресурс.
Вернуться   XGM Forum > Warcraft> Академия: форум для вопросов> Jass
Ник
Пароль
Войти через VK в один клик
Сайт использует только имя.

Ответ
 
Van Damm
wait... what?
offline
Опыт: 22,268
Активность:
Цитата:
После компилятора будет тот же привычный джасс
лол, иначе и не сделать без переписывания половины вара, а к нему, как известно, нет исходников

Цитата:
Зачем
писать удобнее?

Цитата:
Не фтыкаю -.-
каждому — своё

Цитата:
дефаин не сильно отличается от текстмакро
ты не шаришь (с)

в-общем, незачет по теории
Старый 21.04.2009, 00:23
YellowStar
poon
offline
Опыт: 15,144
Активность:
Писать не удобнее. По мне дефаин почти полная копия текст макро, плюс это сделает код нечитабельным, как вопил адольф в соседней теме про кеш.

Что мешает мне написать так?
/!textmacro t takes TYPE,NAME,END
$NAME$ MyFunc $TYPE$
$END$
/!endtextmacro
/!runtextmacro t('takes nothing returns nothing', 'function','endfunction')
Собственно объеденить в данныи макро весь код ничто не мешает.

narayan добавил:
Просто джассерам делать нечего, как совершенствовать язык на котором они пишут. Всегда писали на джасс, теперь придумали пжасс, вжасс, и вот уже цжасс. Вопрос зачем? Искать удобства? Тот же джассер кодил 5 лет и тут на тебе дефаины, или текстмакро, клоняторы и говно компиляторы кода. Тема бред. Если кодить то уже добавлять реально нужные нативки в вар, и не локального характера.
Старый 21.04.2009, 11:24
J
expert
offline
Опыт: 48,447
Активность:
на самом деле это очень полезно, тот же vjass сократил время написания кода в несколько раз, и код стал более читабельным и не только, но а вот суть cjass мне не понятна...
Старый 21.04.2009, 11:30
Toadcop

offline
Опыт: 54,313
Активность:
ну я лично понял после добавления нескольки фичь то что я это юзать не буду =)
из за ряда причин...
если стартовать новый проект с 0ля то можно это юзать. (тока это безконечный цыкл фейла, которым мне не интересно заниматса)
ну да ++/+= и т.п. /**/ удобно и дефайны тоже но там надо окуратно их дефайнить...
есть разница когда в карте <500кб кода и когда около 2МБ+...
ну а в целом это ясно что игрушка автора =) так же как и vJass
Старый 21.04.2009, 13:55
Van Damm
wait... what?
offline
Опыт: 22,268
Активность:
Кстати, macro/endmacro сейчас — фейл, к сожалению. Лучше бы вместо этого сделали полностью сигные дефайны =)
Старый 21.04.2009, 17:16
adic3x

offline
Опыт: 108,439
Активность:
Цитата:
Кстати, код таки не копмилится ((

старая версия?

Цитата:
Зачем изобретать велосипед если над ним пыхтит векс?

хреново пыхтит того что

Цитата:
преусловитыи дефаин не сильно отличается от текстмакро

если для вас это действительно так... значит вы не шарите^^ и обьяснять вам что либо смысла нет

Цитата:
И код улетит в доллары до компила.

?

ADOLF добавил:
Цитата:
Лучше бы вместо этого сделали полностью сигные дефайны =)

сделаю)

Цитата:
ну я лично понял после добавления нескольки фичь то что я это юзать не буду =)

будешь) я то с чем у тебя траблы выпилю и сделаю через дефаин, позже... короче ждите, щас запостим первую версию, я возмусь за вторую)

Цитата:
но а вот суть cjass мне не понятна...

суть таже как ни странно)
Старый 21.04.2009, 21:32
Артте
Open up your eyes
offline
Опыт: 23,423
Активность:
А когда будет 1 версия?
Старый 22.04.2009, 11:25
adic3x

offline
Опыт: 108,439
Активность:
скоро)
Старый 22.04.2009, 12:35
Sebra

offline
Опыт: 5,603
Активность:
ADOLF
Цитата:
Цитата:
\\ замените на одну, т.к. в Си одна

небуду ибо а асме две) ну впринципе дело только привычки (а мне переписывать, ибо так просто влепил 2020h место 0d0ah, а в противном случает надо код сдвигать весь)
Ну ты же си изображаешь, а не асм. Сдвижка, думаю, не проблема.
Лучше позволь работать обоим вариантам.

Цитата:
Цитата:
>> норм, но както рябит глаза, можно заменить на _ ?

смотри выше) _ уже заделанно под макросы
Раз уж ты всё равно анализируешь синтаксис, мог бы распознавать необходимость в новой строке и без знаков.

И ещё, разве подчёркивание как буква имени запрещено?

Цитата:
насчет {} я подумаю, мб в след версиях... мб)
С их использованием отпадёт потребность в endfunc и не только.

Я правильно понимаю, что cJass работает перед vJass и при его установке будет спокойно компилироваться и cJass и vJass и просто Jass?
Старый 03.05.2009, 15:07
Hellfim
Новичок
offline
Опыт: 79,707
Активность:
Цитата:
Я правильно понимаю, что cJass работает перед vJass и при его установке будет спокойно компилироваться и cJass и vJass и просто Jass?

Да
Старый 03.05.2009, 15:13
Sebra

offline
Опыт: 5,603
Активность:
Спасибо, пробую ставить.
Осталось одно сомнение:
Не будет ли это глючить если встретится имя, начинающееся с подчерка?
Старый 03.05.2009, 15:22
Sebra

offline
Опыт: 5,603
Активность:
ADOLF, я попробовал перекомпилировать одну карту (не свою) и получил проблему:
Помимо вылезших из щелей багов на этапе JASSHelper - Step 2 (structs) вылезла ошибка:
"Line 172:Expected a name".

строки 171-174:
Код:
trigger                 gg_trg_Enable_somenamehere     = null



endglobals


Этот кусок я выдрал из окна ошибки.
Только там 2 пустых строки, а здесь почему то три. Странно это.

Та же карта, скомпилированная без cJass, ошибок не показала.
Старый 03.05.2009, 20:05
user_jasser

offline
Опыт: 232
Активность:
Sebra
как я понял ADOLF, не желает пользоваться вексовским окошком в следствие отладочный механизм практически отсутствует в cJass, да и в некоторых местах прога вылетает с трескам.. лично я буду ждать след версию.
Старый 03.05.2009, 21:43
adic3x

offline
Опыт: 108,439
Активность:
Цитата:
Лучше позволь работать обоим вариантам.

да я так и постараюсь сделать, ждите вторую версию)

Цитата:
И ещё, разве подчёркивание как буква имени запрещено?

нет, но начинаться имя с него соответсвенно неможет, но >> я также продублирую через ;
обьявление переменных сделаю через 'зпт'

Цитата:
Раз уж ты всё равно анализируешь синтаксис, мог бы распознавать необходимость в новой строке и без знаков.

ненастолько)

насчет карты - кинь мне ее в приват если она весит немного, или выдери из нее вар3мап.дж - мне его хватит. есть некоторые глюки связанные с переносом, но там я так понимаю ошибка в теше возможно

ADOLF добавил:
Цитата:
как я понял ADOLF, не желает пользоваться вексовским окошком в следствие отладочный механизм практически отсутствует в cJass

там есть сбор - можеш в сорцах посмотреть) но пока сбор улетает т.е. я его банально недописал. сейчас я перекраиваю код с целью ввода новых принципиальных фич (к примеру все блоки через { } )
поэтому пока делать вывод сообщений об ошибках просто нецелесообразно (сейчас к примеру нельзя дефайнить большинство кейвордов, в след версии я надеюсь бедет только 1 или три кей ворда не поддающихся дефайну), однако вывод конечно предусмотрен

Цитата:
да и в некоторых местах прога вылетает с трескам.. лично я буду ждать след версию

точно вылетает при неправильно оформлении дефайна

многи вылеты исключены тем, что в начале и вокнце редактор вставляет однозначно валидный код; тулза веска также многие ошибки находит достаточно хорошо
Старый 03.05.2009, 22:04
J
expert
offline
Опыт: 48,447
Активность:
Цитата:
ненастолько)
написать обработчик синтаксиса не так сложно, делай полный анализ, тогда с исходным кодом можешь делать все что захочешь и очень эффективно, с хорошим обработчиком ошибок (но необходимость новой строчки без знаков это не по сишне)
Цитата:
(к примеру все блоки через { } )
также блок может быть и без ветвленых конструкций, а так просто вставленный в код для областей видимости, но т.к. в варе областей видимости кроме функций нет, то я бы советовал бы сделать так:
Есть например {}, в нем объявлены 2е инт и 1а флоат, используем, потом блок заканчивается - эти переменные больше не нужны, потому при следующем блоке в качестве переменных мы используем их, т.е. если будут 1 инт и 2 фла, то 1 инт и 1 флоат используются старые, и объявляется еще один флоат, а не создаем новые переменные, это было бы очень удобно и было бы экзотической фичей, а то кроме дефайнов нет ничего полезного

сделай class и struct
объявление приватности через
private: <приватный код>
public: <публичный код>
соответственно struct изначально публичный, а class приватный

Первая строка объявления функций будет как в Си? Шаблоны будут? Нормальные инлайн будут? которые также будут использовать переменные как {}. Дефайны будут как в си? будут много параметренные дефайны?

Отредактировано J, 03.05.2009 в 23:35.
Старый 03.05.2009, 23:23
adic3x

offline
Опыт: 108,439
Активность:
Цитата:
Первая строка объявления функций будет как в Си?

по крайней мере запланировано
Цитата:
Нормальные инлайн будут?

многострочны, с наследованием, с параметрами, модет даже с подсчетом примитивных выражений... вобщем думаю вам должно пока хватить)))
Цитата:
сделай class и struct

хм... можно будет дефайнить структ, из функционала обьвления через привате:/паблик: идея тру, поработаю на этом направлении

****

Цитата:
Нормальные инлайн будут?

функции? думаю... хз, будут многострочные дефайны, а вот инлайн... хз
Цитата:
Шаблоны будут?

пока не думал, точнее думал но не придумал
Цитата:
потом блок заканчивается - эти переменные больше не нужны

тут тоже хз, буду еще думать)
Старый 04.05.2009, 00:03
Sebra

offline
Опыт: 5,603
Активность:
Цитата:
насчет карты - кинь мне ее в приват если она весит немного, или выдери из нее вар3мап.дж - мне его хватит. есть некоторые глюки связанные с переносом, но там я так понимаю ошибка в теше возможно

Карта 1,5Мб без использования vJass.
Только Jass и GUI вперемешку.
Без cJass компилируется, с ним - нет.
Соответственно или нет проблемы, или я не знаю, как выдрать .дж-файл некомпилирующийся.
Думаю, что твоя програмка подставила какой-то мусор в конец блока глобалок.
Я пока не догадался, как буфер винды посмотреть в хексе.
Когда при переносе двух пустых строк они оказываются тремя это ж неспроста.
Завтра постараюсь урезать карту до минимума и выслать.

Цитата:
ненастолько)
Странно. Операторы свои ввёл, а где выражение закончено - не знаешь?
Старый 04.05.2009, 00:25
Elf_Stratigo

offline
Опыт: 4,699
Активность:
а где скачать cJass? ))))
Старый 04.05.2009, 13:54
Van Damm
wait... what?
offline
Опыт: 22,268
Активность:
В первом сообщении этой темы сразу после названия есть ссылка.
Старый 04.05.2009, 14:19
adic3x

offline
Опыт: 108,439
Активность:
Цитата:
Операторы свои ввёл, а где выражение закончено - не знаешь?

там есть сорцы...

Цитата:
Соответственно или нет проблемы, или я не знаю, как выдрать .дж-файл некомпилирующийся.

сохраняешл карту в простом редакторе (без вЖасса и сЖасса)
открываешь любым мпку редактором
екстрактишь искомый файл
архивишь его
шлешь мне через пс)

хотя наверное таки лучше карту, раз там гуи) да, шли карту) только импорт порежь и все)
Старый 04.05.2009, 16:08
Ответ

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы можете скачивать файлы

BB-коды Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход



Часовой пояс GMT +3, время: 18:07.