Добавлен , опубликован

Что это?

cJass - это еще одно расширение языка JASS, которое полностью совместимо с популярным vJass. Цель его создания - дать программистам еще больше возможностей по созданию простого и качественного кода. Основными направлениями являются:
  1. Макросредства и стандартная библиотека - избавляют от рутины, позволяя сконцентрироваться на основном коде.
  2. Упрощение синтаксиса - мы не хотим снова начинать спор, какой синтаксис лучше (блоки через begin & end или {}), и более того, мы не навязываем свою точку зрения - все конструкции cJass имеют JASS-style аналоги, тем не менее мы предоставляем выбор.
  3. Оптимизация карты - основная концепция cJass - это то, что все языковые конструкции не должны сказываться на качестве генерируемого кода. Также мы работаем над встроенным оптимизатором.

Как это использовать?

Просто скачайте дистрибутив (пароль для архива: cjass), распакуйте и запустите инсталлятор. У вас уже должен быть установлен Jass New Gen Pack.
Ознакомиться с возможностями можно, прочитав руководство пользователя cJass (off-line версия этого файла также имеется в директории программы).

Что-то не работает!

В настоящий момент мы активно дополняем язык всевозможными конструкциями, поэтому полноценная проверка синтаксиса пока отсутствует. Но мы всегда внимательно изучаем
bug-репорты, которые можно оставить в этой теме.

У меня есть идея: а не плохо бы...

Мы всегда рады выслушать Ваши идеи и предложения по внесению каких либо новых возможностей в язык, расширению стандартной библиотеки и т.д. Иногда мы даже действительно делаем то, что Вы нам предлагаете ;) Наша секция обратной связи ждет Вас!
И напоследок немного истории.
А история программы начинается на ресурсе wc3c.net, когда Vexorian, выслушав предложение от ADOLF'a сделать инструкции инкремента и декремента создает ветку с обсуждением синтаксиса... и благополучно забывает об этом. Тогда ADOLF подумал: "А неплохо было бы сделать свой парсер и включить в него всяких вкусностей". Изначально программа весила меньше заветных 9000 байт, распространялась по сети ICQ/Jabber и ее использовали несколько человек.
Однажды один из ее пользователей - Van Damm (впоследствии стал соавтором) сказал "это очень удобно!" (это было сказано про то, что можно вызывать функции без ключевого слова call) - и тогда мы решили, что если это удобно, почему бы не выложить программу на публичное обозрение. Благодаря zibade у нас появился сайт, где сразу стал отписываться Dark Dragon, который помог выявить львиную долю багов и внес множество интересных предложений.
С тех пор прошло много времени, мы сделали много новых версий, вес программы вырос в 3 раза (сейчас 26 Кбайт). На данный момент у нас есть планы, касающиеся многих конструкций, оптимизатора, и всего прочего.
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
13
Chester:
ekran("ReplaceableTextures\CommandButtons\BTNHolyBolt.blp")
Попробуй вывести эту строку, набранную в джассе...
А потом попробуй её же, но с удвоенными '\'.
Просто этот символ в строке - спецсимвол. Читай правила работы со строками.
12
[quote]\adichelper\AHupdate.exe
Win32:Malware-gen
Вирус/Червь[/quote]
D:
31
у меня
обнаружено: троянская программа Trojan-Downloader.Win32.Genome.tkp URL: cjass.xgm.ru/files/cJassSetup.exe//stream//data0008//PE_Patch.UP...
обнаружено: троянская программа Trojan-Downloader.Win32.Genome.tkp Файл: cJassSetup\$INSTDIR\AdicHelper\AHupdate.exe//PE_Patch.UPX//UPX
адик зачем ты вишмастера постишь? =)
32
это маразм конченых антивирусов - считать любое .ехе, которое загружает через инет другое .ехе - вирусом
ADOLF добавил:
хотя что бы хомячки не визжали надо это как то порезать
ADOLF добавил:
анивей там чистый си, если бы я писал виря то там бы был асм и что то нетривиальное
31
ну так загружай не exe а _xe или архив
NETRAT добавил:
sfmpq.dll и horus.dll upx сожмите
а SQLite будет эффективнее файл-дб?
13
[code]enum {array}[/code]
Можно ли это назвать багом?
21
Можно ли это назвать багом?
Это можно назвать идиотизмом.
13
[quote]Это можно назвать идиотизмом.[/quote]
Идиотизм то идиотизмом, но это парсит. Думаю что такого не должно быть.
21
Chester,
Думаю что такого не должно быть.
lolwut? ты сам придумал использовать ключевые слова как идентификаторы?
18
Если вот так написать (опечатка), то парсер зависнет:
	defain {
		privat msg(t) = BJDebugMsg(t)
	}
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.