Comments 22
В общем то, поведение почти очевидно. Только пример с датой немного смущает. Видимо так задан метод приведения этого типа в строку.
P.S. Троеточие в русском языке называется многоточием
P.S. Троеточие в русском языке называется многоточием
localtime просто возвращает разные значения в списковом и в скалярном контексте.
Подробнее см. localtime, wantarray.
Подробнее см. localtime, wantarray.
Кстати, нюансы поведения методов также присутствуют и в других языках.
Типичный пример использования — использование block_given? в Ruby для того, чтобы возвращать список при отсутствии блока, или итерировать по списку при его наличии.
Нечто вроде
Типичный пример использования — использование block_given? в Ruby для того, чтобы возвращать список при отсутствии блока, или итерировать по списку при его наличии.
Нечто вроде
def items(&block)
return self._items unless block_given?
self.items.each(&block)
end
items.each { |item| item.op }
items { |item| item.op }
Тут скорее ошибка неправильного употребления, а не названия. Три точки — это три точки, а не (много|трое)точие — отдельный знак …
вот поэтому нас и не любят © :)
Perl очень гибкий и сильный язык, но из-за того, что программисты на perl познав ДАО начинают писать строки вроде
То другие программисты ( которые еще не познали ДАО ) считают Perl очень запутанным и сложным языком.
Я не программист, я любитель. Года три назад прочитав книгу по Perl, я один скрипт написал используя новые знания, используя все хитрости и неочевидности которые я выучил. В начале этого года я снова открыл этот скрипт, у меня заняло минут 50 понять, как именно работает скрипт.
Perl очень гибкий и сильный язык, но из-за того, что программисты на perl познав ДАО начинают писать строки вроде
process_this_line($_) if 20 .. 40;
То другие программисты ( которые еще не познали ДАО ) считают Perl очень запутанным и сложным языком.
Я не программист, я любитель. Года три назад прочитав книгу по Perl, я один скрипт написал используя новые знания, используя все хитрости и неочевидности которые я выучил. В начале этого года я снова открыл этот скрипт, у меня заняло минут 50 понять, как именно работает скрипт.
написал используя новые знания, используя все хитрости и неочевидности которые я выучил
И это было вашей ошибкой. Надо писать понятный и самочитаемый код.
Некоторые при изучении perl начитаются однострочников, и начинают их вставлять где только смогут. При этом нужно выжидать месяц, и когда они забудутся, заставлять переписывать. Очень помогает воспитывать хороший код. :)
А если цель написать максимально быстродейственный код?
Вот Монс в одной из своих лекций, говорит, что операции копирования при больших объемах данных это уже плохо.
Поэтому вместо for my $var (
Стоит юзать @_ и $_
Да, будет не очень красиво и не очень читабельно.
Вот, кстати эта лекция.
Вот Монс в одной из своих лекций, говорит, что операции копирования при больших объемах данных это уже плохо.
Поэтому вместо for my $var (
@arr
) и т.д. Стоит юзать @_ и $_
Да, будет не очень красиво и не очень читабельно.
Вот, кстати эта лекция.
В некоторых случаях все же лучше использовать
for my $var ( @arr )
, потому что @_
и $_
могут переопределяться при вызовах других функций внутри цикла. Не помню точно в каких случаях, но как-то сталкивался с таким поведением.Использование хаков и неочевидных конструкций языка в целях ускорения, в ущерб читаемости — это шаг когда алгоритмические оптимизации и профилировщик уже ничего не дают, а скорости все еще не хватает.
И то стоит подумать — а не нарастить ли мощьности железа, если планируется долговременное использование этого софта.
И то стоит подумать — а не нарастить ли мощьности железа, если планируется долговременное использование этого софта.
Хочется верить, что после этой статьи не начнут куда ни попадя пихать flip-flop.
Лингвистический комментарий:
yada-yada (если не ошибаюсь, 嫌で嫌で) скорее переводится как «ой-ой», чем как «бла-бла». Это одно из тех слов/фраз, которые хорошо переводятся с Японского на Русский с полным сохранением множества смыслов и эмоциональных значений. Обилие общих слов подобного типа иногда заставляет меня думать о происхождении Японского от Русского. )
В английском это имеет значение, аналогичное русскому «и тэ дэ и тэ пэ». Только пишется это чаще не yada-yada, а yadda-yadda (хотя оба варианта допустимы и популярны). К японскому не имеет никакого отношения.
Японский к русскому тоже не имеет никакого отношения, его вообще большинство лингвистов полагает изолированным языком — а кто не полагает, прослеживают связь с алтайскими, которые с русским (индоевропейским языком) тоже никак не связаны.
Японский к русскому тоже не имеет никакого отношения, его вообще большинство лингвистов полагает изолированным языком — а кто не полагает, прослеживают связь с алтайскими, которые с русским (индоевропейским языком) тоже никак не связаны.
В русском языке встречаются заимствования из тюркских языков, так что связь с алтайскими вполне возможна.
А в связи с чем минусы? Заимствования из тюрских языков — это реальность.
Хм
А если это русский потомок японского? ;)
Скорее и в русский и в японский пришло от общего корня эти слова. А вот какой корень — трудно сказать. Может индоевропейские, может алтайские, а может и сино-тибетские (хотя вряд ли).
Скорее и в русский и в японский пришло от общего корня эти слова. А вот какой корень — трудно сказать. Может индоевропейские, может алтайские, а может и сино-тибетские (хотя вряд ли).
Не любое слово, созвучное японскому, происходит из японского.
yada-yada — обычное звукоподражание, ниоткуда не заимствованное.
etymonline.com/index.php?search=yadda
yada-yada — обычное звукоподражание, ниоткуда не заимствованное.
etymonline.com/index.php?search=yadda
Двоеточие — тоже точки :)
Sign up to leave a comment.
Касаемо точек