?

Log in

No account? Create an account
Ни о какой безапелляционности в моих высказываниях не может быть и речи! [entries|archive|friends|userinfo]
Anatoly Vorobey

[ website | Website ]
[ userinfo | livejournal userinfo ]
[ archive | journal archive ]

Links
[Links:| English-language weblog ]

forth [сент. 14, 2009|04:35 pm]
Anatoly Vorobey
(интересно будет только программистам)

Завтра в 14:30 в рамках нашего семинара по языкам программирования на работе буду рассказывать про Forth. Если останется время, может, даже успею что-то про colorForth и Factor. Если есть желающие придти послушать в качестве гостей - пишите, проведу. Продвинутого материала там не будет, знакомство с языком не предполагается. В принципе, если самому прочитать Starting Forth & Thinking Forth by Leo Brodie, которые в последние несколько лет выложили бесплатно в сеть, то это более осмысленное действие, чем придти на эту лекцию (вторую из этих книг в любом случае рекомендую любому программисту прочитать).
СсылкаОтветить

Comments:
[User Picture]From: dimrub
2009-09-14 01:52 pm
С удовольствием приеду послушать - давно интересовался этим языком.
(Ответить) (Thread)
[User Picture]From: avva
2009-09-14 01:54 pm
здорово, буду рад
(Ответить) (Parent) (Thread)
[User Picture]From: neatfires
2009-09-14 02:02 pm
Жаль, что я уже знаком с этой темой на базовом уровне. Даже пытался кое-что написать на Факторе с год назад. Безуспешно, впрочем: в программе длиной в 500 строчек так и не удалось выловить все баги, вызванные неверным типом и числом параметров. Встроенный валидатор сбоил и выдавал зашифрованные ошибки, которые на irc-канале никто не смог объяснить. Убил на это часов 30 и сдался.

Пишите, когда будет еще что-нибудь интересненькое.
(Ответить) (Thread)
[User Picture]From: avva
2009-09-14 04:58 pm
Зашифрованные ошибки - это прикольно. Я сам не писал ничего на факторе, так, почитал немного.

Ага, напишу.
(Ответить) (Parent) (Thread)
[User Picture]From: neatfires
2009-09-14 05:18 pm
У меня пока что нет однозначного мнения о том, хорош он или плох. Может быть, просто имплементация подвела. Но у меня осталось впечатление, что ошибки в программе происходят главным образом из-за слишком высокой нагрузки на память при мысленных манипуляциях со стеком. По идее, ошибки такого рода должны отлавливаться валидатором (насколько локализованно - другой вопрос). Только это почему-то не сработало.
(Ответить) (Parent) (Thread)
[User Picture]From: anutka_il
2009-09-14 02:20 pm
муж очень хочет, можно? :)
(Ответить) (Thread)
[User Picture]From: avva
2009-09-14 02:51 pm
конечно, давайте он мне напишет на avorobey@gmail.com
(Ответить) (Parent) (Thread)
[User Picture]From: igorlord
2009-09-14 02:51 pm

My educated opinion

Having worked last 3 years in a company that used its own variation of Forth for mobile phone app development (and we had developed a very powerful language, with multiple thread support, closures, exceptions, structures, etc.), here is what I think of the language.

0. There are die-hard fans of the language. Ability to interactively define a little function (called "word") and immediately execute test/execute it is appealing.

1. Yes, your executable code is much more compact.

2. The above is due to you hand-crafting calling conventions and control flow. Ie. you are optimizing out load/store instructions by hand.

3. The above makes programmers a lot LESS productive. Compilers should worry about these low-level tasks as register assignments stack memory layout optimization.
(Ответить) (Thread)
[User Picture]From: glex1
2009-09-14 04:36 pm
Что за семинар, и в какой стране? :)
(Ответить) (Thread)
[User Picture]From: avva
2009-09-14 04:56 pm
В тель-авивском отделении Гугла, стихийно организованные встречи с лекциями о разных языках.
(Ответить) (Parent) (Thread)
[User Picture]From: glex1
2009-09-14 05:13 pm
Далеко от Мадрида. :(
Webcast будет?
(Ответить) (Parent) (Thread)
[User Picture]From: avva
2009-09-14 05:15 pm
нет, сорри. Да и к тому же я на иврите говорить буду, если только не зайдет кто-то из англоязычных гостей на огонек, тогда по-английски.
(Ответить) (Parent) (Thread)
[User Picture]From: os80
2009-09-14 05:15 pm
Анатолий, а можно сделать заказ? Вы не могли бы кратко рассказать, что полезное можно написать на Форте? Я вот читал-читал Броуди - но кроме яблок, бананов и открыть-краны ничего не увидел. Какое это имеет отношение к действительности? С другой стороны, есть такой "академический" язык Схема, применение которому нашлось с пол-пинка...
(Ответить) (Thread)
[User Picture]From: ru_pchel
2009-09-14 08:13 pm
На русской википедии есть примеры уже работающих проектов.

Сам интересуюсь этим вопросом. Особенно интересно зачем Фактор создают так усиленно.
(Ответить) (Parent) (Thread)
From: nbuwe
2009-09-15 03:54 pm
Форт активно применяют в embedded мире. Был у меня знакомый физик, большой фортоман, который в свои экспериментальные установки впаивал какой-нибудь микроконтроллер, за день портил на него форт систему, а дальше уже программировал все в (относительно) комфортной интерактивной среде. Думаю, что именно скорость портирования и маленкий размер определяют популярность форта в этих приложениях.

Я сам форт больше читал (open firmware драйвера, чтоб понять, как устроено какое-нибудь железо). Но тут как-то решил в образовательных целях написать сам, чтоб действительно пощупать, как же оно работает. Точных цифр не помню, но ядро интерпретатора шитого кода (на ассемблере SuperH) занимало какие-то дюжины байт. Плюс минимальный набор ассемблерных слов для арфметики и т.п., а остальное можно нести готовое прямо на форте.

Так что я бы сказал, что опытный человек (с большими запасами уже наработанного кода) действительно уже через день-два на новом железе программировал бы то, что ему от железа надо, вместо того, чтобы муторно писать на ассемблере или бороться с C компилятором (если таковой вообще есть).
(Ответить) (Parent) (Thread)
From: (Anonymous)
2009-09-14 05:29 pm
видео будет?
(Ответить) (Thread)
[User Picture]From: avva
2009-09-14 05:32 pm
нет
(Ответить) (Parent) (Thread)
[User Picture]From: anatoly_rr
2009-09-14 08:24 pm
А будет ли какое-нибудь подобное мероприятие с 24 сентября по 8 октября? Я буду в это время в Израиле и очень хотел бы познакомиться с Вами. Такой семинар был бы отличным поводом: вроде и Вас не сильно побеспокою, да и вообще интересные темы поднимаете.
(Ответить) (Thread)
[User Picture]From: pollak
2009-09-15 05:13 am
Эх , жалко не смогу прийти -- далеко уж очень ))
Это конечно очень красивая вещь. Кстати, слышал слух, что якобы бортовой компьютер Шатла програмирован на форте.
(Ответить) (Thread)
[User Picture]From: ltwood
2009-09-16 09:15 pm
В Forth, насколько я знаю, все интересные темы относятся к продвинутым (структура шитого кода, типы шитого кода и компилирующие слова). А если это не рассказывать, то наверно лучше уж рассказывать про Postscript, который мало чем отличается от Forth.
(Ответить) (Thread)