Easyelectronics.ru

Электроника для всех
Текущее время: 23 янв 2021, 00:14

Часовой пояс: UTC + 5 часов



JLCPCB – Прототипы печатных плат за $2/5шт. два слоя. $5/5шт. четыре слоя
Крупнейший производитель печатных плат и прототипов. Более 600000 клиентов и свыше 10000 заказов в день!
Получите скидку на почтовую отправку при первом заказе в JLCPCB!

Начать новую тему Ответить на тему  [ Сообщений: 335 ]  На страницу 1, 2, 3, 4, 5 ... 14  След.
Автор Сообщение
 Заголовок сообщения: amForth
СообщениеДобавлено: 19 апр 2013, 10:03 
Заглядывает иногда

Зарегистрирован: 19 апр 2013, 09:55
Сообщения: 135
Код:
> amforth 5.1 ATmega32A 16000 kHz
reset 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_RAM_LAST RTC_RAM
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-loadblock twi.ee-save
block #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.start twi.wait 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 2constant =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! wait_high wait_low is_high? is_low? pulse low high
portpin: bitmask: SPM_RDYAddr TWIAddr ANA_COMPAddr EE_RDYAddr ADCAddr USART__TXC
Addr USART__UDREAddr USART__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_BLBSET 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_ADEN 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 multitaskpause 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 definitions previous set-current nfa
>lfa compare get-order get-current !e[] @e[] environment end-code code abort abo
rt" [char] immediate recurse user constant 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 and 2* 2/ invert um* um/
mod m* + - log2 d< d> 0> u> u< true 0 0< > < 0= = <> r@ >r r> nip -rot rot drop
over swap ?dup dup !u @u c@ c! ! @ (value) execute exit .s ." s" ms 1ms dinvert
d- d+ d2* init-user ee>ram ee-user source-tib refill-tib tib 2swap d2/ cmove dne
gate dabs d>s j * icompare search-wordlist defer@ defer! to value unused noop ve
r ?stack rec-notfound rec-find rec-intnum interpret depth rp0 sp sp0 warm cold r
stf pause quit find-name parse-name /string source cscan parse >number number ch
ar refill accept cskip throw catch handler ' type spaces space cr icount itype s
, u>= u<= digit? ud/mod u0.r ud.r ud. u. . d. .r d.r sign #> #s # <# hold hld to
lower toupper within max min abs mod / negate u/mod */ /mod */mod turnkey bl hex
decimal bin ['] , compile ( \ 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.reset +usart ubrr tx?-poll tx-poll rx?-isr rx-isr  ok
> .res
amforth 5.1 ATmega32A running at 16000 kHz
free FLASH cells        9591
free RAM bytes          1727
used EEPROM bytes       94
used data stack cells   0
used return stack cells 11
free return stack cells 29
ok
>


Вложения:
Комментарий к файлу: "жырная" пршивка
m32A-16MHz-v51.zip [21.21 Кб]
Скачиваний: 380
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: amForth
СообщениеДобавлено: 19 апр 2013, 11:25 
Заглядывает иногда
Аватара пользователя

Зарегистрирован: 05 сен 2012, 12:00
Сообщения: 138
Откуда: МО, Солнечногорск
йопт. Что это и зачем оно?..

_________________
Даже если сложить в одну кучу поле капусты, все равно коллективного разума не получится.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: amForth
СообщениеДобавлено: 19 апр 2013, 11:55 
Супермодератор
Аватара пользователя

Зарегистрирован: 26 янв 2010, 22:08
Сообщения: 7549
Откуда: Алма-ата
madmazy писал(а):
йопт. Что это и зачем оно?..

Программа на FORT.
Великом и ужасном. Выворачивающим мозги наизнанку. Горячо любимом теми, у кого они вывернуты от рождения (минус на минус дает плюс !).


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: amForth
СообщениеДобавлено: 19 апр 2013, 12:41 
Старожил

Зарегистрирован: 15 янв 2013, 13:24
Сообщения: 5665
SWG писал(а):
madmazy писал(а):
йопт. Что это и зачем оно?..

Программа на FORT.
Великом и ужасном. Выворачивающим мозги наизнанку. Горячо любимом теми, у кого они вывернуты от рождения (минус на минус дает плюс !).
Ну, в незаспойленном фрагменте кода - не программа, а вывод команды "words", которая перечисляет все ключевые слова языка :-) Чтобы продемонстрировать мощь (или немощь) данной реализации Форта. Этот довольно мощный. Но автор темы не сказал, как этим счастьем пользоваться: интерфейсы общения с прошитым AVR какие? Например, три кнопки на таких-то пинах плюс LCD_1602 на таких-то пинах?

BTW, приложенная "жирная прошивка" сгенерирована как-то криво: половину кода в середине HEX занимает массив из байтов 0xFF.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: amForth
СообщениеДобавлено: 19 апр 2013, 16:02 
Заглядывает иногда

Зарегистрирован: 19 апр 2013, 09:55
Сообщения: 135
AlexPM писал(а):
Но автор темы не сказал, как этим счастьем пользоваться: интерфейсы общения с прошитым AVR какие?

виноват, торопился. параметры терминала 9600,8,n,1. терминал - любой ( у меня - Hyper Terminal )
посмотреть примеры можно тут .
нормально сгенерировано. интересующиеся пусть изучают матчасть
marker 'ы обозначены так =слово=
ЗЫ привет MrYuran, эта апять я ;)


Последний раз редактировалось hexer 19 апр 2013, 16:18, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: amForth
СообщениеДобавлено: 19 апр 2013, 16:15 
Старожил
Аватара пользователя

Зарегистрирован: 27 янв 2012, 17:24
Сообщения: 525
SWG писал(а):
Программа на FORT.

Не программа, а вывод словаря.
И не FORT, а FORTH


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: amForth
СообщениеДобавлено: 19 апр 2013, 16:41 
Старожил

Зарегистрирован: 15 янв 2013, 13:24
Сообщения: 5665
hexer писал(а):
нормально сгенерировано. интересующиеся пусть изучают матчасть
Зачем, думаете, в формате .HEX адрес в начале каждой строки? Уж точно не для того, чтобы включать в файл большой ненужный кусок. Можно, конечно и такой hex шить в AVR, только дольше. Отсюда и вывод: сгенерировано примитивным наколенным конвертором. Ничего криминального в этом нет :-)
Форт этот посмотрю, в детстве "мозги были вывернуты" на него, даже переписывал под свою машинку. Nostalgie...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: amForth
СообщениеДобавлено: 19 апр 2013, 16:51 
Супермодератор
Аватара пользователя

Зарегистрирован: 26 янв 2010, 22:08
Сообщения: 7549
Откуда: Алма-ата
MrYuran писал(а):
Не программа, а вывод словаря.

Сама программа с использованием этого словаря будет выглядеть не намного лучше.
Разве что на строчки поделится. Да и вообще - весь Форт (его интерпретатор) обычно сам написан на Форте...
Цитата:
И не FORT, а FORTH

Да мне без разницы. В аглицком я не силен, а кому надо - поймут.
Вообще же его создатель, Чарльз Мур, разрабатывая этот язык для конкретной задачи - управления телескопом, хотел назвать его FOURTH ("Четвертый"), по каким - то своим соображениям. Наверное, первые 3 попытки оказались неудачными...

Но ЭВМ, на которой он его писал, принимала символьные переменные только до 5 букв. Поэтому название было обрублено до 5х букв - FORTH. Но в литературе 80х годов (а именно тогда я с ним и знакомился, были у меня готовые интерпретаторы Форт для "Микроши" - совместимый также с Микро-80, и для "Корвета" - под системы CP/M-80 и МикроДОС) - встречались и названия FORTH, и FORT. Как и русское - Форт. Поскольку я в школе учил немецкий, часто по привычке пишу как бы русское название латинскими буквами, сохраняя звучание. По аглицки же - пишут одно, читают - совсем другое...

У меня и сейчас валяется куча книг по Форту, но душа моя его не приемлет.
Хотя, например, на программируемых калькуляторах Б3-21 и Б3-34, где используется "обратная польская нотация", похожая чем - то на Форт, (тоже все наизнанку - вводятся сначала числа, потом действия над ними, по стековому принципу), работал всегда без проблем, и программки разные для них писал, пока компа у меня еще не было (до 84 года)...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: amForth
СообщениеДобавлено: 19 апр 2013, 17:04 
Старожил

Зарегистрирован: 15 янв 2013, 13:24
Сообщения: 5665
SWG писал(а):
Хотя, например, на программируемых калькуляторах Б3-21 и Б3-34, где используется "обратная польская нотация", похожая чем - то на Форт, (тоже все наизнанку - вводятся сначала чмсла, потом действия над ними, по стековому принципу), работал всегда без проблем, и программки разные для них писал, пока компа у меня еще не было (до 84 года)...
Даже на J2ME были мидлеты для телефонов - калькуляторы с RPN ("обратная польская нотация"). И находились-таки энтузиасты, кто это скачивал и пользовался.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: amForth
СообщениеДобавлено: 19 апр 2013, 17:25 
Супермодератор
Аватара пользователя

Зарегистрирован: 26 янв 2010, 22:08
Сообщения: 7549
Откуда: Алма-ата
AlexPM писал(а):
Даже на J2ME были мидлеты для телефонов - калькуляторы с RPN ("обратная польская нотация"). И находились-таки энтузиасты, кто это скачивал и пользовался.

Да там довольно быстро привыкаешь. Все-таки калькулятор - устройство простое, и действий там было немного. Максимальная длина программ у Б3-21 и Б3-34 была кажется 64 и 80 шагов (команд или чисел).

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

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

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: amForth
СообщениеДобавлено: 19 апр 2013, 17:36 
Старожил
Аватара пользователя

Зарегистрирован: 27 янв 2012, 17:24
Сообщения: 525
SWG писал(а):
Чарльз Мур, разрабатывая этот язык для конкретной задачи - управления телескопом, хотел назвать назвать его FOURTH ("Четвертый"), по каким - то своим соображениям. Наверное, первые 3 попытки оказались неудачными...

Естественно.
Первые три попытки назывались бейсик, фортран и паскаль
:)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: amForth
СообщениеДобавлено: 19 апр 2013, 17:43 
Старожил
Аватара пользователя

Зарегистрирован: 26 янв 2010, 21:55
Сообщения: 5576
Откуда: Уругвайская АССР
SWG писал(а):
Чарльз Мур, разрабатывая этот язык для конкретной задачи - управления телескопом, хотел назвать назвать его FOURTH ("Четвертый"), по каким - то своим соображениям. Наверное, первые 3 попытки оказались неудачными...
MrYuran писал(а):
Естественно.
Первые три попытки назывались бейсик, фортран и паскаль
:)

Вы уели SWG, он страсный поклонник паскаля.
Хотя, мне кажется (в гугль лезть лениво), что первые три попытки были бейском, сями и фортраном.

_________________
Без гнева и жестокости, сегодня Смерть взмахнёт косой, и ангел тайными дорогами мой милый Кубик унесёт с собой.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: amForth
СообщениеДобавлено: 19 апр 2013, 18:21 
Заглядывает иногда

Зарегистрирован: 19 апр 2013, 09:55
Сообщения: 135
AlexPM писал(а):
hexer писал(а):
нормально сгенерировано. интересующиеся пусть изучают матчасть
Зачем, думаете, в формате .HEX адрес в начале каждой строки? Уж точно не для того, чтобы включать в файл большой ненужный кусок. Можно, конечно и такой hex шить в AVR, только дольше. Отсюда и вывод: сгенерировано примитивным наколенным конвертором. Ничего криминального в этом нет :-)
Форт этот посмотрю, в детстве "мозги были вывернуты" на него, даже переписывал под свою машинку. Nostalgie...

все компилирующие слова ядра размещены в области памяти NRWW
Цитата:
core\dict_core.inc
This file lists all amforth words that will be included in that part of amforth's dictionary stored in high
flash memory (also known as the bootloader area or NRWW flash)..

а наколенный конвертер - это AVR Studio? могу приложить файл листинга из-под нее. надо?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: amForth
СообщениеДобавлено: 19 апр 2013, 18:29 
Заглядывает иногда

Зарегистрирован: 19 апр 2013, 09:55
Сообщения: 135
SWG писал(а):
Вообще же его создатель, Чарльз Мур, разрабатывая этот язык для конкретной задачи - управления телескопом, хотел назвать назвать его FOURTH ("Четвертый"), по каким - то своим соображениям. Наверное, первые 3 попытки оказались неудачными...

не только крутил моторчиками, но и осуществлял сбор и предварительную обработку данных.
четвертый - потому, что Чак Мур считал его языком четвертого поколения, а те, которые были на тот момент, он считал
языками третьего поколения. с тех пор ничего не изменилось.
SWG писал(а):
тоже все наизнанку

с какой стороны посмотреть


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: amForth
СообщениеДобавлено: 19 апр 2013, 18:36 
Заглядывает иногда

Зарегистрирован: 19 апр 2013, 09:55
Сообщения: 135
SWG писал(а):
Да мне без разницы.

...душа моя его не приемлет.

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

пожалуйста, заведите новую тему с топиком "Форт-не нужен!" и пишите свои сообщения туда.
извините.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: amForth
СообщениеДобавлено: 19 апр 2013, 18:39 
Заглядывает иногда

Зарегистрирован: 19 апр 2013, 09:55
Сообщения: 135
Горнист писал(а):
что первые три попытки были бейском, сями и фортраном.

так и было - фортран, си, бейсик.
и тут обратный порядок следования аргументов ;)
на самом деле -
1 программирование в машинных кодах
2 программирование в символах ( мнемоники машинных команд - ассемблер )
3 языки высокого уровня


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: amForth
СообщениеДобавлено: 19 апр 2013, 19:07 
Старожил
Аватара пользователя

Зарегистрирован: 18 фев 2010, 14:42
Сообщения: 1153
Откуда: Лондон
А я всю жизнь думал, что Си придумал Ритчи


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: amForth
СообщениеДобавлено: 19 апр 2013, 19:10 
Старожил

Зарегистрирован: 19 мар 2013, 19:37
Сообщения: 2900
Откуда: Санкт-Петербург
SWG писал(а):
А - тем более, когда вместо привычных уже в языках высокого уровня набора стандартных операторов для организации циклов, ветвлений, и обработки данных, имеешь некий набор слов, на базе которых наддо создавать новые слова, которые потом используются в тексте программы, или для создания опять новых слов, да еще и порядок выполнения необычный, а набор основных базовых операций языка - это конструкции типа "Положить на стек", "Взять верхний элемент стека", "обменять местами два верхних значения стека", и даже простая точка - не просто точка, а целый оператор, - тут у кого хочешь крыша поедет.

Да ну, фигня какая. Форт практически не вводит новых непривычных концепций, освоиться и привыкнуть к обратной польской записи - недолго. Ничего от него не поедет - простой язык. Правда, и пользы на сегодняшний день немного: язык не типизирован, а экономия размера кода (шитый код весьма компактен, да ещё двухстэковая архитектура позволяет изрядно упростить код) на сегод

Вот Хаскель какой - куда труднее в голове укладывается, несмотря на привычный порядок операций. Но его, наверное, на микроконтроллеры нет. А вот Лисп наверняка есть.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: amForth
СообщениеДобавлено: 19 апр 2013, 22:25 
Старожил
Аватара пользователя

Зарегистрирован: 17 мар 2011, 21:06
Сообщения: 682
Откуда: /ukraine/uman
cahbtexhuk писал(а):
А я всю жизнь думал, что Си придумал Ритчи

Ну и Брайан его за руку держал в этот момент :) Так вроде не пишут, что придумал их Мур, а пронумеровал просто так, уже имеющиеся были первыми тремя.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: amForth
СообщениеДобавлено: 20 апр 2013, 00:28 
Старожил

Зарегистрирован: 22 мар 2010, 22:54
Сообщения: 3995
aamonster писал(а):
Форт практически не вводит новых непривычных концепций, освоиться и привыкнуть к обратной польской записи - недолго. Ничего от него не поедет - простой язык.
что-то типа переносимого ассемблера, со всеми вытекающими свойствами. для любителей задротства и старины. но к большому сожалению, до сих пор встречается даже в пром. автоматике на заводах. приятного в этом очень мало.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: amForth
СообщениеДобавлено: 20 апр 2013, 01:25 
Супермодератор
Аватара пользователя

Зарегистрирован: 26 янв 2010, 22:08
Сообщения: 7549
Откуда: Алма-ата
desolator писал(а):
cahbtexhuk писал(а):
А я всю жизнь думал, что Си придумал Ритчи

Ну и Брайан его за руку держал в этот момент :) Так вроде не пишут, что придумал их Мур, а пронумеровал просто так, уже имеющиеся были первыми тремя.

Кроме Фортрана, C, и Бэйсика, до Форта была еще целая куча языков. Напрммер, Алгол, Кобол, PL-I, широко использовавшиеся еще в 60х годах.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: amForth
СообщениеДобавлено: 20 апр 2013, 01:40 
Старожил

Зарегистрирован: 19 мар 2013, 19:37
Сообщения: 2900
Откуда: Санкт-Петербург
Ink писал(а):
что-то типа переносимого ассемблера, со всеми вытекающими свойствами. для любителей задротства и старины. но к большому сожалению, до сих пор встречается даже в пром. автоматике на заводах. приятного в этом очень мало.

Если кто-то не в состоянии выучить второй язык - это его проблемы.
Форт прост. Гораздо проще си и вменяемей, чем плюсы.
Форт-система (считай, операционка + интерпретатор + компилятор) занимает несколько килобайт. Так что если кросс-компиляция почему-то неудобна - применение форта оправдано. Так что если вам где-то дали форт - это повод порадоваться, что дали форт, а не заставили писать в машинных кодах.

Но форт практически вымер. Неудивительно - задач для него почти не осталось.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: amForth
СообщениеДобавлено: 20 апр 2013, 02:20 
Старожил

Зарегистрирован: 22 мар 2010, 22:54
Сообщения: 3995
aamonster писал(а):
Если кто-то не в состоянии выучить второй язык - это его проблемы.
о чем речь, братец? при чем тут второй язык? я знаю и использую намного больше двух языков, среди них несколько ассемблеров (2.5 из которых я знаю оочень хорошо), больше 5 ЯВУ. не считаю еще синтаксисы всяких башей, sqlей, верилогов, кубики FBD, и + еще кучи языков, с которыми есть очень маленький опыт, но догнаться в них можно очень быстро.

и при всем при этом я заявляю свое имхо: форт - далек от нормального удобного инструмента для программинга. не стоит он пускания слюней.
aamonster писал(а):
Форт прост. Гораздо проще си и вменяемей, чем плюсы.
ровно на столько, на сколько асм проще си и вменяемее плюсов. у него в наличии большинство свойств ассемблера, даже процесс составления программы очень напоминает составление программы на асме. если же вы будете утверждать, что лучше асма (не считая форта, конечно:)) языка нет - флаг вам в руки и давайдосвиданья:)

я, конечно, не ас форта, но реверсить не очень мелкий чужой код очень даже приходилось, соответственно и во всю эту кухню тоже вникал. так вот мое имхо такое: приятного мало. мне как-то даже незнакомые ассемблеры милее, если сравнивать.
aamonster писал(а):
Так что если вам где-то дали форт - это повод порадоваться, что дали форт, а не заставили писать в машинных кодах.
если ты фанат форта - безусловно, повезло! а если же нет, даже незнакомый асм попривычнее будет.

чес-слово, имея представления о форте, я бы выбрал писать на незнакомом асме, если было бы только 2 выбора.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: amForth
СообщениеДобавлено: 20 апр 2013, 03:58 
Старожил

Зарегистрирован: 29 янв 2012, 05:41
Сообщения: 748
Откуда: г. Орел
Холивар, холивар!!! Вы только на личности не переходите. ;)

IMHO, форт как язык является чем то средним между ассемблером и ЯВУ. Выучить основы форта несложно. Весь процесс изучения займет не более 8-16 часов. Но вот писать на нем что-то достаточно большое сложно. Ибо провести рефакторинг кода бывает не просто сложно, а вообще не возможно. Опять же, этот язык слишком привязан не только к архитектуре железа, но и к базовой системе самого форта. Расширяемость же языка является как его плюсом, так и его минусом. В конечном итоге язык словарь (и соответственно стиль программирования) становится слишком привязан к индивидуальным предпочтениям программиста.
Да, синтаксис форта своеобразен, но он ни в какое сравнение не идет с читабельностью программы на свинке M (он же mumps) записанной в сокращенной форме :). Но мощь языка позволяет довести стиль программирования до стиля свинки.

ЗЫ. А хоронить форт рано. Реализовать форт-процессор на аппаратном уровне сможет любой студент на плисине. Да и чисто программная форт-система под любую архитектуру пишется за пару дней. Поэтому он всегда найдет куда приткнуться.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: amForth
СообщениеДобавлено: 21 апр 2013, 23:59 
Заглядывает иногда

Зарегистрирован: 19 апр 2013, 09:55
Сообщения: 135
вот не смог удержаться, цитата с другого форума
Цитата:
О_О с чего вы взяли? Форт для меня очень актуален еще с тех пор когда я, пардоньте, пешком под стол ходил. И остается актуален сейчас. Все свои проекты я выполняю на форт-процессора Хищника. В настоящий момент уже почти готова автономная беспилотная лодка которая должна будет проплыть весь Атлантический океан, и работает она на форт-процессоре. Так что вы меня немножко задеваете Вашей фразой. Так сказать, прежде чем судить нужно сначала узнать что к чему.

под последней фразой цитируемого подписываюсь безоговорочно.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 335 ]  На страницу 1, 2, 3, 4, 5 ... 14  След.


Часовой пояс: UTC + 5 часов


Кто сейчас на конференции

Сейчас этот форум просматривают: ILYAUL


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB