Dördüncü: Qəribə bir proqramlaşdırma dili. Budur Niyə Onu Sevə Bilərsiniz.

Açıqlama: Dəstəyiniz saytın işini davam etdirməyə kömək edir! Bu səhifədə tövsiyə etdiyimiz bəzi xidmətlər üçün bir müraciət haqqı qazanırıq.


Forth qeyri-adi bir dildir. Bu, ilk növbədə tərcüməçidir və real vaxt istifadə oluna bilməsi üçün əmr satırı interfeysinə malikdir. Ancaq eyni zamanda kod dəstləri götürmək və tərtib etmək qabiliyyətinə malikdir. Beləliklə, hibrid bir şeydir.

Buna görə, Forth, ənənəvi bir əməliyyat sistemi olmayan avadanlıqlarda ümumiyyətlə istifadə olunur. Həm də maşınlara nəzarət etmək üçün geniş istifadə olunur və kosmik araşdırmalarda istifadə olunur – hətta Philae, 67P / Churyumov-Gerasimenko kometasına enən zond.

Tarix

Forth 1968-ci ildə Mohasco Industries-də qrafik proqramlaşdırma edərkən Charles Moore tərəfindən hazırlanmışdır. Lakin ilk tam həyata keçirilmə 1971-ci ildə, Mur ABŞ-ın Milli Radio Astronomiya Rəsədxanasında (NRAO) 11 metrlik teleskopa nəzarət üçün müstəqil bir sistem yaratdıqdan sonra gəlmədi..

Forthun əvvəlki versiyaları proqramlaşdırma ictimaiyyətinin diqqətini çəkmişdi. Ancaq bu anda astronomiya cəmiyyətində çox məşhur oldu. Beləliklə, 1973-cü ildə Moore NRAO həmkarları Elizabeth Rather və Edward Conklin ilə birlikdə FORTH, Inc şirkətini qurdu..

Şirkət proqramı bir çox fərqli sistemə köçürdü. Və FORTH, Inc iş, akademiya və hökumətdəki insanlara Forth ilə əlaqəli məhsullar təqdim edən vacib bir şirkət olmağa davam edir.

Forth baxışı

Forth proqramlaşdırma dilinin bir sıra özünəməxsus cəhətləri var. Burada ən vaciblərini müzakirə edəcəyik.

Dörd Xüsusiyyətlər

Forth bir çox unikal xüsusiyyətləri təqdim edir:

  • İnteraktiv proqramlaşdırma

  • “Sözlər” adlanan dilin tərtib olunmuş uzantılarının yaradılması

  • Çubuqlar və tərs Polşa notası

  • İstifadəçi və aparat arasında birbaşa əlaqə.

Tərs Polşa Notası

Forth tərs Polşa Notation istifadə riyazi hesablamalar edir. Bu nömrələrin yığını içərisində saxlanmasından asılıdır.

Hesablamaya fikir verin: 2 + 3. Öncədən, bu 2-ni yığmaya, sonra 3-nü yığın üzərinə qoyub sonra əlavə etməklə ediləcəkdir. Bu kimi bir şey görünürdü: 2 3 +.

Bir az qəribə görünsə də, kompüterin analizini aparmaq daha asandır, çünki bu, kompüterlərin hesablamalar aparmaq üsuludur. Bir kodlayıcı kimi öyrəşdiyinizdən sonra bu, tamamilə təbii hala gəlir.

Bundan əlavə, parantezlərə ehtiyac yoxdur. Aşağıdakı iki nümunəyə baxaq. (Qeyd: arxa cərgə bir şərhə başlayır.)

2 3 + 5 * Bu (2 + 3) * 5 ilə eynidır
2 3 5 * + Bu 2 + 3 * 5 ilə eynidır

Birinci misalda 2, ardınca 3 yığılır. Beləliklə 2 yığında ikinci, 3-ü birincidir. “+” Operatoru yığının ilk iki elementinə tətbiq olunur. Bu, bu iki şeyi yığandan çıxarır və yığının üstünə 5 (2 + 3) qoyur.

Sonra 5-ni yığın üzərinə basırıq. Bu yığının ilk və ikinci mövqelərinə 5 qoyur. Nəhayət, 25 (5 * 5) yığının üstünə qoyulması ilə nəticələnən “*” operatorunu tətbiq edirik.

İkinci misalda, 2, 3 və 5-ni yığın üzərində yerləşdiririk ki, 5 birinci vəziyyətdə, ikincisində 3, üçüncüsü isə 2-dir. Sonra “*” operatorunu yığının üst iki hissəsinə (5 * 3) tətbiq edirik, nəticədə 15 yığının üst hissəsinə yerləşdirilir..

Bu nöqtədə 15 birinci mövqedədir, 2 ikinci vəziyyətdə. + Operatoru tətbiq edildikdə, yığını üstündə 17 (15 + 2) qoyur.

Misal Proqramı

Aşağıdakı proqram çox sadədir, ancaq dildə davam edən bir çox şeyi nümayiş etdirir.

: OUTMATH Riyazi bir hesablama çıxdı
." İndi hesablayacağıq: (2 + 3) * 5" CR
2 3 + 5 *
." Bu bərabərdir: " . CR;

OUTMAT

Bu proqramın ilk işi OUTMATH adlı bir funksiyanı təyin etməkdir. Onu izləyən xətlər nöqtəli vergül ilə bitən sətirdən yuxarıya doğru funksiyanın bir hissəsidir. Birinci sətir, “İndi hesablayacağıq: (2 + 3) * 5” mətnini yazır və araba qayıtması ilə izləyir.

Növbəti sətir yuxarıda müzakirə etdiyimiz hesablamanı həyata keçirir, nəticədə 25 yığın yığılır. Funksiyanın sonuncu sətri, “Bu bərabərdir:” ardınca yığının üstündəki dəyər (“.” İlə təmsil olunur) və bir vaqon geri dönüşü.

Sonra sadəcə funksiyanı işlədirik. Beləliklə, proqram işlədikdə nəticələr çıxır:

İndi hesablayacağıq: (2 + 3) * 5
Bu bərabərdir: 25

Öyrənmək

Əksər proqramçılar üçün bu yeni düşüncə tərzidir. Ancaq işləməyə başladıqdan sonra nə qədər təbii göründüyü təəccüblüdür. Burada dil ilə işləməyinizə imkan verən bəzi dərslər və kitablar var.

Dörd Dərsliklər

Onlayn dərslər çoxdur. Forth, Forth olmayan proqramçılar üçün eyni zamanda mövcud istifadəçilər üçün özünü açıq olduğu üçün qəribə olduğundan, dərsliklərin çoxu yeni başlayanlar üçün çaşqın ola biləcək şeylərə parıldayır. Bu dərsliklərdə bu problem yoxdur.

  • Asan qiymət: bu qısa Ebook əla girişdir. Yalnız çatışmazlığı, misallarda böyük olmamasıdır. Buna görə aşağıda göstərilən bəzi nümunələrə baxın.

  • Bir başlanğıcın dördüncü bələdçisi: bu başqa yaxşı bir tətbiqdir. Bir az daha texniki, lakin daha çox nümunə var.

  • Və Beləliklə, Dördüncü …: bu Forth üçün hərtərəfli bir girişdir – demək olar ki, bir kitab qədər yaxşıdır.

Ön kitablar

Adətən addım-addım addım ata biləcək bir kitab əldə edərək yeni bir dil öyrənmək daha asandır. Forth haqqında bir çox yaxşı kitab var – xüsusilə 1980-ci illərə təsadüf edən Forth həqiqətən yola düşdüyü zaman. Budur ən yaxşı və ən vaciblərinin toplusu.

  • Forth Discover: Ön Dili Öyrənmə və Proqramlaşdırma (1982) Thom Hogan: bu Ön Dildə yaxşı və qısa bir girişdir.

  • Başlanğıc: Leo Brodie tərəfindən başlanğıc və mütəxəssislər üçün dördüncü dil və əməliyyat sisteminə giriş (1982): bu klassik və öyrənmək üçün əla bir yoldur. Çapdan çıxıb, lakin istifadə olunan nüsxələri az pul tapmaq çətin deyil. Həm də pulsuzdur. Advanced Forth proqramçıları Brodie’nin ən yeni, Düşüncə Düşüncəsini araşdırmaq istəyə bilər.

  • Juergen Pintaske tərəfindən Forth Lite Tutorial (2014): bu nümunələrə diqqət yetirən bir yandırıcı əsaslı dərslik.

  • Problem yönümlü bir dildə proqramlaşdırma: Öncədən – Çarlz Mur tərəfindən İnternetlilərin necə işlədiyi (2014): bu, Forth yaradıcısının çoxdan yazdığı Kitabın Kindle versiyasıdır. Hələ də dilə dair aydın fikirlər təqdim edir, lakin başlamaq üçün ən yaxşı seçim deyil.

  • Elizabeth Rather və Edward Conklin tərəfindən hazırlanmış dördüncü proqramçı kitabçası: bu digər iki dördüncü pioner tərəfindən hazırlanmış daha qabaqcıl kitabdır. Rather-in kitabına baxın, Tətbiqetmə üsulları (2006).

Digər Resurslar

  • Forth Faizlər Qrupu: bu saytda köhnə tarixi sənədlər daxil olmaqla hər cür maraqlı məlumatlar var. Təəssüf ki, bunun da çox əlaqəli əlaqələri var. Ancaq hələ də yoxlamağa dəyər.

  • Ön proqramlara bağlantılar: bu bir elektron tablo və Sudoku tapmacası həlli kimi real nümunə proqramlarının əla toplusudur..

  • Forth Google Group: bu, sual verən və cavab verən çox aktiv istifadəçilər qrupudur.

  • Forth Subreddit: bu olduqca aktiv forum deyil, amma hələ də bilikli insanlar var.

Dörd tətbiqetmə

İl ərzində Forth bir çox həyata keçirilmişdir. Forth Faizlər Qrupu uzun Ön söz tərtibçiləri səhifəsinə malikdir. Buna görə qarajınızda bir PDP-11 qəbulu varsa, bunun üçün bir Örtük tərtibçisi əldə edə bilərsiniz! Ancaq daha müasir sistemlər üçün burada daha çox yayılmış variantlar var.

böyükFORTH

1980-ci illərin ortalarında Dietrich Weineck, Georg Rehfeld və Klaus Schleisiek 8086 IBM PC və 6502 Apple, Commodore və Atari maşınları kimi 16 bitli maşınlar üçün volksFORTH hazırladılar..

Nəhayət, onlar (16 bitlik avtobus) 68000 əsaslı Atari ST üçün 32 bitlik bir versiya yaratdılar. VolksFORTH irəliləyiş əldə etsə də, layihə çox öldü (sonradan yenidən işə salınmasına baxmayaraq).

Bernd Paysan bu volksFORTH (o dövrdə turboFORTH adlanır) versiyasını kifayət qədər maraqlandırdı, lakin bunu böyükFORTH-in əsasını yaratdı.

İlk versiyası Atari ST üçün 1990-cı ildə buraxıldı. 1995-ci ilə qədər bigFORTH 386-a verildi və növbəti il ​​Windows NT, OS / 2 və Linux-da mövcud oldu.

Qrafik interfeys

Bu zaman Paysan MINOS üzərində işə başladı. (Texniki olaraq, bu “MINOS” dir, lakin adətən sadəcə “MINOS” adlanır.)

Bu bigFORTH üçün qrafik interfeysdir. Bu Visual Basic kimi “Visual bigFORTH” kimi düşünmək asan ola bilər, çünki bu nəyin daha çox və ya daha az olmasıdır. İlk dəfə X-Windows sistemi üçün yaradılmışdır. Lakin tezliklə Windows üçün də mövcud oldu.

Həm bigFORTH, həm də MINOS-larda inkişaf 2010-cu ildə dayandırılmış görünür. Ancaq bunlar həm asanlıqla mövcuddur, həm də olduqca faydalıdır (bigFORTH ANSI-ə uyğundur). Əslində, MINOS ilə oynamaq çox əyləncəlidir.

bigFORTH mənbələri

BigFORTH istifadə etmək və ya hətta inkişaf etdirmək istəyirsinizsə, lazım olan bütün vasitələrə sahib olacaqsınız:

  • Mənbə kodu: bu 22 mart 2010-cu il tarixli, rəsmi 2.4 versiyasındakı son rəsmi açıqlamadır.

  • Debian Paketi: Debian əsaslı Linux paylanması üçün asanlıqla quraşdırılmış paket (məsələn, Ubuntu, Mint). Bu / usr / local / bin-də quraşdırılır və xbigforth adlandırılmasına baxmayaraq MINOS daxildir.

  • Öz-özünə quraşdırılmış Windows: Debian paketi ilə eyni, ancaq Windows üçün. MINOS hətta xbigforth.exe adlanır.

  • Sənədləşmə (PDF): bu təxminən 300 səhifəlik kitab, JL Bezemer tərəfindən yazılmış bir təlimat və arayış rolunu oynayır. Bunun çoxu ümumi qiymətə aiddir və “Və beləliklə …” götürülmüşdür.

  • Bernd Paysan’ın ana səhifəsi: bu səhifədə bir çox maraqlı məlumat və nümunələr var. Xüsusi qeyd Paysan’ın Forth-based işarə dilidir.

  • bigFORTH depo: bütün böyük FORTH ehtiyaclarınız üçün son təyinat.

Gforth

Gforth Forth GNU tətbiqidir. Fərqli bir damazlıq var.

Gforth layihəsi 1992-ci ildə bigFORTH yaradıcısı Bernd Paysan və Anton Ertl tərəfindən Jens Wilke tərəfindən əhəmiyyətli töhfələr verilərək başlandı.

Bu bigFORTH və daha köhnə əncir-FORTH (aşağıya baxın) birləşməsi idi. Lakin bu, bükülmüşdür, çünki böyükFORTH əncir-FORTH əsaslanan volksFORTH-dən gəldi..

GNU layihəsi olaraq, başladığı gündən bəri bunun üzərində çox böyük işlər görülmüşdür. İndi tamamilə ANSI-ə uyğundur və bütün orijinal məqsədlərinə çatmışdır. Ən son versiya 0.7.3, son giriş (Paysan tərəfindən) 25 Fevral 2013 tarixində.

Pulsuz Forth tətbiqetmələri baxımından Gforth ən çox istifadə olunur. Bunun bir hissəsi yalnız GNU layihəsinin bir hissəsi və mövcudluğu ilə əlaqədardır. Həm də güclü və sürətli olduğuna görə.

Gforth Resursları

Gforth, ehtiyac duyduğunuz hər şeyi istifadəyə verə biləcəyiniz bütün mənbələrə malikdir:

  • Mənbə kodu: bu səhifə Gforth mənbə kodunu 0.2.1 versiyasından 0.7.3-dək versiya ilə təmin edir.

  • Debian paketləri: Debian Linux paylanması üçün müxtəlif paketlər mövcuddur. Qeyd etdiyiniz paketdən asılı olaraq əvvəlcə bir və ya daha çox digər paketin quraşdırılması lazım ola bilər.

  • Öz-özünə quraşdırılmış Windows: bu Gforth-un daha əvvəl (0.7.0) versiyasıdır, lakin işə başlamaq üçün sürətli bir yoldur.

  • Sənədləşmə (PDF): bu 250 səhifəlik kitab Gforth-un 0.7.0 versiyasına aiddir. HTML formatında da mövcuddur.

  • Gforth Depozitari: Gforth ilə əlaqəli çox şey burada tapa bilərsiniz.

pbForth

pbForth artıq dəstəklənmir görünür, lakin Forth-in bu qədər maraqlı bir həyata keçirilməsini yoxlamaq lazımdır.

Müzakirə etdiyimiz kimi, Forth həmişə hardware nəzarəti ilə əlaqələndirilib. Beləliklə, LEGO MINDSTORMS robototexnika dəsti üçün Forth tətbiqinin hazırlanması təəccüblü deyildi, xüsusən 1998-ci ildə çıxarılan 16 bitli RCX.

İkinci nəsil, 2006-cı ildə çıxan NXT seriyası və ya 2013-cü ildə çıxan hazırkı MV3 ilə işləmək üçün heç vaxt yenilənməmiş kimi görünür..

PbForth üçün rəsmi sayt olmasa da, hələ də bu barədə məlumat əldə etmək və istifadə etmək mümkündür. Bununla birlikdə, dik öyrənmə əyrisi ola bilər, çünki bu qədər məlumat yoxdur. LEGO MINDSTORMS RCX-a ehtiyac duyacaqsınız (istifadə etmək çətin deyil).

NXT tamamilə fərqli (və 32 bit) prosessor istifadə edir, buna görə pbForth əlbəttə ki, onunla işləməyəcəkdir. Yenə də əyləncəli ola bilər. Əgər özünüzə uyğun olsanız, onu ikinci və üçüncü nəsil dəstlərinə portativ edə bilərsiniz.

pbForth Resurslar

Normal internetdə mövcud olan məlumatlar ümumiyyətlə terse və həmişə ən azı 2010-cu ildən bəri fəaliyyət göstərməyən pbForth Ana Səhifə səhifəsinə bağlanır. Bunun yalnız çoxu İnternet Arxivi sayəsində mümkündür.

  • LEGO Robotics tarixi: pbForth haqqında olmasa da, LEGO MINDSTORMS məhsullarına qısa bir baxış təqdim edir.

  • PbForth-a giriş
    (PDF): bu 30 səhifəlik təlim sizə dil ilə başlayacaqdır.

  • phForth Mənbə Kodu
    : unutmayın ki, pbForth montaj dili və Tcl ilə yazılmışdır, buna görə də bu vasitələrin mövcud olmasına ehtiyac olacaq.

  • Windows GUI
    : bu fayl işə düşür, baxmayaraq ki, hər şeyi etmək daha çətin ola bilər. Linux və ya Mac üçün pbForth istəyirsinizsə, mənbə kodu istifadə etməlisiniz.

  • phForth Ana Səhifə Ətrafı 2009
    : bu səhifə pbForth haqqında olduqca maraqlı məlumatlara, ən əsası yarımdan çox nümunə skriptinə link təqdim edir.

Digər tətbiqlər

  • fig-FORTH: Bu Forth Faizlər Qrupu tərəfindən yaradılan ən erkən dördüncü tətbiqlərdən biri idi. 16 bitlik bir tətbiqdir. Data General Eclipse və Alpha Micro kimi bəzi gözəl köhnə kompüterlər, həmçinin 8086 və 6502 əsaslı kompüterlər üçün əlçatandır. Problem, icra edilə bilən sənədlərin olmamasıdır – sadəcə montaj dili kodu. Və əksər hallarda, yalnız kodun bitmap PDF sənədləri. Faktiki kod yalnız 8088/8086, PDP-11 və 6800 üçün mövcuddur. (6800 8 bitlik bir prosessordur. Görünür, 8-bitlik bir versiya var idi-FORTH.)

  • SP-Forth: bu Windows və Linux üçün ödənişsiz bir tətbiqdir.

  • 4tH: bu, geniş çeşidli hardware (Moruq Pi daxil olmaqla) üçün əlverişli və yaxşı sənədləri ehtiva edən asan tətbiqdir.

  • SwiftForth ™: dünyaya Forth gətirən orijinal şirkətin Forth tərtibçisi. Kommersiya məhsuludur, lakin əsaslı qiymətə malikdir.

Xülasə

Forth maraqlı və inanılmaz dərəcədə faydalı bir proqramlaşdırma dilidir. Xüsusi olaraq cihazı idarə etmək istəyirsinizsə. Buradakı mənbələrdən istifadə edərək, yolunuza davam etməlisiniz.

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map