Moduł Acme::Morse::Audible

Uniwersytet Gdański - Instytut Matematyki - Zakład Informatyki - Strona domowa

Obsługa modułu Acme::Morse::Audible

use Acme::Morse::Audible; print "Witaj muzykalny świecie!";

Co to jest?

Kolejny moduł z serii zmieniających kod. Tym razem jest szansa by usłyszeć skrypt.

Szczegóły

Kiedy pierwszy raz uruchomimy program, który używa Acme::Morse::Audible stanie się on plikiem MIDI z kodem zakodowanym alfabetem Morsa. Program będzie robił to samo co przedtem ale teraz będzie można go usłyszeć. Niektóre odtwarzacze MIDI mogą nie chcieć odegrać pliku dopóki nie będzie miał rozszerzenia .mid.

By przywrócić program do pierwotnej wersji należy użyć no Acme::Morse::Audible; To wyrażenia nie ma żadnego efektu przy normalnym programie.

Jak to działa

Moduł używa perlowej funkcji pack i unpack, które zamieniają listę wejściową na strukturę binarną i zwracają tą strukturę jako string albo odwrotnie. Dane po use są zamienniane na ciąg bitów, a następnie przy użyciu wyrażenia regularnego s/(.)/$1?$long:$short/eg każde 0 jest zamieniane na dźwięk krótki w formacie MIDI a każde 1 na dźwięk długi. Tymi danymi skrypt jest nadpisywany. Konwersja w drugą stronę przechodzi analogicznie, a kod programu jest wykonywany za pomocą eval.

Problemy

Cannot record '%s'
Moduł ma problem z zapisem do pliku z kodem źródłowym.
Cannot hear '%s'
Moduł ma problem z odczytem pliku z kodem źródłowym.

Zobacz też

Spodobało się? Jest dużo podobnych modułów. Np.: Acme::Morse, Acme::Bleach

Dodatkowe informacje

Cała dokumentacja znajduje się na http://search.cpan.org/~itrivizki/Acme-Morse-Audible-1.10/Audible.pm

Autor opracowania

P.B.

Uniwersytet Gdański - Instytut Informatyki - Strona domowa - Perl - Wyklady
[c] Piotr Arłukowicz, materiały z tej strony udostępnione są na licencji GNU.