smalltalk

9 отговора 304 прегледа
#1

smalltalk

am ne znam dali zvu4i mnogo umno, ama vse pak mi e mnogo interesno ima li tuka nqkoi koito programira na smalltalk. I izob6to, 4uval sm 4e toq ezik bil mnogo dobyr, a kato gledam mai po4ti nikoi ne go polzva. Prosto taka, nqkoi moje li da kaje ne6to pove4e za nego i struva li si 4ovek da go probva?



It`s more fun to compute

Отговор
в отговор на voyager #2

Re: smalltalk

Преди време чух за едни немци които търсеха хора да пишат на SmallTalk-80 за някакъв си проект и ми стана интересно. Не разбрах каква е точно работата. Значи има все още хора, които се интересуват от SmallTalk, и то за бизнес цели.

Според мен, неудобството в него е, че като направиш програма трябва да даваш на клиента самия интерпретатор плюс целия му Image. Поне така е за класическия SmallTalk-80. Не може просто да получиш някакво EXE.

Сигурно ти е известно, когато преди години в PARC са го направили, отначало SmallTalk-80 е бил пускан на гол компютър без никаква ОС. Бил e специален компютър, чийто процесор е имал микро-програмиранe, което са ползвали за да изпрограмират инструкцийте на байт-кода на SmallTolk-80 директно. На SmallTalk-80 не му е нужна никаква ОС, понеже самия той си е един малък Windows!
Все едно някой днес да построи Java компютър в който процесора да има инструкции съответни на псевдо-кода му.

Според мен SmallTalk-80 е вече минало, въпреки че е езика дал началото на OOP. Не ми е много известно да се ползва в практиката. Даже никога май не се е ползвал масово.

Има един "Objective C", който се появява преди C++ но след SmallTalk-80 и който в същност е една библиотека на C, копие на библиотеката на SmallTalk-80. Допълнително има малки разширения в синтаксиса на C, но те се обработват с препроцесор, който вади на изхода чисто C.
Ако някой е загледал GNU C, към него се дава GNU Objective-C (Има го и за Windows, в mingw)

На мен ми харесва SmallTalk-80, само че не виждам да се ползва за бизнес цели. Не зная.

Отговор
в отговор на voyager #3

Re: smalltalk

malko C/C++ evangilistichen otgovor - no eto kakvo misljat njakoi hora po tozi wuprosa:

[линк]
[27.3] Should I learn Smalltalk before I learn OO/C++?
Don't bother.

If your ultimate goal is to learn OO/C++ and you don't already know Smalltalk, reading books or taking courses in Smalltalk will not only waste your time, but it will teach you a bunch of things that you'll explicitly have to un-learn when you finally get back on track and learn OO/C++ (e.g., dynamic typing, non-subtyping inheritance, error-code exception handling, etc.).

Knowing a "pure" OO language doesn't make the transition to OO/C++ any easier. This is not a theory; we have trained and mentored literally thousands of software professionals in OO. In fact, Smalltalk experience can make it harder for some people: they need to unlearn some rather deep notions about typing and inheritance in addition to needing to learn new syntax and idioms. This unlearning process is especially painful and slow for those who cling to Smalltalk with religious zeal ("C++ is not like Smalltalk, therefore C++ is evil").

If you want to learn OO/C++, learn OO/C++. Taking time out to learn Smalltalk will waste your time and confuse you.

Note: I sit on both the ANSI C++ (X3J16) and ANSI Smalltalk (X3J20) standardization committees. I am not a language bigot. I'm not saying C++ is better or worse than Smalltalk; I'm simply saying that they are different.

i pak ot C++ FAQ Lite - The difference between Smalltalk and C++
[линк]

P.S.
zhalko che njakoi ot hyperlinkovete njama kak da budat suhraneni, sled tova moe grubo COPY+PAST

tirulirutatuutuu
Отговор
в отговор на voyager #4

Re: smalltalk

Hi,

az se zapozanah sys smalltalk kato chetoh "Design Patterns" tam chast ot examplite sa na smalltalk , az ne mozeh da gi razbera i si downloadnah edin tutorial ot IBM, gotin ezik i mislja che shte ima budeshte zashtot nqkade mi popadna info che se pravi Smalltalk.net

Отговор
в отговор на voyager #5

Re: smalltalk

malko izvun temata, ama - nqkoj zanimaval li se e s Eifell?

Sredata mu e adski stranna, i se chudq dali tq e obyrkana ili ostanalite sa obyrkani :-)
Ot sorta - trqbva da dropnesh primerno klas vyrhu buton ot toolbara za da mu vidish atributite....

Отговор
в отговор на EmoV #6

Re: smalltalk

a Ada i Modula-3? Izob6to za kakvo se pravqt takiva ezici ot super visoko nivo /*i kakvo im e po-visokoto nivo ot Java i C# */, kato nikoi ne gi izpolzva?





дао дъ дзин

Отговор
в отговор на voyager #7

Re: smalltalk

Въпроса ти е уместен. Изглежда от 20 години насам професионално се ползва C (вече C++) а тези неща, като Java, C# се наложиха защото трябваше някакъв код който да се точи по интернет и да работи на всякаква платформа. Случи се да е Java и C# понеже идва от големи компании като Microsft и Sun. Можеше да бъде и Lisp#, но Microsoft са решили да бъде C# и VB :)
Големите компании налагат стандартите, а ние щем/нещем се съобразяваме с тях.

Вчера до като се ровех в Linux намерих някакъв език Lambda Prolog. В него пак имало унификация като Prolog, но се ползвало основно синтаксис и семантика от ламбда смятането (ldmbda calculus).

Всеки може да измисли език и да направи интерпретатор и компилатор. Трудното е да убеди останалите хора че трябва да го ползват.

Отговор
в отговор на koko #8

Re: smalltalk

ne e li napisan na Lisp chast ot kompilatora GCC - tazi chast deto generira optimizatziite - peephole i t.n.tk.? Ne sum mnogo siguren - no edno vreme mi beshe hrumnala ideata da se rovja - i namerih strashno mnogo Lisp sorsove tam.

tirulirutatuutuu
Отговор
в отговор на malkia #9

gcc

Защо gcc да е писано на Lisp? Преди години си играх да компилирам цялото gcc с компилатора DEC C дето го има в DEC OS (някаква версиа на UNIX) за един Alpha процесор. Успя да се компилира, и компилирания с DEC C компилатор gcc успя да изкомпилира сам себе си в последствие. Всичко беше на чисто C.

Между другото, тогава xвърлих един поглед в сорсовете на gcc за да видя как са го направили. Имат една своя абстракция (verry useful :)) за някакъв (abstracten) процесор с накакви (abstractni) инструкции, а също някакъв тяхен мета-език за описание архитектурата на конкретния процесор за който са тръгнали да вадят код. Между другото те (GNU) много се хвалят с това нещо, а и не случаино след като компилатора им работи на толкова много различни платформи (с различни процесори).

Само дето GCC е ориентиран за по-силни, 32-битови процесори, и не могат (или не искат) да го пуснат за микро-контролери като PIC и AVR. Жалко, понеже за тези малки процесори се дават отвратителни компилатори, с много грешки, и са 5 пъти по-скъпи дори и от VC++6.0. MPLAB C18 ([линк]) е само за 18-та версия от фамилията им mcu, и струва $500 за една инсталация, срещо по-малко от $100 за VC++6.0 Pro за една инсталация)

Поздрави!

Отговор
в отговор на koko #10

Re: gcc

В отговор на:

Между другото, тогава xвърлих един поглед в сорсовете на gcc за да видя как са го направили. Имат една своя абстракция (verry useful :)) за някакъв (abstracten) процесор с накакви (abstractni) инструкции, а също някакъв тяхен мета-език за описание архитектурата на конкретния процесор за който са тръгнали да вадят код. Между другото те (GNU) много се хвалят с това нещо, а и не случаино след като компилатора им работи на толкова много различни платформи (с различни процесори).




imenno tazi abstrakcia mi napodobjawashe na lisp - no mozhe i da gresha - lisp ne razbiram mnogo.

tirulirutatuutuu
Отговор