[Перевод] Как изучение Smalltalk может улучшить ваши навыки программиста
Комментарии (6)
7 мая 2017 в 23:28
+3↑
↓
С любезного разрешения Mr Richard Eng я начинаю серию переводов его эссе по языку Smalltalk и OO программированию.8 мая 2017 в 00:15
+1↑
↓
круто, я бы с удовольствием почитал
8 мая 2017 в 00:41
+1↑
↓
Оригинал:Smalltalk made «duck typing» a household word (well, if your house has a programmer in it).
Перевод:Smalltalk сделал «утиную типизацию» расхожим выражением (ну, если в вашем доме ещё ходит программист).
Жирный плюс за попытку сохранить каламбур, но все-таки если по вашему дому ходит какой-то там программист, то не забудьте его выгнать перед тем как приниматься за smalltalk.7 factorial printNl.
Сообщение printNl отправляется в результат (являющийся объектом) отправки сообщения my_factorial числу 7. Всё это очень похоже на естественный язык!
Что-то автор слегка тролльнул, выглядит очень похоже на естественный язык, в котором пишут справа налево. Или может имеется в виду, что иврит — самый естесвенный язык, а остальные — так себе.Есть много вещей, которые программа может делать с сообщением doesNotUnderstand:, включая расширение своей функциональности!
Не, подразумевается расширение функциональности сообщения (типа по дефолту там эксепшн, но можно переопределить и писать в лог, например).В целом, действительно интересно — спасибо за перевод и продолжайте, пожалуйста.
8 мая 2017 в 00:54 (комментарий был изменён)
0↑
↓
выглядит очень похоже на естественный язык, в котором пишут справа налево.
Ну почему? И пишем и читаем слева направо:7 factorial printNl.
вполне читается как «спросить у числа 7 его факториал, после чего распечатать его.»8 мая 2017 в 01:07
0↑
↓
Это описание логики выполнения smalltalk на естественном языке. А вот описание того, что мы хотим сделать выглядело бы как «распечатать факториал числа 7», то естьprint factorial 7
— и вот это было бы действительно похоже на естественный язык. (Почти валидный haskell, кстати)
8 мая 2017 в 00:45
0↑
↓
Спасибо! Мне очень хотелось сохранить каламбур, и на мой взгляд получилось неплохо. :3 Ежели предложите лучший вариант — буду рад.