GNU Smalltalk ay isang pagpapatupad na malapit na sumusunod sa Smalltalk-80 na wika tulad ng inilarawan sa aklat Smalltalk-80: ang Wika at nito Pagpapatupad ng Adele Goldberg at David Robson, na kung saan ay simula dito-refer sa bilang ang Blue Book.
Smalltalk programming language ay isang object oriented programming language. Ang ibig sabihin nito, para sa isang bagay, na kapag programming ikaw ay iisip ng hindi lamang ang mga data na naglalaman ng isang bagay, kundi pati na rin ng mga operasyon na makukuha sa bagay na iyon.
Representasyon ng data ng mga kakayahan ng mga bagay at ang mga operasyon na makukuha sa object ay "hindi mapaghihiwalay"; ang hanay ng mga bagay-bagay na maaari mong gawin sa isang bagay ay tinukoy mismo sa pamamagitan ng mga hanay ng mga operasyon, na tawag Smalltalk pamamaraan, na magagamit para sa object na iyon: ang bawat bagay ay kabilang sa isang klase (a datatype at ang hanay ng mga function na gumana sa mga ito ) o, mas mahusay, ito ay isang halimbawa ng klase.
Hindi mo maaaring kahit na suriin ang mga nilalaman ng isang bagay mula sa labas - sa isang tagalabas, ang bagay ay isang itim na kahon na may mga magagamit na sa ilang mga estado at ilang mga operasyon, ngunit na ang lahat ng alam mo: kung nais mong magsagawa ng operasyon sa isang bagay, Maaari ka lamang magpadala ng isang mensahe, at ang mga bagay na Picks up ang mga paraan na tumutukoy sa mensaheng iyon.
Sa wika Smalltalk, ang lahat ng bagay ay isang bagay. Kabilang dito ang hindi lamang ang mga numero at ang lahat ng mga istruktura ng data, ngunit kahit na mga klase, mga pamamaraan, mga piraso ng code sa loob ng isang paraan (bloke o pagsasara), stack frame (konteksto), atbp Kahit na at habang istruktura ay ipinatupad bilang pamamaraan na ipinadala sa mga partikular na bagay.
Hindi tulad ng iba pang mga Smalltalks (kabilang Smalltalk-80), GNU Smalltalk diin Nagtatampok mabilis prototyping Smalltalk halip na ang graphical at madaling-gamitin na mga katangian ng kapaligiran programming (alam mo na ang unang GUIs kailanman tumakbo sa ilalim Smalltalk?).
Ang availability ng isang malaking katawan ng mga klase ng sistema, sa sandaling ikaw master ang mga ito, gumagawa ng mga ito ay medyo madali upang isulat ang complex programs kung saan ay karaniwang isang gawain para sa mga kaya tinatawag na mga wika scripting. Kaya, kahit na kami ay may isang magandang GUI kapaligiran kasama ang isang klase ng browser, ang layunin ng mga proyektong GNU Smalltalk ay kasalukuyang upang makabuo ng isang kumpletong sistema na ginagamit upang isulat ang iyong mga script sa isang malinaw, aesthetically nakakawili, at philosophically apela programming language.
Installling:
Ang unang bagay na dapat gawin upang magtala ng GNU Smalltalk ay upang isaayos ang mga programa, ang paglikha ng mga makefiles at isang `gstconf.h ', na naglalaman ng mga hula sa peculiarities ng system. Configuration na ito ay awtomatikong ginagawa sa pamamagitan ng `configure 'shell script; upang patakbuhin ito, i-type lamang sa:
./configure
Options na maaari mong ipasa upang isaayos isama --disable-dld, na kung saan precludes Smalltalk mga programa mula sa mga dynamic na pag-uugnay sa mga aklatan at run-time.
Matapos mong na-configure GNU Smalltalk, maaari mong ilista ang mga sistema sa pamamagitan ng pag-type:
gumawa
Smalltalk dapat ilista at link na walang error. Kung ipon napupunta mali maaari mong suriin ang mga utos na ginamit upang ilunsad ang compiler. Halimbawa, siguraduhin na suriin kung ang iyong mga compiler ay may extension na, kung hindi pinagana, hindi ito Ansi compatible. Kung ito ang kaso, uri
gumawa distclean
CFLAGS = kinakailangan command-line flag
at subukan muli ang proseso / gumawa configure. Sa napaka-partikular na mga kaso, maaaring makaligtaan ang configure script sa harapan ng isang header na file o isang function sa iyong system. Maaari mong patch ang config.cache 'file `nilikha sa pamamagitan ng proseso configure. Halimbawa, kung i-configure ay hindi mahanap ang iyong `header file unistd.h ', baguhin ang mga linya ng pagbabasa
ac_cv_header_unistd_h = $ {ac_cv_header_unistd_h = 'hindi'}
sa
ac_cv_header_unistd_h = $ {ac_cv_header_unistd_h = 'oo'}
at, muli, muling subukan ang proseso / gumawa configure.
Ang huling linya ng mga gumawa output ay dapat na tulad nito:
export SMALLTALK_KERNEL = `cd ./kernel; pwd`;
./gst -iQ dummy_file
gumawa ng [2]: Aalis direktoryo `/ home / Utente / devel-GST '
gumawa ng [1]: Aalis direktoryo `/ home / Utente / devel-GST '
Sa puntong ito, mayroon kang gumaganang GNU Smalltalk. Congratulations !!!
Ikaw ay nais din sa tindahan ang Smalltalk pinagkukunan at lumikha ng mga file ng imahe sa tamang lugar (ang file ng imahe na naglalaman ng isang buong snapshot ng ang katayuan ng sistema). Ito ay awtomatikong ginagawa kapag ginawa mo ng isang gumawa install. Tinutukoy --enable-modules bilang isang opsyon upang isaayos load Smalltalk pakete sa awtomatikong nai-install image. Halimbawa
./configure --enable-modules = Blox, TCP
ay lumikha ng isang imahe na may Blox user interface toolkit at ang TCP abstraction library built-in.
Narito ang ilang mga pangunahing katangian ng "GNU Smalltalk":
Mga detalye ng Software:
Bersyon: 3.2.4
I-upload ang petsa: 11 May 15
Lisensya: Libre
Katanyagan: 66
Mga Komento hindi natagpuan