ermouth: (Default)
[personal profile] ermouth

Я недавно сидел и выпивал с trubachev, говорили о том-сём, в тч о языках программирования. Зашла речь о Питоне – и я сказал, что недолюбливаю его за то, что в нём нет динамической типизации.

Мне Трубачев тактично возразил, что именно она там и есть, а я, пребывая в уверенности, что он ошибается, тактично возражать не стал.

А ошибался то, оказывается, как раз я. Я только что вспомнил этот момент и решил таки посмотреть, а что же в самом деле такое динамическая типизация. Ну не может же человек, пишущий на Питоне точно больше, чем я, так лажать, ога.

Так вот я до сегодняшнего дня думал, что динамическая типизация – это то, что в самом деле называется weak typing. Ну а соответственно static понимался как strong.

Вот бывает же, даже понятно, как я ухитрился ) Забавно, мне никогда не приходило в голову поинтересоваться термином, а с определением я как-то не сталкивался.

Век живи, два учись. Спасибо, Трубачев.

Date: 2013-05-17 05:22 pm (UTC)
From: [identity profile] morfizm.livejournal.com
Я Питон недолюбливаю по другим причинам. Разные штуки вроде отсутствия необходимости декларировать переменные (из-за чего, по небрежности, могут возникать очень неприятные баги), передача через параметры чего хочешь (отсутствие enforcing'а интерфейса), отсутствие полной проверки синтаксиса на этапе компиляции. Синтаксическая ошибка, вываливающаяся только в процессе работы - это такой мега-facepalm.

Но есть также куча причин, по которым я его люблю.
На сегодняшний день это для меня language of choice для всего, что не CPU-bound (для этих случаев есть C++, C, Assembly language :)), и кроме отдельных случаев, когда нужны другие языки (web client - JS, hadoop - Hive, math/statistics - R, etc).
Edited Date: 2013-05-17 05:23 pm (UTC)

Date: 2013-05-17 06:22 pm (UTC)
From: [identity profile] ermouth.livejournal.com
надеюсь ты в какой-то момент всё же перейдёшь на js )

Помимо кучи плюшек чисто языкового плана начиная c ECMAScript5 в js есть совершенно волшебный режим – function () {"use strict"; /*some code here*/}

такая конструкция в начале объявления функции переключает scope функции в "строгий" режим, в котором запрещены многие потенциально erroneous или unsafe js-фокусы. http://kangax.github.io/es5-compat-table/

ну комьюнити конечно огромное http://caines.ca/blog/programming/the-node-js-community-is-quietly-changing-the-face-of-open-source/

И скорость сборки проектов. На моём одном проекте node.js мне собирает 1000+ файлов кода менее чем за секунду. Сильно менее. То-есть "написал 5 строк – прогнал" не дикость.

Имхо по веяниям js оказывает и окажет ещё на индустрию софта в целом не меньший импакт, чем в своё время оказал C.

Date: 2013-05-17 06:26 pm (UTC)
From: [identity profile] ermouth.livejournal.com
спиздел про тыщу, там пакеты с тестами. втрое примерно меньше сорцов.

Profile

ermouth: (Default)
ermouth

November 2021

S M T W T F S
 123456
78910111213
14151617181920
21 222324252627
282930    

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Feb. 2nd, 2026 06:36 am
Powered by Dreamwidth Studios