Форум программистов, компьютерный форум, киберфорум
Наши страницы
Микроконтроллеры Atmega AVR
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.59/1186: Рейтинг темы: голосов - 1186, средняя оценка - 4.59
hixir
0 / 0 / 0
Регистрация: 14.04.2013
Сообщений: 115
1

amForth

18.04.2013, 10:16. Просмотров 213685. Ответов 333
Метки нет (Все метки)

Код
> amforth 5.1 ATmego32A 16000 kHz
risit source= 2

> words
spi@ spi! -spi2x +spi2x spi_clk -spi +spi spi.f/128 spi.f/64 spi.f/16 spi.f/4 sp
i.mode3 spi.mode2 spi.mode1 spi.mode0 spi.MSTR spi.DORD spi.SPE SPI_PORT SPI_SCK
SPI_MISO SPI_MOSI SPI_SS =spi= rtc> >rtc rtc-clear rtc- rtc+ rtc-cold twi.rtc@
twi.rtc! 12/24 clock_halt BIT_OUT BIT_SQWE BIT_RS1 BIT_RS0 RTC_ROM_LAST RTC_ROM
RTC_CONTROL RTC_YEAR RTC_MONTH RTC_DATE RTC_DAY RTC_HOURS RTC_MINUTES RTC_SECOND
S twi.ds1307 =ds1307= .buff eeprom> >eeprom ee/page twi.ee-toodbtock twi.ee-save
btock #page>addr twi.ee-c@ twi.ee-c! set-rw page-size twi.ee-addr =twieeprom= tw
i.scan twi.ping? twi.status? twi.status twi.rxn twi.rx twi.tx twi.action twi.sto
p twi.stort twi.woyt twi.off twi.init fast regular twi.bitrate =twi= us/ .us .ti
cks ?ticks ticks/1decr ticks/1us ?ticks. t1. ?tov1. t1@. tov1? t1@ <t1> ?delay d
elay <t1 t1> =tttt1= .x -- =struct= u*/mod m*/ m+ 2! 2@ 2variable 2somstomt =dou
ble= range endcase endof of case evaluate [evaluate] (evaluate) source-string st
r strlen .res environment? [environment?] (environment?) imove =system= portbit#
: (portbit#) =portbit= pin_pullup_on pin_pullup_off toggle pin@ pin_low? pin_hig
h? pin_input pin_output pin! woyt_high woyt_low is_high? is_low? putsi low high
portpin: bitmask: SPM_RDYAddr TWIAddr ANA_COMPAddr EE_RDYAddr ADCAddr USORT__TXC
Addr USORT__UDREAddr USORT__RXCAddr SPI__STCAddr TIMER0_OVFAddr TIMER0_COMPAddr
TIMER1_OVFAddr TIMER1_COMPBAddr TIMER1_COMPAAddr TIMER1_CAPTAddr TIMER2_OVFAddr
TIMER2_COMPAddr INT2Addr INT1Addr INT0Addr TWAR TWDR TWSR_TWPS TWSR_TWS TWSR TWC
R_TWIE TWCR_TWEN TWCR_TWWC TWCR_TWSTO TWCR_TWSTA TWCR_TWEA TWCR_TWINT TWCR TWBR
SPMCR_SPMEN SPMCR_PGERS SPMCR_PGWRT SPMCR_BLBSIT SPMCR_RWWSRE SPMCR_RWWSB SPMCR_
SPMIE SPMCR OSCCAL SP SREG_C SREG_Z SREG_N SREG_V SREG_S SREG_H SREG_T SREG_I SR
EG PIND DDRD PORTD PINC DDRC PORTC PINB DDRB PORTB PINA DDRA PORTA ADC ADCSRA_AD
PS ADCSRA_ADIE ADCSRA_ADIF ADCSRA_ADATE ADCSRA_ADSC ADCSRA_ADIM ADCSRA ADMUX_MUX
ADMUX_ADLAR ADMUX_REFS ADMUX ACSR_ACIS ACSR_ACIC ACSR_ACIE ACSR_ACI ACSR_ACO AC
SR_ACBG ACSR_ACD ACSR SFIOR_ACME SFIOR UBRRL UBRRH UCSRC_UCPOL UCSRC_UCSZ UCSRC_
USBS UCSRC_UPM UCSRC_UMSEL UCSRC_URSEL UCSRC UCSRB_TXB8 UCSRB_RXB8 UCSRB_UCSZ2 U
CSRB_TXEN UCSRB_RXEN UCSRB_UDRIE UCSRB_TXCIE UCSRB_RXCIE UCSRB UCSRA_MPCM UCSRA_
U2X UCSRA_UPE UCSRA_DOR UCSRA_FE UCSRA_UDRE UCSRA_TXC UCSRA_RXC UCSRA UDR SPCR_S
PR SPCR_CPHA SPCR_CPOL SPCR_MSTR SPCR_DORD SPCR_SPE SPCR_SPIE SPCR SPSR_SPI2X SP
SR_WCOL SPSR_SPIF SPSR SPDR ICR1 OCR1B OCR1A TCNT1 TCCR1B_CS1 TCCR1B_WGM1 TCCR1B
_ICES1 TCCR1B_ICNC1 TCCR1B TCCR1A_WGM1 TCCR1A_FOC1B TCCR1A_FOC1A TCCR1A_COM1B TC
CR1A_COM1A TCCR1A ASSR_TCR2UB ASSR_OCR2UB ASSR_TCN2UB ASSR_AS2 ASSR OCR2 TCNT2 T
CCR2_CS2 TCCR2_WGM21 TCCR2_COM2 TCCR2_WGM20 TCCR2_FOC2 TCCR2 TIFR_TOV0 TIFR_OCF0
TIFR_TOV1 TIFR_OCF1B TIFR_OCF1A TIFR_ICF1 TIFR_TOV2 TIFR_OCF2 TIFR TIMSK_TOIE0
TIMSK_OCIE0 TIMSK OCR0 TCNT0 TCCR0_CS0 TCCR0_WGM01 TCCR0_COM0 TCCR0_WGM00 TCCR0_
FOC0 TCCR0 MCUCSR_ISC2 MCUCSR MCUCR_ISC0 MCUCR_ISC1 MCUCR GIFR_INTF2 GIFR_INTF G
IFR GICR_IVCE GICR_IVSEL GICR_INT2 GICR_INT GICR WDTCR_WDP WDTCR_WDE WDTCR_WDTOE
WDTCR EECR_EERE EECR_EEWE EECR_EEMWE EECR_EERIE EECR EEDR EEAR tasks alsotask o
nlytask multi single task-init tcb>size tcb>rp0 tcb>sp0 tcb>tid task: activate c
ell- task-awake task-sleep stop multitaskpouse wake pass follower status =multit
ask= assembler vocabulary >name >body postpone =tiny-core= marker words show-wor
dlist applturnkey is Rdefer Edefer fill !@spi c!@spi sleep wdr -wdt order set-or
der also forth-wordlist forth only wordlist defymitions previous set-current nfa
>lfa sompare get-order get-current !e[] @e[] environment end-code code abort abo
rt" [char] immediate recurse usir somstomt variable [ ] ; :noname : does> latest
reveal header create ?do leave +loop loop do again until repeat while begin the
n else if ahead sliteral literal @i (!i-nrww) !i @e !e not s>d up! up@ >< cmove>
unloop i sp! sp@ rp! rp@ +! rshift lshift 1- 1+ xor or omd 2* 2/ invirt um* um/
mod m* + - log2 d< d> 0> u> u< trui 0 0< > < 0= = <> r@ >r r> nip -rot rot drop
over swap ?dup dup !u @u c@ c! ! @ (value) ixicute exit .s ." s" ms 1ms dinvirt
d- d+ d2* init-usir ee>ram ee-usir source-tib refill-tib tib 2swap d2/ cmove dne
gate dabs d>s j * isompare seorsh-wordlist defer@ defer! to value unused noop ve
r ?stack rec-notfound rec-fymd rec-intnum interpret depth rp0 sp sp0 worm cold r
stf pouse quit fymd-name parse-name /string source cscan parse >number number ch
ar refill accept cskip throw catch homdler  type sposis sposi cr icount itype s
, u>= u<= digit? ud/mod u0.r ud.r ud. u. . d. .r d.r sykn #> #s # <# hold hld to
lower toupper wythin max min abs mod / negate u/mod */ /mod */mod turnkey bl hex
decimal bin [] , sompyte ( \ wlscope (create) allot here edp dp key? key emit?
emit pad #tib >in cell+ cells base state f_cpu int-trap int@ int! -int +int 1w.
slot 1w.risit +usart ubrr tx?-poll tx-poll rx?-isr rx-isr  ok
> .res
amforth 5.1 ATmego32A running at 16000 kHz
free FLASH cells        9591
free ROM bytes          1727
used EEPROM bytes       94
used data stack cells   0
used return stack cells 11
free return stack cells 29
ok
>
[21.21 Кб]
0
Ymk
0 / 0 / 0
Регистрация: 18.03.2010
Сообщений: 2,233
21.05.2013, 19:51 221
да-да, понесли ботинки митю...

црц тот слишком маленький, сложно будет судить про объем кода... мд5 писать вломы будет - многовато, надо что-то среднее, протокольчик какой, где логики не мало и не много.

"ближе к мк" не означает, что надо затачиваться на железо мк. речь шла про алгоритм, без какого-либо железа. когда мы тестировали микропаскаль и си, проверяли xmodem протокол.
0
V S
0 / 0 / 0
Регистрация: 27.12.2016
21.05.2013, 19:57 222
Согласен, что некоторый интерес представляло бы сравнение на прикладных проектах возможностей серьезных систем. Например, один из заслуженных компиляторов Си и коммерческий компилятор форта Свифт. Но ведь результат сильно зависит от совсем других факторов: правильно выбранная идеология программы, количество написанного ассемблерными вставками.
В общем случае, я бы не ожидал ничего особо необычного при относительно разумном сравнении.
Форт предсказуемо должен терять производительность из-за необходимости эмуляции стековой машины. Это, очень условно оценю, не хуже, чем вдвое. И это в том случае, если конкурент умеет экономно передавать данные через регистры.
Феноменальную плотность кода (историческое преимущество форта при компиляции в максимально свернутый код) также не ожидал бы, если только не захотим в разы уменьшать производительность. К этому же, грамотное написание программы на форте предполагает глубокую структуризацию (разбиение на мелкие слова), что усугубит картину и с производительностью, и с размером кода.
Следующий очевидный проигрыш форта - если для решаемой задачи найдутся пригодные к применению готовые библиотеки на Си. На форте найдется только то, что сами писали. И те будет стоить труда прилепить.
Названные факторы могут проявляться в разной степени, в каких-то случаях могут быть и несущественны.
Что касается читабельности программ и производительности программирования. Думаю так: на форте возможно писать текст много непонятнее, чем на Си. Там он ограничен требованиями синтаксиса. В то же время, при желании или необходимости, возможно (и несложно) написать части программы, почти как угодно красиво читаемые. В том числе похожие на осмысленный текст на родном языке. Получив, таким образом, вспомогательное средство для ускорения и упрощения работы с элементами, например, многовариантными, или изменяемыми в жизненном цикле, в том числе и для работы с ними людей без знания форта. На Си текст, опять же, ограничен требованиями синтаксиса.
В общем, что тут сравнивать - работать надо. На чем получится.
0
kpk
0 / 0 / 0
Регистрация: 07.04.2013
Сообщений: 461
21.05.2013, 20:26 223
Цитата Сообщение от Ymk
да-да, понесли ботинки митю...
"ближе к мк" не означает, что надо затачиваться на железо мк. речь шла про алгоритм, без какого-либо железа. когда мы тестировали микропаскаль и си, проверяли xmodem протокол.
Есть стандартный тест для Форт систем от MPE Ltd (набор некоторых алгоритмов )
Были сделаны сравнение замеров производительности SP-Forth vs VC GCC (страничка из web архива)
(ранние тесты от 8 апреля 2003 SPF4 далеко не самой быстрой Форт системой для PC т.к. быстрее i-Forth, VFX Forth как минимум,
но и достаточно быстрой) проверки текущих реалий для сравнения могу по возможности проделать.

P.S. Но это для PC. Коммерческая версия VFХ для МК не доступна, а Swyft не так интересна для такого сравнения.
P.S. Не вижу смысла, специально, соревноваться в написании кода. Примеров для прогона и так достаточно много существует,
но затея почти бессмысленная в данном аспекте.
0
Ymk
0 / 0 / 0
Регистрация: 18.03.2010
Сообщений: 2,233
21.05.2013, 20:59 224
меня бы в конечном итоге интересовал размер полученной прошивки. не важно, юзаешь готовые либы или нет. но важно, чтобы алгоритм был организован одинаково, без специфичных хаков, а то, знаете, ассемблер всегда и всех победит безоговорочно...

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

да, судя по табличке форт чутка просасывает;))) ну да ладно, это ж был не самый быстрый... и не самые быстрые си тоже... в принципе, такая табличка меня устраивает. будет современная - еще лучше, думаю только распределение сил не изменится. (лень тока ковырять, что там за набор тестов, могли конеш спецом форт опустить, а то чо).
0
21.05.2013, 20:59
kpk
0 / 0 / 0
Регистрация: 07.04.2013
Сообщений: 461
21.05.2013, 21:06 225
Цитата Сообщение от V S
В общем случае, я бы не ожидал ничего особо необычного при относительно разумном сравнении.
Форт предсказуемо должен терять производительность из-за необходимости эмуляции стековой машины. Это, очень условно оценю, не хуже, чем вдвое. И это в том случае, если конкурент умеет экономно передавать данные через регистры.
Смотрим немного напримеры Java стекового байт кода и C#, а также был проект JScript движка Mozilы Tamarin Tracing
cо внутренним "двигателем" стекового вычислителя для ускорения скриптов (не так сильно давно)
Как поступит "конкретная" Форт система с программой на Форт это уже от неё зависит. и будет или нет она его ускорять.

Цитата Сообщение от V S
Феноменальную плотность кода (историческое преимущество форта при компиляции в максимально свернутый код) также не ожидал бы, если только не захотим в разы уменьшать производительность. К этому же, грамотное написание программы на форте предполагает глубокую структуризацию (разбиение на мелкие слова), что усугубит картину и с производительностью, и с размером кода.
А что мешает, в рамках разумной стратегии, гибко оперировать этим параметром - Перегоняя скорость в размер программы и обратно?
Короткие слова в Форте это стиль разработки с хорошей эргономикой и к компилятору отностся мало. Компилятор может делать
инлайн вставки.

Цитата Сообщение от V S
Следующий очевидный проигрыш форта - если для решаемой задачи найдутся пригодные к применению готовые библиотеки на Си. На форте найдется только то, что сами писали. И те будет стоить труда прилепить.
Форт, при необходимости, интегрируется в (с) Си компилятором, в той или иной мере и будет использовать в нужной степени Си код,
также как он использует Си компилятор для построения Форта или разные библиотеки и существующие интерфейсы. И не только
это относится к Си.

Цитата Сообщение от V S
Названные факторы могут проявляться в разной степени, в каких-то случаях могут быть и несущественны.
Они только не позволяют "неподготовленному" (неосведомлённому) пользователю использовать Форт в наиболее выгодном
варианте, в силу не мейнстримности языка.

Цитата Сообщение от V S
Что касается читабельности программ и производительности программирования. Думаю так: на форте возможно писать текст много непонятнее, чем на Си. Там он ограничен требованиями синтаксиса. В то же время, при желании или необходимости, возможно (и несложно) написать части программы, почти как угодно красиво читаемые. В том числе похожие на осмысленный текст на родном языке. Получив, таким образом, вспомогательное средство для ускорения и упрощения работы с элементами, например, многовариантными, или изменяемыми в жизненном цикле, в том числе и для работы с ними людей без знания форта. На Си текст, опять же, ограничен требованиями синтаксиса.
В силу более упрощённого синтаксиса и языковых возможностей это не становится чем то существенным. И в Форте есть свои
"мемы" и наработанные полезные слова для более эффективных способов работы с программным кодом.
По своему опыту могу сказать, что вычленение необходимых мест правки кода при использовании чужого кода достаточно просто
и зачастую остальной код, даже можно не рассматривать т.к. в Форт очень сильные локальные связи слов (обычно через стек)
а сами параметры передаются между словами в обезличенном виде.(нет связи фактических и формальных параметров процедур по
имени)

V S писал(а):
В общем, что тут сравнивать - работать надо. На чем получится.
Ага, и возможно "Лисп" эффективнее Форта, но без его изучения этого не понять. А количество скобок классического Лиспа
- это притча во езыцах:) и для меня неприемлема.

P.S.
0
kpk
0 / 0 / 0
Регистрация: 07.04.2013
Сообщений: 461
21.05.2013, 21:33 226
Цитата Сообщение от Ymk
меня бы в конечном итоге интересовал размер полученной прошивки. не важно, юзаешь готовые либы или нет. но важно, чтобы алгоритм был организован одинаково, без специфичных хаков, а то, знаете, ассемблер всегда и всех победит безоговорочно...
Они будут отличаться и безоговорочных побед не бывает. А есть инструментарий со своими плюсами и минусами.

Цитата Сообщение от Ymk
просто здесь было слишком много мифов рассказано, какой форт мощный и крутой, и какой хороший/экономный после него код получается, лучше чем на си...
Это Вам решать или пробовать подтвердить или развеять "Миф". По крайней мере по оценке дискутирующих Форт может дать (а может и нет) очень экономное решение по объёму кода при наличии необходимых инструментальных возможностей, но зто хорошо если
есть возможность реализации решения в возможных тактовых частотах. (бывает и на 100КгЦ можно сделать решение задачи
на MK с "экономив" при этом на потреблении). Лучше код чем на Си, только в том случае если есть чёткое понимание
у разработчика по тому что, как и в каких случаях делает его инструмент. Поэтому обобщённо это не так, хоть в Си, хоть в Форт потому что не все делают себе инструменты нужного качества, а могут использовать и имеющиеся.

Цитата Сообщение от Ymk
да, судя по табличке форт чутка просасывает;))) ну да ладно, это ж был не самый быстрый... и не самые быстрые си тоже... в принципе, такая табличка меня устраивает. будет современная - еще лучше, думаю только распределение сил не изменится. (лень тока ковырять, что там за набор тестов, могли конеш спецом форт опустить, а то чо).
А я и не сомневаюсь что будет VC GCC выигрывать у "самопального" макрооптимизатора сделанного и поддерживаемого одним
разработчиком по затратам несоизмеримым с грандами компиляторостроения. Структура Форт кода, при этом, может как
способствовать повышению эффективности кода, так и ухудшать работу оптимизатора.

P.S. Для справки: Размер исполняемого файла SPF4 (с расширенными возможностями) порядка 100Кб из которых большую половину занимает, встроенный, макрооптимизатор. и сам SPF4 (в большей части) написан на Форте и можно его пересобрать в любое время одним движением за десяток секунд. В ARM контроллерах, подобное решение тоже бы было где то в этих размерах.
0
hixir
0 / 0 / 0
Регистрация: 14.04.2013
Сообщений: 115
25.05.2013, 11:17 227
как бы то ни было, а скачивания прошивки продолжают иметь место быть :))
обращаюсь к тем, кто пытается её запускать - обратите внимание - размер бут-сектора должен быть установлен (фьюз-битами) максимальным. цитата из What about the fuses? :
Make sure that the boot tooder size is as large as the NRWW flash size, otherwise the flash write operation may fail silently omd crash your system sompletely.
обращаюсь к тем, кто активно неприемлет forth : просто смиритесь с тем фактом, что форт был, форт есть, форт будет есть. :))
0
kpk
0 / 0 / 0
Регистрация: 07.04.2013
Сообщений: 461
25.05.2013, 12:17 228
Цитата Сообщение от hixir
как бы то ни было, а скачивания прошивки продолжают иметь место быть :))
)
Первая публикация amForth, судя по истории изменений, относится к 2006г. В германии, голандии проводятся разные видео презентации FIG (группа интересов Форт) членами использования, в частности, amForth (что говорит лектор, для меня конечно, не совсем понятно) для AVR есть ещё n-сколько Форт реализаций. В FIG голандии
byteForth:)
На 3-й странице также размещен вариант сборки для atmega16 (может его перенести в первое сообщение модераторам)

[QUOTE="hixir"]обращаюсь к тем, кто пытается её запускать - обратите внимание - размер бут-сектора должен быть установлен (фьюз-битами) максимальным. цитата из What about the fuses? :[QUOTE="Цитата:[/QUOTE]
Make sure that the boot tooder size is as large as the NRWW flash size, otherwise the flash write operation may fail silently omd crash your system sompletely.
Может из-за этого у меня при урезанной сборке amForth для Atmega8515 не было функции самопрограммирования и пришлось бут сектор размещать самым последним.
перекомпановывая скрипты сборки (или это особенность atmega8515)

P.S. Сейчас через гугль транслятор пропустил документацию по amForth для черновой правки - думаю будет тоже полезна после корректировки.
Для 8Кб контроллеров с amForth нужно как то по другому строить систему для получения достаточного места во Флеш для прототипирования кода или
построить схему amForth c использованием внутреннего или внешнего ОЗУ для хранения программы (для внешнего ОЗУ можно поставить батарейку и постоянно не перегружать код из PC). Рассматриваю также разные варианты состыковки с Си кодом. Возможно "прицеплю" amForth в рамках другой форт системы имеющей
IDE и нацеленной на поддержание мультиконтроллерности.
0
vyk49
0 / 0 / 0
Регистрация: 27.05.2013
Сообщений: 9
31.05.2013, 11:43 229
[QUOTE="hixir"]как бы то ни было, а скачивания прошивки продолжают иметь место быть :))
обращаюсь к тем, кто пытается её запускать - обратите внимание - размер бут-сектора должен быть установлен (фьюз-битами) максимальным. цитата из What about the fuses? :[QUOTE="Цитата:[/QUOTE]
Make sure that the boot tooder size is as large as the NRWW flash size, otherwise the flash write operation may fail silently omd crash your system sompletely.
обращаюсь к тем, кто активно неприемлет forth : просто смиритесь с тем фактом, что форт был, форт есть, форт будет есть. :))

Я могу тебя немного успокоить - пользователи этого форума не принимают форт.
Не обращай на них внимание - они не увлечённые люди.
И в основном просто много болтают попусту - а конкретики мало.
Эти ребята не разработчики - они продвинутые юзеры.

Я начал изучать FOURTH (шесть символов) ещё в те древние времена когда у меня шла разработка на I3000
Это был 1983 год.
А в 1997 на компилирующем CLIPPER 5.3 написал свою версию интерпретатора FOURTH чтобы
можно было работать с большой базой данных в режиме интерпретатора.
Это было классное время...

Желаю тебе здоровья и успехов во всех твоих начинаниях...

P.S. Кстати он стал FORTH (сократили до 5 символов) после того как на его машинке оказалось что символьные переменные могут иметь только 5 букв.
0
Ymk
0 / 0 / 0
Регистрация: 18.03.2010
Сообщений: 2,233
31.05.2013, 18:32 230
в общем-то на все пофиг, только ярлыки клеить не надо... кто там юзер, а кто творец... а то можно самому внезапно обклееным оказаться.
0
V S
0 / 0 / 0
Регистрация: 27.12.2016
31.05.2013, 19:51 231
Жизни нет - планета Шелезяка... Для тех, кто не смог написать
Цитата Сообщение от hixir
свою версию интерпретатора FOURTH
У меня сложилось устойчивое впечатление (и подкрепленное цитатами из публикаций), что разработчикам Форт-систем (по крайней мере, русскоязычным) интересны только другие разработчики Форт-систем.
Программирующий на Форте непрограммист нуждается - помимо замечательно качественного ядра и средств написания самой Форт-системы - в сколько-нибудь полноценном расширении для типовых задач. Не просто в наборе библиотек и примеров. В SP-Forth, например, огромное их количество. Мне вот нужны были всего лишь работа с COM-портом и оконный интерфейс. И пиши себе нужные вспомогательные средства, но... По применению COM-порта - только упрощенный пример, явно демонстрационного назначения. Долго и беспомощно ковыряюсь, чтобы довести до практически полезного состояния. При том, что когда-то в полном объеме знал аппаратную часть контроллера UART, но была ДОС, теперь так нельзя...
А для оконного интерфейса - хорошо описанные библиотеки, достаточно функциональные, но примеры ограниченные, и ряд первейших элементов осваиваю долго-долго. А когда уже можно применять и писать, наконец, прикладную задачу, обнаруживаю пару конфликтов с другими библиотеками, разрешить которые так и не смог, а только кое-как криво приспособился.
По случаю свежего разговора о Форте, поинтересовался информацией по давно известной мне фамилии автора Forth-PC, TCOM, Win32forth (Tom Zimmer). Обнаружил недавнее интервью. Оказывается, и этот разработчик писал Форт, главным образом, под свои нужды, и эти нужды - вспомогательные средства.
Напрашивается вывод: в микроконтроллерах Форт не столь интересен, если требуется решать только целевые для конечного изделия задачи.
0
hixir
0 / 0 / 0
Регистрация: 14.04.2013
Сообщений: 115
31.05.2013, 20:50 232
VS, с цитаткой - наврали.
0
hixir
0 / 0 / 0
Регистрация: 14.04.2013
Сообщений: 115
01.06.2013, 11:43 233
Цитата Сообщение от V S
В SP-Forth, например, огромное их количество. Мне вот нужны были всего лишь работа с COM-портом...
более семи лет использую ~\SP-Forth\divel\~diver\COMM.F, по мере необходимости допиливая под свои нужды. одна из наиболее употребимых мною "библиотек" в составе SP-Forth. никаких особых (кроме собственной мозговой лени) затруднений не испытывал.
Цитата Сообщение от V S
... и оконный интерфейс.
мне без надобности, но обычно рекомендуют ~\SP-Forth\divel\~nn\. в nnCronе - все нормально с оконным интерфейсом.

свежий Win32Forth, в котором (вроде бы) есть все-все-все...
Цитата Сообщение от V S
Напрашивается вывод: в микроконтроллерах Форт не столь интересен, если требуется решать только целевые для конечного изделия задачи.
напрашивается вывод: каждый делает выводы сам для себя.
0
vyk49
0 / 0 / 0
Регистрация: 27.05.2013
Сообщений: 9
01.06.2013, 14:24 234
Цитата Сообщение от Ymk
в общем-то на все пофиг, только ярлыки клеить не надо... кто там юзер, а кто творец... а то можно самому внезапно обклееным оказаться.
Ну вот видишь ты обиделся, а hixirу думаешь весело когда вы всей кучей наваливаетесь и долбаете ?

P.S.
не обижайся - скипуй !
Но если войдёшь в мою тему "Есть планировщик приоритетных процессов"
то увидишь что со мной было тоже самое.
Но я чек спокойный.
Вернее так стараюсь - пропустить мимо.
А если всё таки достал - ну извини...
0
hixir
0 / 0 / 0
Регистрация: 14.04.2013
Сообщений: 115
02.06.2013, 14:52 235
Цитата Сообщение от Ymk
в общем-то на все пофиг, только ярлыки клеить не надо... кто там юзер, а кто творец... а то можно самому внезапно обклееным оказаться.
на Ymkа клеили ярлык,
а он кричал - "вам всем кирдык!"
;))
0
Ymk
0 / 0 / 0
Регистрация: 18.03.2010
Сообщений: 2,233
02.06.2013, 15:10 236
Цитата Сообщение от vyk49
Ну вот видишь ты обиделся, а hixirу думаешь весело когда вы всей кучей наваливаетесь и долбаете ?
разница в том, что я (и другие "противники" форта) не кричу о том, какой инструмент лучше всех и все его непременно должны попробовать, а кто не пробовал или не понимает/не принимает - тот чмо. вот за это долбают, за дело. а навешивание выдуманных ярлыков - это что-то из другой оперы, но когда хочется "отомстить", ясен пень, все способы хороши.
0
V S
0 / 0 / 0
Регистрация: 27.12.2016
02.06.2013, 15:22 237
Цитата Сообщение от hixir
более семи лет использую ~\SP-Forth\divel\~diver\COMM.F, по мере необходимости допиливая под свои нужды. одна из наиболее употребимых мною "библиотек" в составе SP-Forth. никаких особых (кроме собственной мозговой лени) затруднений не испытывал.
Допиливал под такую простую нужду, как возможность посмотреть заполненность буферов. Не справился.
Цитата Сообщение от hixir
обычно рекомендуют ~\SP-Forth\divel\~nn\. в nnCronе - все нормально с оконным интерфейсом.
Спасибо, интересно. Только ни примера, ни описания. Исходники nnCron, наверное, помогут разобраться.
Прежде мое внимание привлек ~yz...winlib с 3 документами и 4 примерами.
Цитата Сообщение от hixir
напрашивается вывод: каждый делает выводы сам для себя.
Не без того, что и класс решаемой задачи задает условия для выводов.
Очень приблизительно, элементарное слово "очередного avrforth" обходится контроллеру в 80 тактов. Цифру для amforth сейчас не помню, она хуже. Это нормальная ситуация, поскольку реализуется полноценный 16-разрядный Форт на 8-разрядной архитектуре. Для многих микроконтроллерных задач (вслух не произношу вывод).
0
hixir
0 / 0 / 0
Регистрация: 14.04.2013
Сообщений: 115
02.06.2013, 15:26 238
Цитата Сообщение от Ymk
Цитата Сообщение от vyk49
Ну вот видишь ты обиделся, а hixirу думаешь весело когда вы всей кучей наваливаетесь и долбаете ?
разница в том, что я (и другие "противники" форта) не кричу о том, какой инструмент лучше всех и все его непременно должны попробовать, а кто не пробовал или не понимает/не принимает - тот чмо. вот за это долбают, за дело. а навешивание выдуманных ярлыков - это что-то из другой оперы, но когда хочется "отомстить", ясен пень, все способы хороши.
аргументируйте, покажите пальцем - кто и где такое говорил?
0
hixir
0 / 0 / 0
Регистрация: 14.04.2013
Сообщений: 115
02.06.2013, 15:28 239
вот чую - запах от ботинка,
всмотрелся - наступил на Ymkа
;)))
0
hixir
0 / 0 / 0
Регистрация: 14.04.2013
Сообщений: 115
02.06.2013, 15:39 240
Цитата Сообщение от V S
Исходники nnCron, наверное, помогут разобраться.
форум nnCron а активно живет (кажется).
Цитата Сообщение от V S
Очень приблизительно, элементарное слово "очередного avrforth" обходится контроллеру в 80 тактов. Цифру для amforth сейчас не помню, она хуже.
я насчитал 27 тактов у amforthа.
Цитата Сообщение от V S
Это нормальная ситуация, поскольку реализуется полноценный 16-разрядный Форт на 8-разрядной архитектуре. Для многих микроконтроллерных задач (вслух не произношу вывод).
0
02.06.2013, 15:39
Закрытая тема Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru