1

что то не получается у меня найти задачник с реальными задачами по perl.

а с фантазией туго, да и не совсем правильно это самому себе ставить задачи для решения.
а на работе таких задач не дают.

любезнейшие, подскажите букварик, где только задачи без теории, но и если с ответами будут, то тоже не плохо.
ибо перл он очень гибкий, и одну и ту же задачу можно решать разными методами.

"Фирма Майкрософт не собирается поддерживать протокол TCP/IP в своих OS" 1993 (c) Билл Гейтс
"Мы изобрели новый протокол передачи данных, мы назвали его TCP/IP" 1995 (c) Билл Гейтс

2

подойдет?

3

да, можно использовать готовые решения.

"Фирма Майкрософт не собирается поддерживать протокол TCP/IP в своих OS" 1993 (c) Билл Гейтс
"Мы изобрели новый протокол передачи данных, мы назвали его TCP/IP" 1995 (c) Билл Гейтс

4

под четыре часа ночи, что то я застрял в философии.

кто-нибудь, может по-простому разложить смысл списочного и скалярного контекста?

"Фирма Майкрософт не собирается поддерживать протокол TCP/IP в своих OS" 1993 (c) Билл Гейтс
"Мы изобрели новый протокол передачи данных, мы назвали его TCP/IP" 1995 (c) Билл Гейтс

5

если правильно понял:
если на выходе ожидается скаляр, то интерпретатор вызывает скалярную версию функции и наоборот...
затрудняюсь придумать, что тут непонятного может быть...

ЗЫ: если что, сам в перле не очень хорошо разбираюсь...

95% процентов проблем находятся между клавиатурой и стулом.

6

Фат-Зер.
енто я знаю, что интерпретатор ожидает данные в зависимости от оператора.

дело в другом, одни и те же данные могуть быть интерпретированы и как скаляры и как списки.
что же курил ентот Ларри Уолл программис-философ-лингвист?

"Фирма Майкрософт не собирается поддерживать протокол TCP/IP в своих OS" 1993 (c) Билл Гейтс
"Мы изобрели новый протокол передачи данных, мы назвали его TCP/IP" 1995 (c) Билл Гейтс

7

moshell пишет:

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

чего-то я не пойму, о чём ты... можно пример или контекст, откуда это...

moshell пишет:

что же курил ентот Ларри Уолл программис-философ-лингвист?

я же предупреждал, что это для психики вредно... =)

95% процентов проблем находятся между клавиатурой и стулом.

8

Fat-Zer пишет:
moshell пишет:

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

чего-то я не пойму, о чём ты... можно пример или контекст, откуда это...

moshell пишет:

что же курил ентот Ларри Уолл программис-философ-лингвист?

я же предупреждал, что это для психики вредно... =)

я бы сквотил, но там дежавю.(
в общем learning perl
завершение третьей главы. (пишет автор книги - это самая главная подглава из всей книги, и если ее не вкурить, то pw/ н и х е р а /; вы не поймете перла.

"Фирма Майкрософт не собирается поддерживать протокол TCP/IP в своих OS" 1993 (c) Билл Гейтс
"Мы изобрели новый протокол передачи данных, мы назвали его TCP/IP" 1995 (c) Билл Гейтс

9 (09.01.2013 03:44:37 отредактировано moshell)

кто нибудь подскажет в чем прикол?
если вот так. то все ок.

#!/usr/bin/perl

$fred = 11;
$barney = 6;

sub list_from_fred_to_barney {
        if ( $fred < $barney ) {
                $fred .. $barney;
        } else {
                reverse $barney .. $fred;
        }
}

@c = &list_from_fred_to_barney;

print "@c\n";

а если добавить директиву

use strict;

то вываливаются вот эти ошибки

Global symbol "$fred" requires explicit package name at ./my_programm line 4.
Global symbol "$barney" requires explicit package name at ./my_programm line 5.
Global symbol "$fred" requires explicit package name at ./my_programm line 8.
Global symbol "$barney" requires explicit package name at ./my_programm line 8.
Global symbol "$fred" requires explicit package name at ./my_programm line 10.
Global symbol "$barney" requires explicit package name at ./my_programm line 10.
Global symbol "$barney" requires explicit package name at ./my_programm line 13.
Global symbol "$fred" requires explicit package name at ./my_programm line 13.
Global symbol "@c" requires explicit package name at ./my_programm line 17.
Global symbol "@c" requires explicit package name at ./my_programm line 19.
Execution of ./my_programm aborted due to compilation errors.

03:46:34_gu@moshell:~$ perl -v | grep version
This is perl 5, version 14, subversion 2 (v5.14.2) built for x86_64-linux-gnu-thread-multi
03:46:59_gu@moshell:~$

"Фирма Майкрософт не собирается поддерживать протокол TCP/IP в своих OS" 1993 (c) Билл Гейтс
"Мы изобрели новый протокол передачи данных, мы назвали его TCP/IP" 1995 (c) Билл Гейтс

10

разобрался.
эта директива требует чтоб я поменял глобальные переменные на приватные.
my

"Фирма Майкрософт не собирается поддерживать протокол TCP/IP в своих OS" 1993 (c) Билл Гейтс
"Мы изобрели новый протокол передачи данных, мы назвали его TCP/IP" 1995 (c) Билл Гейтс

11

moshell пишет:

разобрался.
эта директива требует чтоб я поменял глобальные переменные на приватные.
my

совершенно верно.

Ищу дополнительный заработок (удалёнка).
Пьянка без секса – признак алкоголизма.

12 (10.01.2013 02:47:15 отредактировано moshell)

надоело бегать по полю стрелочками.
решил освоить vim
и вот что я вижу

1)  Летом я хожу на стадион,
      2)  О, как внезапно кончился диван!
      3)  Я болею за ``Зенит'', ``Зенит'' --- чемпион!
      4)  Печально я гляжу на наше поколение!
      5)  Его грядущее иль пусто иль темно...
      6)  Я сижу на скамейке в ложе `Б'
      7)  И играю на большой жестяной трубе.

ничего против зенита не имею, но все же, переводчики красава

add// есть какой нибудь "кастыль" чтоб не переключать раскладку туда сюда в vim?
комманды слушаются только инглишь, а редактируеца русиш

"Фирма Майкрософт не собирается поддерживать протокол TCP/IP в своих OS" 1993 (c) Билл Гейтс
"Мы изобрели новый протокол передачи данных, мы назвали его TCP/IP" 1995 (c) Билл Гейтс

13

moshell пишет:

add// есть какой нибудь "кастыль" чтоб не переключать раскладку туда сюда в vim?

http://ru.wikibooks.org/wiki/Vim#Vim_.D … 1.80.D1.8B

Да, у меня Ubuntu.
Нет, не глючит.

14

moshell пишет:

add// есть какой нибудь "кастыль" чтоб не переключать раскладку туда сюда в vim?комманды слушаются только инглишь, а редактируеца русиш

ИМХО правильное решение set keymap=russian-jcukenwin
переключение будет по C-^
ещё есть старые варианты костылей через langmap и вручную map'ами.

95% процентов проблем находятся между клавиатурой и стулом.

15

спасибо. затестирую и отпишусь

"Фирма Майкрософт не собирается поддерживать протокол TCP/IP в своих OS" 1993 (c) Билл Гейтс
"Мы изобрели новый протокол передачи данных, мы назвали его TCP/IP" 1995 (c) Билл Гейтс