Немедленно нажми на RESET, All!
embedded TCL
Mon Dec 26 2005 13:30, Kirill Frolov wrote to All:
KF>
Не Форт, это точно. Огромный и неповоротливый как... тикль. 85 кило супротив примерно 8 кило для полного Форта, или 1 кило для гольной FVM. А уж про скорость лучше и не начинать, хуже Васика :(
Пока Алексей
А главное, что Форт, что TCL - птичьи языки. Уж лучше какой-нибудь SLang встраивать... Вопрос один: "Зачем?".
Mon Dec 26 2005 15:28, Anton Fedorov wrote to Alex Kouznetsov:
Если полностью интерпретируемый, а я не вникал как там, то да. У настоящего TCL заметно шустрее любого бейсика. Но там компиляция в байткод.
AF> А главное, что Форт, что TCL - птичьи языки. Уж лучше какой-нибудь SLang AF> встраивать...
Что значит "птичий"? TCL, наверное, самый простой язык. Никаких громоздких конструкций и правил полных исключений. Всё остальное -- библиотеки (packages). Из этого же следует и существенный один недостаток: проверить правильность программы каким-либо "компилятором" сложно. Многие ошибки не вызовут сбоев синтаксического и/или грамматического анализатора ("парсера"). Динамическая типизация, возможно термин некорректен, тоже -- с одной стороны исключает ошибки вызванные необходимостью преобразования данных, с другой стороны тем самым позволяет совершать смысловые ошибки для программиста. Но для быстрого скриптования небольших программ -- это хорошее решение. Для больших -- плохое скорей.
Форт же -- это практически ассемблер...
AF> Вопрос один: "Зачем?".
Затем что:
- более высокоуровневый чем C язык -- меньше трудоёмкость;
- байт-код или даже текст программы может занимать меньше программной памяти, чем код программы сгенерированный C-компилятором;
- может размещаться в памяти данных (внешнем ЗУ, например), тогда как машинный код -- исключительно в программной памяти;
- интерпретатор может быть использован для взаимодействия с другими программами без организации между ними "сильной" связи -- это по сути, очень гикий интерфейс (в качестве примера можно привести postscript или PCL принтеры -- где бы они были с windows GDI драйверами?)
Mon Dec 26 2005 14:00, Alex Kouznetsov wrote to Kirill Frolov:
AK> From: "Alex Kouznetsov" Mon Dec 26 2005 13:30, Kirill Frolov wrote to All:
KF>>
AK> Hе Форт, это точно. Огромный и неповоротливый как... тикль. 85 кило AK> супротив примерно 8 кило для полного Форта,
85КБайт _на_PC_? Там и hello world выражается более чем мегабайтом, иногда.А если хоть бы и 20КБайт -- для системы с 128КБайт ROM вполне приемлемо. Я бы скорей на ОЗУ смотрел. Вот его то маловато бывает. И на то, что пробовали ли его вообще в 16-битной системе. Не секрет же, что половина программ по тем же досом в "real mode" собрать невозможно (int == строго 4 байта).
Только тут и для доса нельзя её. Вся завязана то на unix, то на windows.
AK> или 1 кило для гольной FVM.
И что с ней толку?
AK> уж про скорость лучше и не начинать, хуже Васика :(
Возможно. Но к бейсику ни расширений толком ни приделать, ни написать для него ничего вообще нельзя.
Tue Dec 27 2005 11:44, Kirill Frolov wrote to Alex Kouznetsov:
KF>>>
AK>> Hе Форт, это точно. Огромный и неповоротливый как... тикль. 85 кило AK>> супротив примерно 8 кило для полного Форта,
KF> 85КБайт _на_PC_? Там и hello world выражается более чем мегабайтом, KF> иногда.
А причем здесь РС? На РС тикль существует давным-давно, так что изобретать велосипед не вижу смысла.
KF> А если хоть бы и 20КБайт -- для системы с 128КБайт ROM вполне KF> приемлемо.
Дык, таки не 20, а 85.
AK>> или 1 кило для гольной FVM.
KF> И что с ней толку?
Аппликуху на скриптах делать. Например, есть у меня старинное изделие, которому скоро второй десяток лет пойдет. Однако живет оно и здравствует, потому как прикладное ПО сделано на скриптах. Только время от времени скрипты слегка подправлять приходится, по желанию заказчика.
Пока Алексей
Tue Dec 27 2005 21:58, Alex Kouznetsov wrote to Kirill Frolov:
KF>> 85КБайт _на_PC_? Там и hello world выражается более чем мегабайтом, KF>> иногда. AK> А причем здесь РС? Hа РС тикль существует давным-давно, так что AK> изобретать велосипед не вижу смысла. KF>> А если хоть бы и 20КБайт -- для системы с 128КБайт ROM вполне KF>> приемлемо. AK> Дык, таки не 20, а 85.
85 -- это где? В Win32 или Linux версии? Не удивлюсь. Речь про версию ограниченную ansi-c и собранную, например, KEIL'ом для x51. Или hitech'ем для x86. Так получается, типично, в несколько раз объём меньше виндового или линухового. Во-первых ибо код 32-битный, во-вторых библиотек с собой лишних не таскается.AK>>> или 1 кило для гольной FVM. KF>> И что с ней толку? AK> Аппликуху на скриптах делать. Hапример, есть у меня старинное изделие, AK> которому скоро второй десяток лет пойдет. Однако живет оно и здравствует, AK> потому как прикладное ПО сделано на скриптах. Только время от времени AK> скрипты слегка подправлять приходится, по желанию заказчика.
Ну вот, например, как в ней элементарный ассоциативный массив сделать? Ускриптуешься вусмерть. Всё-таки минимум какой-то необходим.
Wed Dec 28 2005 11:41, Kirill Frolov wrote to Alex Kouznetsov:
AK>>>> или 1 кило для гольной FVM. KF>>> И что с ней толку? AK>> Аппликуху на скриптах делать. KF> Hу вот, например, как в ней элементарный ассоциативный массив сделать?
Хэшем. Только это задача для кросс-компилятора, а не для эхотажного контроллера. Ему встроенный компилятор без надобности, имхо. Разве что Форт.
Пока Алексей
Wed Dec 28 2005 12:23, Alex Kouznetsov wrote to Kirill Frolov:
AK>>>>> или 1 кило для гольной FVM. KF>>>> И что с ней толку? AK>>> Аппликуху на скриптах делать. KF>> Hу вот, например, как в ней элементарный ассоциативный массив сделать? AK> Хэшем. Только это задача для кросс-компилятора, а не для эхотажного AK> контроллера. Ему встроенный компилятор без надобности, имхо. Разве что AK> Форт.
Тут не компилятор нужен, тут код нужен. Которого нет. И компилятор его из ниоткуда не извлечёт.
Wed Dec 28 2005 12:33, Kirill Frolov wrote to Alex Kouznetsov: KF>>> Hу вот, например, как в ней элементарный ассоциативный массив KF>>> сделать? AK>> Хэшем. Только это задача для кросс-компилятора, а не для эхотажного AK>> контроллера. Ему встроенный компилятор без надобности, имхо. Разве что AK>> Форт. KF> Тут не компилятор нужен, тут код нужен. Которого нет. И компилятор его KF> из ниоткуда не извлечёт. Обоснуй.
Пока Алексей
Join the Discussion
Have something to add? Share your thoughts — no account required.
Didn't find your answer?
Ask the community — no account required