2012/12/7 ksvs <[email protected]>:
> А все таки классный язык Perl.
>
> Болел и был в карантине от интернета. Под рукой только доки по haskell были -
> забавный язык.
>
> Кончено
> add x y = x + y
> выглядит лучше, чем
> sub add { my ($x, $y) = @_; $x + $y }
use Function::Parameters qw(:strict);
fun add($x, $y) { $x + $y }
В 5.18/20 такой простой пример будет работать из коробки. Вот только
ущербный пример - никто такие маленькие функции не пишет.
Вот например в perl можно следующие сигнатуры делать:
my %args = @_%2? (xxx => @_) : (@_);
или
my $cb = pop; my @list = @_;
Модули, которые я видел для релизации "красивых" сигнатур на CPAN, не
могут повторить такие варианты.
> Но вот в конструкциях подобной
> $a{$b}{$c}[$d] ||= $e if $f;
> Perl вне конкуренции.
>
> Или можно на других языках также кратко записать?
> Например, как такое будет на Python или Erlang?
Скорее всего можно написать в многих языках, но вот vivification есть не везде.
>
> --
> Moscow.pm mailing list
> [email protected] | http://moscow.pm.org
--
Best regards, Ruslan.
--
Moscow.pm mailing list
[email protected] | http://moscow.pm.org