Занимавайки се с разнообразни езици за програмиране съм научил много. Всеки ме изненадва с нещо. Понякога намирам идеи, които „mainstream“ езиците са усвоили десетки години по-късно. Понякога виждам идеи, които те тепърва усвояват. Не са ужасно практични, но занимавката с тях ме прави по-добър програмист.
Искам да направя серия от малки презентации в initLab за такива езици. Очаквайте Io, Scheme, Haskell, J, Prolog и прочее. Първият ще е Smalltalk. Датата ще бъде 26ти януари. Часът ще бъде 19:00.
Smalltalk е първият обектно-ориентиран език за програмиране. Всъщност, вторият, но само технически погледнато. Всичко, което възприемаме като ООП идва по един или друг начин от него. Разбира се, повечето идеи са видоизменени до непознаваемост (в C++, например). Няколко известни имена от Addison-Wesley са (бивши) Smalltalk програмисти – Kent Beck, Ward Cunningham, Martin Folwer. В днешно време не е много популярен, но определено има какво да ни научи.
Ето няколко любопитни неща, които ще грабнат интереса ви:
- Кодът не се пази в текстови файлове.
- Виртуалната машина и работната среда са силно интегрирани. Можете да редактирате кода на работната среда от самата работна среда. Докато работите в нея.
- Няма синтаксис за
if
– имплементиран е в стандартната библиотека. - Design Pattern-ите в GoF изглеждат малко странни в C++ и Java. В Smalltalk изглеждат учудващо на място.
- Динамично типизиран, но въпреки това има IDE и debugger, сравними с тези за Java.
- Някои странни имена в Ruby (
collect
,inject
,initialize
) идват от Smalltalk. - Изключително прост синтаксис, сравним с този на LISP.
Ако това ви е грабнало вниманието, може да дойдете и да гледате на 26 януари, от 19:00 в initLab. Входът, разбира се, е безплатен.
Ще има ли видео запис за хората без късмет, които няма да могат да присъстват?
Не вярвам.
Мога да запиша разговора, но екрана сто процента няма да се вижда.
Ако успеем да подкараме нещо за screencapture на компа ти, може и да стане. SofiaJS лекцията от миналата събота я записаха, скоро ще пуснем и записа. Само дето бяха на WinXP…
Здравей, в момента тези езици използват ли се в практиката?
Smalltalk има съвременен framework на име Seaside. Някой някъде го ползва. Дори има специализиран хостинг. Но не са много хора.
Ще говоря за няколко езика, които се ползват в практиката – Scala и Clojure. Но не ми е това идеята. Искам да задълбая в интересни неща в непопулярни езици. Не искам да правя въвеждащи курсове в 12 езика.
Мога да предоставя моята машина за запис, ако желаете, само трябва да знаете софтуер за запис, също така не съм сигурен колко добър запис ще се получи с вградената ѝ камерата. Поздрави, Ивелин.