Вверх ↑
Этот топик читают: Гость
Ответов: 3655
Рейтинг: 69
#31: 2007-06-19 18:58:19 ЛС | профиль | цитата
nesco, Как выйдет пакет С++ надо переводится из советников в гости .
карма: 0

0
Разработчик
Ответов: 26149
Рейтинг: 2127
#32: 2007-06-19 19:49:52 ЛС | профиль | цитата
Вячеслав писал(а):
Как выйдет пакет С++ надо переводится из советников в гости

Ты чего меня пужаешь. Вот закончу свой прект, параллельно VirtualStringTable (жаль бросать на полпути) и засяду за изучение WEB'a, а там посмотрим.
карма: 22

0
Ответов: 9906
Рейтинг: 351
#33: 2007-06-19 19:55:05 ЛС | профиль | цитата
Dilma, видал, какой сложный язык ты придумал

[size=-2]------ Добавлено в 19:55
Это еще хитрых оптимизаций не делали
Add(Edit,8982226,126,119)
{
Left=125
Top=60
link(onChange,10183311:doEvent1,[])
}
Add(Hub,10183311,196,119)
{
link(onEvent1,7504029:doValue,[(254,125)(254,76)])
link(onEvent2,1818278:doCompare,[])
}
Add(Memory,7504029,287,70)
{
}
Add(If_else,1818278,280,126)
{
Op1=Integer(10)
link(onTrue,8982226:doText2,[(326,132)(326,167)(114,167)(114,132)])
link(Op2,7504029:Value,[])
}
карма: 9

0
Ответов: 3655
Рейтинг: 69
#34: 2007-06-19 20:02:02 ЛС | профиль | цитата
nesco писал(а):
Ты чего меня пужаешь

Так я и про себя говорю.
Чё мы можем посоветовать если сами ни бум бум.
nesco писал(а):
и засяду за изучение WEB'a

Дык там три языка как минимум.


Galkov писал(а):
Dilma, видал, какой сложный язык ты придумал

Язык может и несложный непонятен сам принцип создания\функциониррования компонентов.
карма: 0

0
Разработчик
Ответов: 26149
Рейтинг: 2127
#35: 2007-06-19 20:05:39 ЛС | профиль | цитата
Galkov, но это же мертвый цикл при 10.
карма: 22

0
Ответов: 9906
Рейтинг: 351
#36: 2007-06-19 20:10:33 ЛС | профиль | цитата
Принцип очень простой: все, чего МОЖНО сделать в Design-Time - там должно и делаться.
Вот этим скрипт и занимается - он работает ДО запуска компилятора.
Должен, по крайней мере.
Его для этого и придумывали.

В Дельфи-1 - ВСЕ делается в Run-Time

Вот и все, собственно... Берешь кусок камня, и отсекаешь все лишнее...

карма: 9

0
Разработчик
Ответов: 26149
Рейтинг: 2127
#37: 2007-06-19 20:11:29 ЛС | профиль | цитата
Вячеслав писал(а):
Дык там три языка как минимум

Там всего один на базе трех, это -- две разные вещи.
карма: 22

0
Ответов: 9906
Рейтинг: 351
#38: 2007-06-19 20:20:38 ЛС | профиль | цитата
Ну ошибся... Подключи к doText2

Смысл в том, что в перспективе пакет обязан оптимизировать это в:
Add(Edit,8982226,126,119)
{
Left=125
Top=60
link(onEnter,1818278:doCompare,[])
}
Add(If_else,1818278,175,126)
{
Op1=Integer(10)
link(onTrue,8982226:doText2,[(226,132)(226,167)(114,167)(114,132)])
}

[size=-2]------ Добавлено в 20:20
А иначе - який же ты лыцарь....
карма: 9

0
Ответов: 3655
Рейтинг: 69
#39: 2007-06-19 20:27:01 ЛС | профиль | цитата
nesco писал(а):
Там всего один на базе трех, это -- две разнве вещи.

PHP, HTML, Ява,CSS, Аякс , - это всё используется в Вебе .
Ты хочешь сказать что они все одинаковые.
карма: 0

0
Разработчик
Ответов: 26149
Рейтинг: 2127
#40: 2007-06-19 20:33:21 ЛС | профиль | цитата
Galkov писал(а):
Ну ошибся...

А мне кажется, что нет, и такое может быть, если представить вместо линка кусок схемы ничего не меняющей. Такая ситуация тоже должна быть разрешена. Об этом и написано тобой постами выше.

[size=-2]------ Добавлено в 20:33
Вячеслав, когда их куча, то это уже вполне самостоятельный язык. Изучать в таком случае нужно именно его, а не те, из которых он был создан.
карма: 22

0
Главный модератор
Ответов: 2999
Рейтинг: 396
#41: 2007-06-19 23:02:49 ЛС | профиль | цитата
Dilma писал(а):
должна стоять 163 версия с последним патчем. Так ли это?

Да с патчем компилируется.
карма: 6
Дорогу осилит идущий. Install/Update HiAsm.NET
0
Ответов: 5446
Рейтинг: 323
#42: 2007-06-20 05:57:27 ЛС | профиль | цитата
О! Dilma, спасиьо за выложенный пример! Теперь хоть есть от чего плясать...
карма: 1

0
Разработчик
Ответов: 26149
Рейтинг: 2127
#43: 2007-06-20 10:12:55 ЛС | профиль | цитата
iarspider писал(а):
Теперь хоть есть от чего плясать

И куды ты плясать собрался, поделись? Пакет, вроде, поддерживаться не будет.
карма: 22

0
Администрация
Ответов: 15295
Рейтинг: 1519
#44: 2007-06-20 11:11:58 ЛС | профиль | цитата
Вячеслав писал(а):
PHP, HTML, Ява,CSS, Аякс , - это всё используется в Вебе .

PHP и javaScript самостоятельные языки со своим виртуальным окружением. Однако они достаточно ограничены и за час-два можно узнать про них все.

HTML - это не язык в полном смысле слова. Скорее формат документа. Полное представление о нем можно получить за 30-60 минут.

CSS - это тоже не язык и даже не формат. Скорее набор строк типа Параметр-Значение. Вся спецификация на него представленна ввиде отдельного компонента CSS. Ознакомление требует от 15 до 30 минут.

Аякс - это не язык, не формат и спецификацией никакой не обладает. Больше похож на некую идеалогию построения WEB приложений. Базируется на основе JavaScript+HTML+CSS. Ознакомление требует нескольких минут.

Galkov писал(а):
Это еще хитрых оптимизаций не делали

в этом направление еще думать надо. Вставлять анализ всех возможных подключений в элемент конечно можно, но слишком это громоздко будет и не универсально.

iarspider, частично для этого и делался пакет. Только следует учесть, что по хорошему нужно написать ряд сервисных ф-ций, которые скажем будут генерить код события по его ID. А то если посмотреть на реализацию Button можно увидеть, что большую часть занимает скрипт по прописыванию этого события во все блоки.
Обновил архив:
- сделан нормальный запуск программ из среды
- добавлен кодогенератор с вынесенной наружу языкозависимой части.

[size=-2]------ Добавлено в 11:11
nesco писал(а):
И куды ты плясать собрался, поделись? Пакет, вроде, поддерживаться не будет.

http://dev.hiasm.com/xf/topic.php?t=8195&start=120
карма: 27
0
Ответов: 9906
Рейтинг: 351
#45: 2007-06-20 11:22:22 ЛС | профиль | цитата
nesco, ну ты чего такой простой-то

Давай тогда я начну абсолютно конкретно, если ты не знаешь с чего

1) Берем пример frm.sha. Запускаем - получаем код frm.pas (глупых вопросов, типа: почему не dpr - давай договоримся не задавать). Смотрим, как это получается

2) CodeGen первым делом "запускает в дело" метод doStart элемента, в имени которого есть магическое слово EntryPoint. Почему так, а не иначе, и правильно ли это - сейчас не обсуждаем. Мы сейчас занимаемся приобретением понимания происходящего.
Приобретем - будем обсуждать

3) Это означает, что CodeGen начинает исполнять то, чего записано после func doStart в файле hiEntryPoint.hws.
Внимание: исполнять в Design-Time. Это самое главное. То, чего ты до этого момента писал в кодах элементов, исполнялось в Run-Time

4) Ну и давай по порядку.
Построчно, посимвольно - чего не есть ясно. Это будут уже конкретные вопросы, на которые будут тут же конкретные ответы.
Или по-другому: на любой ваш вопрос - любой наш ответ

5) Про gvar и fvar - написано в http://hiasm.com/wiki.php?view=164

6) Системный объект block - это такой большой StrListEx, в котором накапливаются результаты кодогенерации. Типа многосекционного "блокнотика"
Главный StrListEx содержит список имен имеющихся блоков, а его поле Object - указывает на конкретные уже StrList-ы с данным именем. Это как бы внутреннее представление... Знание необязательное, но возможно полезное для понимания....

7) Метод блока reg – создает именованную секцию в нашем "блокнотике"

8) Метод блока select – делает страничку выбранной: всякие print-ы пойдут именно в эту страничку

9) println('uses windows,kol;') – Ну вот и добрались до кодов Дельфи. Узнаешь брата Колю
А iarspider сам себе другого брата пропишет. К примеру, конечно же…

10) Вопросы задавай, в общем...
карма: 9

0
Сообщение
...
Прикрепленные файлы
(файлы не залиты)