เบžเบฒเบชเบฒเบญเบฑเบ‡เบเบดเบ”เบžเบฒเบชเบฒเบเบฃเบฑเปˆเบ‡เปเบญเบชเบ›เบฒเป‚เบเบ™

OnWorks favicon

PDL::Scilabp - เบญเบญเบ™เบฅเบฒเบเปƒเบ™เบ„เบฅเบฒเบง

เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™ PDL::Scilabp เปƒเบ™ OnWorks เบœเบนเป‰เปƒเบซเป‰เบšเปเบฅเบดเบเบฒเบ™เป‚เบฎเบ”เบ•เบดเป‰เบ‡เบŸเบฃเบตเบœเปˆเบฒเบ™ Ubuntu Online, Fedora Online, Windows online emulator เบซเบผเบท MAC OS online emulator

เบ™เบตเป‰เปเบกเปˆเบ™เบ„เปเบฒเบชเบฑเปˆเบ‡ PDL::Scilabp เบ—เบตเปˆเบชเบฒเบกเบฒเบ”เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เป„เบ”เป‰เปƒเบ™ OnWorks เบœเบนเป‰เปƒเบซเป‰เบšเปเบฅเบดเบเบฒเบ™เป‚เบฎเบ”เบ•เบดเป‰เบ‡เบŸเบฃเบตเป‚เบ”เบเปƒเบŠเป‰เบซเบ™เบถเปˆเบ‡เปƒเบ™เบซเบผเบฒเบเป†เบšเปˆเบญเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบญเบญเบ™เป„เบฅเบ™เปŒเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบŠเบฑเปˆเบ™ Ubuntu Online, Fedora Online, Windows online emulator เบซเบผเบท MAC OS online emulator

เป‚เบ„เบ‡เบเบฒเบ™:

NAME


PDL::Scilab - เบ„เบนเปˆเบกเบทเบชเปเบฒเบฅเบฑเบšเบœเบนเป‰เปƒเบŠเป‰ Scilab.

เบžเบฒเบเบชเบฐเป€เบซเบ™เบต


เบ–เป‰เบฒเบ—เปˆเบฒเบ™เป€เบ›เบฑเบ™เบœเบนเป‰เปƒเบŠเป‰ Scilab, เบซเบ™เป‰เบฒเบ™เบตเป‰เปเบกเปˆเบ™เบชเปเบฒเบฅเบฑเบšเบ—เปˆเบฒเบ™. เบกเบฑเบ™เบญเบฐเบ—เบดเบšเบฒเบเบ„เบงเบฒเบกเปเบ•เบเบ•เปˆเบฒเบ‡เบ—เบตเปˆ เบชเบณ เบ„เบฑเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡
Scilab เปเบฅเบฐ PDL เป€เบžเบทเปˆเบญเบŠเปˆเบงเบเป€เบˆเบปเป‰เบฒเป„เบ›เป„เบงเป€เบ—เบปเปˆเบฒเบ—เบตเปˆเบˆเบฐเป„เบงเป„เบ”เป‰.

เบ™เบตเป‰ เป€เบญเบเบฐเบชเบฒเบ™ is เบšเปเปˆ a tutorial. เป€เบžเบทเปˆเบญเป€เบฎเบฑเบ”เบชเบดเปˆเบ‡เบ™เบตเป‰, เป„เบ›เบ—เบตเปˆ PDL::QuickStart. เป€เบญเบเบฐเบชเบฒเบ™เบ™เบตเป‰
เป€เบชเบตเบก เบ„เบนเปˆเบกเบทเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ”เปˆเบงเบ™, เบเป‰เบญเบ™เบงเปˆเบฒเบกเบฑเบ™เบŠเบตเป‰เปƒเบซเป‰เป€เบซเบฑเบ™เบ„เบงเบฒเบกเปเบ•เบเบ•เปˆเบฒเบ‡เบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡ Scilab เปเบฅเบฐ
PDL.

Perl


เบ„เบงเบฒเบกเปเบ•เบเบ•เปˆเบฒเบ‡เบ—เบตเปˆ เบชเบณ เบ„เบฑเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡ Scilab เปเบฅเบฐ PDL เปเบกเปˆเบ™ Perl.

Perl เป€เบ›เบฑเบ™เบžเบฒเบชเบฒเบเบฒเบ™เบ‚เบฝเบ™เป‚เบ›เบฅเปเบเบฅเบกเบˆเบธเบ”เบ›เบฐเบชเบปเบ‡เบ—เบปเปˆเบงเป„เบ›เบ—เบตเปˆเบกเบตเบซเบฅเบฒเบเบžเบฑเบ™เป‚เบกเบ”เบนเบ™เบ—เบตเปˆเบกเบตเบขเบนเปˆเบขเปˆเบฒเบ‡เป€เบชเบฅเบต
เบขเบนเปˆเปƒเบ™เป€เบงเบฑเบš. PDL เปเบกเปˆเบ™เบชเปˆเบงเบ™เบ‚เบฐเบซเบเบฒเบเบ‚เบญเบ‡ Perl. เบ™เบตเป‰เป€เบฎเบฑเบ”เปƒเบซเป‰เป‚เบ„เบ‡เบเบฒเบ™ PDL เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เป€เบžเบตเปˆเบกเป€เบ•เบตเบก
เบซเบผเบฒเบเบเปˆเบงเบฒเป€เบ„เบทเปˆเบญเบ‡เบกเบทเบ•เบปเบงเป€เบฅเบเบชเปˆเบงเบ™เปƒเบซเบเปˆเบชเบฒเบกเบฒเบ”เบเบฑเบ™เป„เบ”เป‰. เปƒเบ™เป€เบงเบฅเบฒเบ”เบฝเบงเบเบฑเบ™, เบ„เบงเบฒเบกเปเบ•เบเบ•เปˆเบฒเบ‡เบ‚เบญเบ‡ syntax เบซเบผเบฒเบเบ—เบตเปˆเบชเบธเบ”เบฅเบฐเบซเบงเปˆเบฒเบ‡
Scilab เปเบฅเบฐ PDL เปเบกเปˆเบ™เบœเบปเบ™เบกเบฒเบˆเบฒเบเบžเบทเป‰เบ™เบ–เบฒเบ™ Perl เบ‚เบญเบ‡เบกเบฑเบ™.

เบ—เปˆเบฒเบ™ do เบšเปเปˆ เบกเบต to เบฎเบฝเบ™เบฎเบนเป‰ เบซเบผเบฒเบ Perl to be เบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบš เบเบฑเบš PDL. เปเบ•เปˆเบ–เป‰เบฒเบ—เปˆเบฒเบ™เบ•เป‰เบญเบ‡เบเบฒเบ™เบฎเบฝเบ™เบฎเบนเป‰
Perl, เบกเบตเป€เบญเบเบฐเบชเบฒเบ™เบ—เบตเปˆเบ”เบตเป€เบฅเบตเบ”เบ—เบตเปˆเบกเบตเบขเบนเปˆเปƒเบ™เบญเบญเบ™เป„เบฅเบ™เปŒ (http://perldoc.perl.org>) เบซเบผเบท
เบœเปˆเบฒเบ™เบ„เปเบฒเบชเบฑเปˆเบ‡ "perldoc perl". เบ™เบญเบเบ™เบฑเป‰เบ™เบเบฑเบ‡เบกเบตเบ›เบฐเบ•เบนเบ‚เบญเบ‡เบœเบนเป‰เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™
(<http://perl-begin.org>).

เบ„เบฑเบ‡เป€เบเบฑเบšเป‚เบกเบ”เบนเบ™เบ‚เบญเบ‡ Perl เบ–เบทเบเป€เบญเบตเป‰เบ™เบงเปˆเบฒ CPAN (http://www.cpan.org>) เปเบฅเบฐเบกเบฑเบ™เบกเบต array เบ—เบตเปˆเบเบงเป‰เบฒเบ‡เบ‚เบงเบฒเบ‡
เป‚เบกเบ”เบนเบ™. เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™ "perldoc cpan" เบชเปเบฒเบฅเบฑเบšเบ‚เปเป‰เบกเบนเบ™เป€เบžเบตเปˆเบกเป€เบ•เบตเบก.

เป€เบ—เบเป‚เบ™เป‚เบฅเบเบต: PIDDLE


Scilab เป‚เบ”เบเบ›เบปเบเบเบฐเบ•เบดเบซเบกเบฒเบเป€เบ–เบดเบ‡ vectors, matrices, เปเบฅเบฐ arrays. Perl เบกเบต arrays เปเบฅเป‰เบง, เปเบฅเบฐ
เบ„เปเบฒเบชเบฑเบš "vector" เปเบฅเบฐ "matrix" เป‚เบ”เบเบ›เบปเบเบเบฐเบ•เบดเบซเบกเบฒเบเป€เบ–เบดเบ‡เบเบฒเบ™เบฅเบงเบšเบฅเบงเบกเบซเบ™เบถเปˆเบ‡เปเบฅเบฐเบชเบญเบ‡เบกเบดเบ•เบดเบฅเบฐเบ”เบฑเบšเบ‚เบญเบ‡
เบ‚เปเป‰เบกเบนเบ™. เบšเปเปˆเบกเบตเบ„เปเบฒเบ—เบตเปˆเบ”เบตเบ—เบตเปˆเบˆเบฐเบญเบฐเบ—เบดเบšเบฒเบเบงเบฑเบ”เบ–เบธเบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒ, เบ™เบฑเบเบžเบฑเบ”เบ—เบฐเบ™เบฒ PDL เป„เบ”เป‰เบชเป‰เบฒเบ‡เบ„เปเบฒเบชเบฑเบš
"เบ›เบดเบง"เป€เบžเบทเปˆเบญเปƒเบซเป‰เบŠเบทเปˆเบเบฑเบšเบ›เบฐเป€เบžเบ”เบ‚เปเป‰เบกเบนเบ™เบ‚เบญเบ‡เป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒ.

A เบ›เบดเบง เบ›เบฐเบเบญเบšเบ”เป‰เบงเบเบŠเบธเบ”เบ‚เบญเบ‡เบ•เบปเบงเป€เบฅเบเบ—เบตเปˆเบˆเบฑเบ”เป€เบ›เบฑเบ™เบŠเบธเบ”เบ‚เปเป‰เบกเบนเบ™ N-dimensional. เบ›เป‰เบฒ
เบชเบฐเบซเบ™เบญเบ‡เบเบฒเบ™เป€เบเบฑเบšเบฎเบฑเบเบชเบฒเบ—เบตเปˆเบกเบตเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเปเบฅเบฐเบเบฒเบ™เบ„เบดเบ”เป„เบฅเปˆเป„เบงเบ‚เบญเบ‡ matrices N-dimensional เบ‚เบฐเบซเบ™เบฒเบ”เปƒเบซเบเปˆ. เบžเบงเบโ€‹เป€เบ‚เบปเบฒโ€‹เปเบกเปˆเบ™
เป€เปเบฒเบฐเบชเบณเบฅเบฑเบšเบงเบฝเบเบ•เบปเบงเป€เบฅเบ.

เบชเปเบฒเบฅเบฑเบšเบ‚เปเป‰เบกเบนเบ™เป€เบžเบตเปˆเบกเป€เบ•เบตเบก, เป€เบšเบดเปˆเบ‡ "เบ›เป‰เบฒ vs Perl เบญเบฒเป€เบฅ" เบ•เปเปˆเบกเบฒเปƒเบ™เป€เบญเบเบฐเบชเบฒเบ™เบ™เบตเป‰.

เบ„เปเบฒเบชเบฑเปˆเบ‡ WINDOW เปเบฅเบฐ เบ—เบตเปˆเบ™เบตเป‰


PDL เบšเปเปˆเป„เบ”เป‰เบกเบฒเบžเป‰เบญเบกเบเบฑเบš IDE เบชเบฐเป€เบžเบฒเบฐ. เบขเปˆเบฒเบ‡เปƒเบ”เบเปเบ•เบฒเบก, เบกเบฑเบ™เบกเบฒเบžเป‰เบญเบกเบเบฑเบšเปเบเบฐเปเบšเบšเป‚เบ•เป‰เบ•เบญเบšเปเบฅเบฐ
เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ™เปเบฒเปƒเบŠเป‰ Perl IDE เป€เบžเบทเปˆเบญเบžเบฑเบ”เบ—เบฐเบ™เบฒเป‚เบ„เบ‡เบเบฒเบ™ PDL.

PDL เปเบšเบšเป‚เบ•เป‰เบ•เบญเบš เบซเบญเบ
เป€เบžเบทเปˆเบญเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบš shell, เป€เบ›เบตเบ” terminal เปเบฅเบฐเบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™ "perldl" เบซเบผเบท "pdl2". เปƒเบ™ Scilab,
เปเบเบฐเปเบšเบšเป‚เบ•เป‰เบ•เบญเบšเปเบกเปˆเบ™เบงเบดเบ—เบตเบ—เบตเปˆเบ”เบตเบ—เบตเปˆเบชเบธเบ”เบ—เบตเปˆเบˆเบฐเบฎเบฝเบ™เบฎเบนเป‰เบžเบฒเบชเบฒ. เป€เบžเบทเปˆเบญเบญเบญเบเบˆเบฒเบเปเบเบฐ, เบžเบดเบก
"เบญเบญเบ", เบ„เบทเบเบฑเบ™เบเบฑเบš Scilab.

เบฅเบฒเบเบฅเบฑเบเบญเบฑเบเบชเบญเบ™ PDL เป‚เบ„เบ‡เบเบฒเบ™
IDE เบ—เบตเปˆเบ™เบดเบเบปเบกเบญเบฑเบ™เปœเบถเปˆเบ‡เบชเบณเบฅเบฑเบš Perl เป€เบญเบตเป‰เบ™เบงเปˆเบฒ Padre (http://padre.perlide.org>). เบกเบฑเบ™เปเบกเปˆเบ™เบ‚เป‰เบฒเบก
เป€เบงโ€‹เบ—เบตโ€‹เปเบฅเบฐโ€‹เบ‡เปˆเบฒเบโ€‹เบ—เบตเปˆโ€‹เบˆเบฐโ€‹เบ™เปเบฒโ€‹เปƒเบŠเป‰โ€‹.

เบ—เบธเบเบ„เบฑเป‰เบ‡เบ—เบตเปˆเบ—เปˆเบฒเบ™เบ‚เบฝเบ™เป‚เบ›เบฃเปเบเบฃเบก PDL เปเบšเบšเบขเบทเบ™เบขเบนเปˆเบ„เบปเบ™เบ”เบฝเบง (เป€เบŠเบฑเปˆเบ™: เบขเบนเปˆเบ™เบญเบ "perldl" เบซเบผเบท "pdl2" shells)
เบ—เปˆเบฒเบ™เบ•เป‰เบญเบ‡เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เป‚เบ„เบ‡เบเบฒเบ™เบ”เป‰เบงเบ "เปƒเบŠเป‰ PDL;". เบ„เปเบฒเบชเบฑเปˆเบ‡เบ™เบตเป‰เบ™เปเบฒเป€เบ‚เบปเป‰เบฒเป‚เบกเบ”เบนเบ™ PDL เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™
Perl. เบ™เบตเป‰เปเบกเปˆเบ™เบ•เบปเบงเบขเปˆเบฒเบ‡เป‚เบ„เบ‡เบเบฒเบ™ PDL:

เปƒเบŠเป‰ PDL; # เบ™เปเบฒเป€เบ‚เบปเป‰เบฒเป‚เบกเบ”เบนเบ™ PDL เบ•เบปเป‰เบ™เบ•เป.
เปƒเบŠเป‰ PDL::NiceSlice; # เบ™เปเบฒเป€เบ‚เบปเป‰เบฒเป‚เบกเบ”เบนเบ™ PDL เป€เบžเบตเปˆเบกเป€เบ•เบตเบก.

$b = pdl [2,3,4]; # เบ„เบณเบ–เบฐเปเบซเบผเบ‡เบ—เบตเปˆเบฅเบปเบ‡เบ—เป‰เบฒเบเบ”เป‰เบงเบเป€เบ„เบทเปˆเบญเบ‡เปเบฒเบเบˆเบธเบ”.
$A = pdl [ [1,2,3],[4,5,6] ]; # piddle 2 เบกเบดเบ•เบด.

เบžเบดเบก $A x $b->transpose;

เบšเบฑเบ™เบ—เบถเบเป„เบŸเบฅเปŒเบ™เบตเป‰เป€เบ›เบฑเบ™ "myprogram.pl" เปเบฅเบฐเบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบเบฑเบš:

perl myprogram.pl

เปƒเบซเบกเปˆ: เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡ syntax
เปƒเบ™เป€เบงเบตเบŠเบฑเปˆเบ™เบซเบผเป‰เบฒเบชเบธเบ”เบ‚เบญเบ‡ PDL (เป€เบงเบตเบŠเบฑเปˆเบ™ 2.4.7 เบซเบผเบทเปƒเปเปˆเบเบงเปˆเบฒ) เบกเบต syntax matrix เบ›เปˆเบฝเบ™เปเบ›เบ‡เป„เบ”เป‰.
เบ—เบตเปˆเบชเบฒเบกเบฒเบ”เบกเบตเบฅเบฑเบเบชเบฐเบ™เบฐเบ„เป‰เบฒเบเบ„เบทเบเบฑเบ™เบเบฑเบš Scilab:

1) เปƒเบŠเป‰ a ';' เป€เบžเบทเปˆเบญเบˆเบณเบเบฑเบ”เปเบ–เบง:

$b = pdl q[ 2,3,4 ];
$A = pdl q[ 1,2,3 ; 4,5,6 ];

2) เปƒเบŠเป‰เบŠเปˆเบญเบ‡เบซเบงเปˆเบฒเบ‡เป€เบžเบทเปˆเบญเปเบเบเบญเบปเบ‡เบ›เบฐเบเบญเบš:

$b = pdl q[ 2 3 4 ];
$A = pdl q[ 1 2 3 ; 4 5 6 ];

เป‚เบ”เบเบžเบทเป‰เบ™เบ–เบฒเบ™เปเบฅเป‰เบง, เบ•เบฒเบšเปƒเบ”เบ—เบตเปˆเบ—เปˆเบฒเบ™เบงเบฒเบ‡ "q" เบขเบนเปˆเบ—เบฒเบ‡เบซเบ™เป‰เบฒเบ‚เบญเบ‡เบงเบปเบ‡เป€เบฅเบฑเบšเป€เบ›เบตเบ”, PDL เบ„เบงเบ™ "เป€เบฎเบฑเบ”เบซเบเบฑเบ‡
เป€เบˆเบปเป‰เบฒเปเบฒเบเป€เบ–เบดเบ‡โ€ เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เป€เบˆเบปเป‰เบฒเบชเบฒเบกเบฒเบ”เบ‚เบฝเบ™เป€เบ›เบฑเบ™ syntax เบ—เบตเปˆเบชเบฐเบ”เบงเบเบชเบฐเบšเบฒเบเบเบงเปˆเบฒเบชเบณเบฅเบฑเบšเป€เบˆเบปเป‰เบฒ.

A เปเบšเบš เบˆเบณ เบฅเบญเบ‡ FOR SCILAB เบœเบนเป‰เปƒเบŠเป‰


เบ™เบตเป‰เปเบกเปˆเบ™เป‚เบกเบ”เบนเบ™เบ—เบตเปˆเบœเบนเป‰เปƒเบŠเป‰ Scilab เบ•เป‰เบญเบ‡เบเบฒเบ™เปƒเบŠเป‰:

PDL::NiceSlice
เปƒเบซเป‰ PDL เป€เบ›เบฑเบ™ syntax เบชเปเบฒเบฅเบฑเบš slices (sub-matrices) เบ—เบตเปˆเบชเบฑเป‰เบ™เบเบงเปˆเบฒเปเบฅเบฐเบ„เบธเป‰เบ™เป€เบ„เบตเบเบเบฑเบš
เบœเบนเป‰เปƒเบŠเป‰ Scilab.

// Scilab
b(1:5) --> เป€เบฅเบทเบญเบ 5 เบญเบปเบ‡เบ›เบฐเบเบญเบšเบ—เบณเบญเบดเบ”เบˆเบฒเบ เบ‚.

# PDL เป‚เบ”เบเบšเปเปˆเบกเบต NiceSlice
$b->slice("0:4") --> เป€เบฅเบทเบญเบ 5 เบญเบปเบ‡เบ›เบฐเบเบญเบšเบ—เบณเบญเบดเบ”เบˆเบฒเบ $b.

# PDL เบเบฑเบš NiceSlice
$b(0:4) --> เป€เบฅเบทเบญเบ 5 เบญเบปเบ‡เบ›เบฐเบเบญเบšเบ—เบณเบญเบดเบ”เบˆเบฒเบ $b.

BASIC เบ„เบธเบ™โ€‹เบฅเบฑเบโ€‹เบชเบฐโ€‹เบ™เบฐ


เบžเบฒเบเบ™เบตเป‰เบญเบฐเบ—เบดเบšเบฒเบเบงเปˆเบฒเป„เบงเบเบฐเบเบญเบ™เบ‚เบญเบ‡ PDL เปเบ•เบเบ•เปˆเบฒเบ‡เบˆเบฒเบ Scilab เปเบ™เบงเปƒเบ”. เบœเบนเป‰เปƒเบŠเป‰ Scilab เบชเปˆเบงเบ™เปƒเบซเบเปˆเบˆเบฐเบ•เป‰เบญเบ‡เบเบฒเบ™
เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ—เบตเปˆเบ™เบตเป‰.

เป‚เบ”เบโ€‹เบ—เบปเปˆเบงโ€‹เป„เบ› "gotchas"
เบ•เบปเบงเบŠเบตเป‰เบงเบฑเบ”
เปƒเบ™ PDL, เบ”เบฑเบ”เบŠเบฐเบ™เบตเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ—เบตเปˆ '0' (เป€เบŠเบฑเปˆเบ™ C เปเบฅเบฐ Java), เบšเปเปˆเปเบกเปˆเบ™ 1 (เป€เบŠเบฑเปˆเบ™ Scilab). เบ•เบปเบงเบขเปˆเบฒเบ‡, เบ–เป‰เบฒ
$b เปเบกเปˆเบ™ array เบ—เบตเปˆเบกเบต 5 เบญเบปเบ‡เบ›เบฐเบเบญเบš, เบญเบปเบ‡เบ›เบฐเบเบญเบšเบˆเบฐเบ–เบทเบเบ™เบฑเบšเบˆเบฒเบ 0 เบซเบฒ 4.

เบเบณเบฅเบฑเบ‡เบชเบฐเปเบ”เบ‡เบงเบฑเบ”เบ–เบธ
เบ›เบปเบเบเบฐเบ•เบด Scilab เบชเบฐเปเบ”เบ‡เป€เบ™เบทเป‰เบญเบซเบฒเบงเบฑเบ”เบ–เบธเป‚เบ”เบเบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”. เปƒเบ™ PDL เบ—เปˆเบฒเบ™เบชเบฐเปเบ”เบ‡เบงเบฑเบ”เบ–เบธ
เบขเปˆเบฒเบ‡เบŠเบฑเบ”เป€เบˆเบ™เบ”เป‰เบงเบเบ„เปเบฒเบชเบฑเปˆเบ‡ "เบžเบดเบก" เบซเบผเบทเบ—เบฒเบ‡เบฅเบฑเบ” "p":

Scilab:

--> เบ = 12
a = 12.
--> เบ‚ = 23; // เบชเบฐเบเบฑเบ”เบเบฑเป‰เบ™เบœเบปเบ™เบœเบฐเบฅเบดเบ”.
->

PerlDL:

pdl> $a = 12 # เบšเปเปˆเบกเบตเบœเบปเบ™เบœเบฐเบฅเบดเบ”.
pdl> เบžเบดเบก $a # เบžเบดเบกเบงเบฑเบ”เบ–เบธ.
12
pdl> p $a # "p" เปเบกเปˆเบ™เบซเบเปเป‰เบกเบฒเบˆเบฒเบ "เบžเบดเบก" เปƒเบ™เปเบเบฐ.
12

เบเบฒเบ™เบชเป‰เบฒเบ‡ เบ›เป‰เบฒ
เบ•เบปเบงเปเบ›เปƒเบ™ PDL
เบ•เบปเบงเปเบ›เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ”เป‰เบงเบเป€เบ„เบทเปˆเบญเบ‡เปเบฒเบ '$' เบชเบฐเป€เปเบต.

Scilab: เบ„เปˆเบฒ = 42
PerlDL: $value = 42

syntax เบžเบทเป‰เบ™เบ–เบฒเบ™
เปƒเบŠเป‰เบ•เบปเบงเบชเป‰เบฒเบ‡ "pdl" เป€เบžเบทเปˆเบญเบชเป‰เบฒเบ‡เปƒเบซเบกเปˆ เบ›เบดเบง.

Scilab: v = [1,2,3,4]
PerlDL: $v = pdl [1,2,3,4]

Scilab: A = [ 1,2,3 ; 3,4,5 ]
PerlDL: $A = pdl [ [1,2,3] , [3,4,5] ]

matrices เบ‡เปˆเบฒเบเบ”เบฒเบ
Scilab PDL
------ ------
เบกเบฒเบ•เบฃเบดเบเป€เบšเบทเป‰เบญเบ‡เบ‚เบญเบ‡ one ones(5,5) ones 5,5
เบกเบฒเบ•เบฃเบดเบเป€เบšเบทเป‰เบญเบ‡เบ‚เบญเบ‡เบชเบนเบ™เบชเบนเบ™(5,5)เบชเบนเบ™ 5,5
Random matrix Rand(5,5) Random 5,5
Linear vector 1:5 เบฅเบณเบ”เบฑเบš 5

เบชเบฑเบ‡เป€เบเบ”เป€เบซเบฑเบ™เบงเปˆเบฒเปƒเบ™ PDL เบงเบปเบ‡เป€เบฅเบฑเบšเปƒเบ™เบเบฒเบ™เป‚เบ—เบŸเบฑเบ‡เบŠเบฑเบ™เบกเบฑเบเบˆเบฐเป€เบ›เบฑเบ™เบ—เบฒเบ‡เป€เบฅเบทเบญเบ. เบกเบฑเบ™โ€‹เปเบกเปˆเบ™
เบชเปเบฒเบ„เบฑเบ™เบ—เบตเปˆเบˆเบฐเบฎเบฑเบเบชเบฒเบ•เบฒเบญเบญเบเบชเปเบฒเบฅเบฑเบšเบ„เบงเบฒเบกเบšเปเปˆเปเบ™เปˆเบ™เบญเบ™เบ—เบตเปˆเป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰. เบเบปเบโ€‹เบ•เบปเบงโ€‹เบขเปˆเบฒเบ‡:

pdl> p เบชเบนเบ™ 2, 2 + 2

เบญเบฑเบ™เบ™เบตเป‰เบ„เบงเบ™เปเบ›เป€เบ›เบฑเบ™ "เบชเบนเบ™(2,2) + 2" เบซเบผเบท "เบชเบนเบ™ 2, (2+2)" เบšเป? เบ—เบฑเบ‡เบชเบญเบ‡เปเบกเปˆเบ™
เบ–เบฐเปเบซเบผเบ‡เบเบฒเบ™เบ—เบตเปˆเบ–เบทเบเบ•เป‰เบญเบ‡:

pdl> p zeros(2,2) + 2
[
[2 2]
[2 2]
]
pdl> p เบชเบนเบ™ 2, (2+2)
[
[0 0]
[0 0]
[0 0]
[0 0]
]

เปเบ—เบ™เบ—เบตเปˆเบˆเบฐเบžเบฐเบเบฒเบเบฒเบกเบˆเบทเปˆเบˆเปเบฒเบฅเปเบฒเบ”เบฑเบšเบ„เบงเบฒเบกเบชเปเบฒเบ„เบฑเบ™เบ‚เบญเบ‡ Perl, เบกเบฑเบ™เบ”เบตเบ—เบตเปˆเบชเบธเบ”เบ—เบตเปˆเบˆเบฐเปƒเบŠเป‰
เบงเบปเบ‡เป€เบฅเบฑเบšเป€เบžเบทเปˆเบญเป€เบฎเบฑเบ”เปƒเบซเป‰เบฅเบฐเบซเบฑเบ”เบ‚เบญเบ‡เบ—เปˆเบฒเบ™เบšเปเปˆเบŠเบฑเบ”เป€เบˆเบ™.

เบฅเบณเบ”เบฑเบšเป„เบฅเบเบฐเบซเปˆเบฒเบ‡
Scilab: --> linspace(2,10,5)
ans = 2. 4. 6. 8. 10.

PerlDL: pdl> p เบชเบนเบ™(5)->xlinvals(2,10)
[2 4 6 8 10]

เบ„เปเบฒเบญเบฐเบ—เบดเบšเบฒเบ: เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ”เป‰เบงเบ piddle 1 เบกเบดเบ•เบดเบ‚เบญเบ‡ 5 เบญเบปเบ‡เบ›เบฐเบเบญเบšเปเบฅเบฐเปƒเบซเป‰เบกเบฑเบ™เป€เบ—เบปเปˆเบฒเบ—เบฝเบกเบเบฑเบ™
เป„เบฅเบเบฐเบซเปˆเบฒเบ‡เบˆเบฒเบ 2 เบซเบฒ 10.

Scilab เบกเบตเบเบฒเบ™เป‚เบ—เบซเบฒเบซเบ™เป‰เบฒเบ—เบตเปˆเบ”เบฝเบงเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ™เบตเป‰. เปƒเบ™เบ—เบฒเบ‡เบเบปเบ‡เบเบฑเบ™เบ‚เป‰เบฒเบก, เบงเบดเบ—เบตเบเบฒเบ™เบ‚เบญเบ‡ PDL เปเบกเปˆเบ™เบซเบผเบฒเบเบเบงเปˆเบฒ
เบ›เปˆเบฝเบ™เปเบ›เบ‡เป„เบ”เป‰:

pdl> p zeros(5,5)->xlinvals(2,10)
[
[ 2 4 6 8 10 ]
[ 2 4 6 8 10 ]
[ 2 4 6 8 10 ]
[ 2 4 6 8 10 ]
[ 2 4 6 8 10 ]
]
pdl> p zeros(5,5)->ylinvals(2,10)
[
[ 2 2 2 2 2 ]
[ 4 4 4 4 4 ]
[ 6 6 6 6 6 ]
[ 8 8 8 8 8 ]
[10 10 10 10 10]
]
pdl> p zeros(3,3,3)->zlinvals(2,6)
[
[
[2 2 2]
[2 2 2]
[2 2 2]
]
[
[4 4 4]
[4 4 4]
[4 4 4]
]
[
[6 6 6]
[6 6 6]
[6 6 6]
]
]

Slicing เปเบฅเบฐเบ•เบปเบงเบŠเบตเป‰เบงเบฑเบ”
เบเบฒเบ™เบชเบฐเบเบฑเบ”เป€เบญเบปเบฒเบŠเบธเบ”เบเปˆเบญเบเบˆเบฒเบเบเบฒเบ™เบฅเบงเบšเบฅเบงเบกเบ‚เปเป‰เบกเบนเบ™เปเบกเปˆเบ™เป€เบญเบตเป‰เบ™เบงเปˆเบฒ เบเบฒเบ™เบ•เบฑเบ”. เปเบเบฐ PDL เปเบฅเบฐ
Scilab เบกเบต syntax เบ„เป‰เบฒเบเบ„เบทเบเบฑเบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™ slicing, เปเบ•เปˆเบกเบตเบชเบญเบ‡เบ„เบงเบฒเบกเปเบ•เบเบ•เปˆเบฒเบ‡เบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™:

1) เบ”เบฑเบ”เบŠเบฐเบ™เบต PDL เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ—เบตเปˆ 0, เบ„เบทเบเบฑเบš C เปเบฅเบฐ Java. Scilab เป€เบฅเบตเปˆเบกเบ”เบฑเบ”เบŠเบฐเบ™เบตเบขเบนเปˆเบ—เบตเปˆ 1.

2) เปƒเบ™ Scilab เบ—เปˆเบฒเบ™เบ„เบดเบ”เบงเปˆเบฒ "เปเบ–เบงเปเบฅเบฐเบ–เบฑเบ™". เปƒเบ™ PDL, เบ„เบดเบ”เบงเปˆเบฒ "x เปเบฅเบฐ y".

Scilab PerlDL
------ ------
--> A pdl> p $A
A = [
1. 2. 3. [1 2 3]
4. 5. 6. [4 5 6]
7. 8. 9. [7 8 9]
]
-------------------------------------------------- -----
(เปเบ–เบง = 2, col = 1) (x = 0, y = 1)
--> A(2,1) pdl> p $A(0,1)
ans = [
4. [4]
]
-------------------------------------------------- -----
(เปเบ–เบง = 2 เบซเบฒ 3, col = 1 เบซเบฒ 2) (x = 0 เบซเบฒ 1, y = 1 เบซเบฒ 2)
--> A(2:3,1:2) pdl> p $A(0:1,1:2)
ans = [
4. 5. [4 5]
7. 8. [7 8]
]

เบเบฒเบ™โ€‹เป€เบ•เบทเบญเบ™โ€‹เป„เบž
เป€เบกเบทเปˆเบญเบ—เปˆเบฒเบ™เบ‚เบฝเบ™เป‚เบ›เบผเปเบเบผเบก PDL เปเบšเบšเบขเบทเบ™เบขเบนเปˆเบ„เบปเบ™เบ”เบฝเบง, เบ—เปˆเบฒเบ™เบ•เป‰เบญเบ‡เบ›เบฐเบเบญเบš PDL::NiceSlice
เป‚เบกเบ”เบนเบ™. เป€เบšเบดเปˆเบ‡เบžเบฒเบเบเปˆเบญเบ™ "MODULES FOR SCILAB เบœเบนเป‰เปƒเบŠเป‰"เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป€เบžเบตเปˆเบกเป€เบ•เบตเบก
เบ‚เปเป‰เบกเบนเบ™เบ‚เปˆเบฒเบงเบชเบฒเบ™.

เปƒเบŠเป‰ PDL; # เบ™เปเบฒเป€เบ‚เบปเป‰เบฒเป‚เบกเบ”เบนเบ™ PDL เบ•เบปเป‰เบ™เบ•เป.
เปƒเบŠเป‰ PDL::NiceSlice; # syntax เบ‡เบฒเบกเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ•เบฑเบ”.

$A = Random 4,4;
เบžเบดเบก $A(0,1);

เบกเบฒเบ•เบฃเบดเบเป€เบšเบทเป‰เบญเบ‡ เบเบฒเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบ‡เบฒเบ™
เบเบฒเบ™เบ„เบนเบ™เบกเบฒเบ•เบฃเบดเบเป€เบšเบทเป‰เบญเบ‡
Scilab: A * B
PerlDL: $A x $B

เบเบฒเบ™เบ„เบนเบ™เบญเบปเบ‡เบ›เบฐเบเบญเบšเบ—เบตเปˆเบชเบฐเบซเบฅเบฒเบ”
Scilab: A .* เบ‚
PerlDL: $A * $B

เบซเบฑเบ™เบ›เปˆเบฝเบ™
Scilab: A'
PerlDL: $A->transpose

เบซเบ™เป‰เบฒเบ—เบตเปˆ เบ—เบตเปˆ เบฅเบงเบก เบ‚เปเป‰เบกเบนเบ™
เบšเบฒเบ‡เบŸเบฑเบ‡เบŠเบฑเบ™ (เป€เบŠเบฑเปˆเบ™ "sum", "max" เปเบฅเบฐ "min") เบฅเบงเบกเบ‚เปเป‰เบกเบนเบ™เบชเปเบฒเบฅเบฑเบšเบŠเบธเบ”เบ‚เปเป‰เบกเบนเบ™ N-dimensional.
Scilab เปเบฅเบฐ PDL เบ—เบฑเบ‡เบชเบญเบ‡เปƒเบซเป‰เบ—เปˆเบฒเบ™เบ—เบฒเบ‡เป€เบฅเบทเบญเบเบ—เบตเปˆเบˆเบฐเบ™เปเบฒเปƒเบŠเป‰เบซเบ™เป‰เบฒเบ—เบตเปˆเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เบเบฑเบšเบŠเบธเบ”เบ‚เปเป‰เบกเบนเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เบซเบผเบท
เบเบฑเบšเบžเบฝเบ‡เปเบ•เปˆเบซเบ™เบถเปˆเบ‡เบกเบดเบ•เบด.

Scilab เปƒเบ™ Scilab, เบซเบ™เป‰เบฒเบ—เบตเปˆเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เป€เบฎเบฑเบ”เบงเบฝเบเบ•เบฒเบกเบ‚เปเป‰เบกเบนเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เบ—เบตเปˆเบเปเบฒเบ™เบปเบ”เป„เบงเป‰เป‚เบ”เบเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™, เปเบฅเบฐ
เบžเบฒเบฅเบฒเบกเบดเป€เบ•เบตเบ—เบฒเบ‡เป€เบฅเบทเบญเบ "r" เบซเบผเบท "c" เป€เบฎเบฑเบ”เปƒเบซเป‰เบžเบงเบเป€เบ‚เบปเบฒเบ›เบฐเบ•เบดเบšเบฑเบ”เบ•เปเปˆเปเบ–เบงเบซเบผเบทเบ–เบฑเบ™.

--> A = [ 1,5,4 ; 4,2,1 ]
A = 1. 5. 4 .
4. 2. 1.
--> เบชเบนเบ‡เบชเบธเบ” (A)
ans = 5
--> เบชเบนเบ‡เบชเบธเบ” (A, "r")
ans = 4. 5. 4.
--> เบชเบนเบ‡เบชเบธเบ” (A, "c")
ans = 5.
4.

PDL PDL เบชเบฐเป€เบซเบ™เบตเบชเบญเบ‡เบซเบ™เป‰เบฒเบ—เบตเปˆเบชเปเบฒเบฅเบฑเบšเปเบ•เปˆเบฅเบฐเบฅเบฑเบเบชเบฐเบ™เบฐ.

เบœเบปเบ™เบฅเบงเบกเบ—เบฝเบšเบเบฑเบš sumover
เบชเบฐเป€เบฅเปˆเบเบ—เบฝเบšเบเบฑเบšเบชเบฐเป€เบฅเปˆเบ
เบชเบนเบ‡เบชเบธเบ”เบ—เบฝเบšเบเบฑเบšเบชเบนเบ‡เบชเบธเบ”
เบ‚เบฑเป‰เบ™เบ•เปˆเบณเบ—เบฝเบšเบเบฑเบšเบ‚เบฑเป‰เบ™เบ•เปˆเบณ

เป„เบ”เป‰ เบเบฒเบง เบŠเบทเปˆ เป€เบฎเบฑเบ”เบงเบฝเบเปƒเบ™เป„เบฅเบเบฐเบ‚เบฐเบซเบ™เบฒเบ”, เปƒเบ™เบ‚เบฐเบ™เบฐเบ—เบตเปˆ เบชเบฑเป‰เบ™ เบŠเบทเปˆ เป€เบฎเบฑเบ”เบงเบฝเบเบ—เบปเปˆเบง
เบ›เบดเบง.

pdl> p $A = pdl [ [1,5,4] , [4,2,1] ]
[
[1 5 4]
[4 2 1]
]
pdl> p $A->เบชเบนเบ‡เบชเบธเบ”
[5 4]
pdl> p $A->transpose->เบชเบนเบ‡เบชเบธเบ”
[4 5 4]
pdl> p $A->เบชเบนเบ‡เบชเบธเบ”
5

เบชเบนเบ‡เบเบงเปˆเบฒ dimensional เบ‚เปเป‰เบกเบนเบ™ เบŠเบธเบ”
เบšเบฑเบ™เบซเบฒเบ—เบตเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เปเบกเปˆเบ™เบงเบดเบ—เบตเบ—เบตเปˆ Scilab เปเบฅเบฐ PDL เป€เบ‚เบปเป‰เบฒเปƒเบˆเบŠเบธเบ”เบ‚เปเป‰เบกเบนเบ™เบ‚เบญเบ‡เบกเบดเบ•เบดเบ—เบตเปˆเบชเบนเบ‡เบเบงเปˆเบฒ. Scilab เปเบกเปˆเบ™
เบญเบญเบเปเบšเบšเบกเบฒเบชเปเบฒเบฅเบฑเบš vectors 1D เปเบฅเบฐ matrices 2D เบ—เบตเปˆเบกเบตเบเบฒเบ™เป€เบžเบตเปˆเบกเบงเบฑเบ”เบ–เบธเบกเบดเบ•เบดเบฅเบฐเบ”เบฑเบšเบ—เบตเปˆเบชเบนเบ‡เบเบงเปˆเบฒ. เปƒเบ™
เบเบปเบ‡เบเบฑเบ™เบ‚เป‰เบฒเบก, PDL เบ–เบทเบเบญเบญเบเปเบšเบšเบกเบฒเบชเปเบฒเบฅเบฑเบš N-dimensional piddles เบ•เบฑเป‰เบ‡เปเบ•เปˆเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™. เบ™เบตเป‰เบ™เปเบฒเป„เบ›เบชเบนเปˆเบเบฒเบ™เบˆเปเบฒเบ™เบงเบ™เบซเบ™เป‰เบญเบเบซเบ™เบถเปˆเบ‡
เบ„เบงเบฒเบกเปเบ›เบเปƒเบˆเปƒเบ™ Scilab เบ—เบตเปˆเบšเปเปˆเป€เบเบตเบ”เบ‚เบทเป‰เบ™เปƒเบ™ PDL:

Scilab เป€เบซเบฑเบ™ vector เป€เบ›เบฑเบ™ 2D matrix.
Scilab PerlDL
------ ------
--> vector = [1,2,3,4]; pdl> $vector = pdl [1,2,3,4]
--> เบ‚เบฐเบซเบ™เบฒเบ”(vector) pdl> p $vector-> dims
ans = 1 4 4

Scilab เป€เบซเบฑเบ™ "[1,2,3,4]" เป€เบ›เบฑเบ™ 2D matrix (1x4 matrix). PDL เป€เบซเบฑเบ™เบงเปˆเบฒเบกเบฑเบ™เป€เบ›เบฑเบ™ vector 1D: A
เบ‚เบฐเบซเบ™เบฒเบ”เบ”เบฝเบงเบ‚เบญเบ‡เบ‚เบฐเบซเบ™เบฒเบ” 4.

เปเบ•เปˆ Scilab เบšเปเปˆเบชเบปเบ™เปƒเบˆเบ‚เบฐเปœเบฒเบ”เบชเบธเบ”เบ—เป‰เบฒเบเบ‚เบญเบ‡ 4x1x1 matrix.
Scilab PerlDL
------ ------
--> A = ones(4,1,1); pdl> $A = ones 4,1,1
--> เบ‚เบฐเปœเบฒเบ”(A) pdl> p $A-> dims
ans = 4 1 4 1 1

เปเบฅเบฐ Scilab เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฑเบš 4x1x1 matrix เบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบˆเบฒเบ 1x1x4 matrix.
Scilab PerlDL
------ ------
--> A = ones(1,1,4); pdl> $A = ones 1,1,4
--> เบ‚เบฐเปœเบฒเบ”(A) pdl> p $A-> dims
ans = 1 1 4 1 1 4

Scilab เบšเปเปˆเบกเบต syntax เป‚เบ”เบเบเบปเบ‡เบชเปเบฒเบฅเบฑเบš ND arrays.
pdl> $A = pdl [[[1,2,3],[4,5,6]], [[2,3,4],[5,6,7]]]
pdl> p $A-> dims
+3 2 2

เบ„เบธเบ™เบ™เบฐเบชเบปเบกเบšเบฑเบ”เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™.
เปƒเบ™ Scilab, เบฅเบฑเบเบชเบฐเบ™เบฐเบˆเปเบฒเบ™เบงเบ™เบซเบ™เบถเปˆเบ‡เปเบกเปˆเบ™เบšเปเปˆเบกเบตเบชเปเบฒเบฅเบฑเบš ND arrays. เปƒเบ™ PDL, เบžเบฝเบ‡เปเบ•เปˆเบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เปƒเบ”เป†
เบ„เบธเบ™โ€‹เบ™เบฐโ€‹เบชเบปเบกโ€‹เบšเบฑเบ”โ€‹เบชเบฐโ€‹เบซเบ™เบฑเบšโ€‹เบชเบฐโ€‹เบซเบ™เบนเบ™โ€‹เป‚เบ”เบ 1D เปเบฅเบฐ 2D piddlesโ€‹, เบชเบฐโ€‹เบซเบ™เบฑเบšโ€‹เบชเบฐโ€‹เบซเบ™เบนเบ™โ€‹เป€เบ—เบปเปˆเบฒโ€‹เบ—เบฝเบกโ€‹เบเบฑเบ™โ€‹เป‚เบ”เบ N-dimensional
เบ›เป‰เบฒ. เบ›เบปเบเบเบฐเบ•เบดเปเบฅเป‰เบงเบšเปเปˆเบกเบตเบ„เบงเบฒเบกเปเบ•เบเบ•เปˆเบฒเบ‡:

Scilab PerlDL
------ ------
--> A = ones(3,3,3); pdl> $A = ones(3,3,3);
--> A' pdl> เปเบ› $A
=> เบœเบดเบ”เบžเบฒเบ” => เบ•เบปเบเบฅเบปเบ‡

Loop เป‚เบ„เบ‡เบชเป‰เบฒเบ‡
Perl เบกเบตเป‚เบ„เบ‡เบชเป‰เบฒเบ‡ loop เบซเบผเบฒเบ, เปเบ•เปˆเบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเบชเบฐเปเบ”เบ‡เบžเบฝเบ‡เปเบ•เปˆเบซเบ™เบถเปˆเบ‡เบ—เบตเปˆเบ„เบธเป‰เบ™เป€เบ„เบตเบเบ—เบตเปˆเบชเบธเบ”
เบœเบนเป‰เปƒเบŠเป‰ Scilab:

Scilab PerlDL
------ ------
เบชเปเบฒเบฅเบฑเบš i = 1:10 เบชเปเบฒเบฅเบฑเบš $i (1..10) {
disp(i) เบžเบดเบก $i
เบˆเบปเบš }

เบซเบกเบฒเบโ€‹เป€เบซเบ”โ€‹ เบขเปˆเบฒเปƒเบŠเป‰ for-loops เบชเปเบฒเบฅเบฑเบšเบงเบฝเบเบ‡เบฒเบ™เบ•เบปเบงเป€เบฅเบ. Perl's for-loops เปเบกเปˆเบ™เป„เบงเบเบงเปˆเบฒ Scilab's,
เปเบ•เปˆเบžเบงเบเป€เบ‚เบปเบฒเบ—เบฑเบ‡เบชเบญเบ‡เบˆเบทเบ”เป†เบ•เปเปˆเบเบฑเบšเบเบฒเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบ‡เบฒเบ™ "vectorized". PDL เบกเบตเบซเบผเบฒเบเป€เบ„เบทเปˆเบญเบ‡เบกเบทเบ—เบตเปˆ
เบญเปเบฒเบ™เบงเบเบ„เบงเบฒเบกเบชเบฐเบ”เบงเบเปƒเบ™เบเบฒเบ™เบ‚เบฝเบ™เป‚เบ›เบผเปเบเบผเบก vectorized. เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เปเบกเปˆเบ™เป€เบเบตเบ™เบ‚เบญเบšเป€เบ‚เบ”เบ‚เบญเบ‡เบ„เปเบฒเปเบ™เบฐเบ™เปเบฒเบ™เบตเป‰. เป€เบ–เบดเบ‡
เบชเบถเบเบชเบฒเป€เบžเบตเปˆเบกเป€เบ•เบตเบก, เป€เบšเบดเปˆเบ‡: PDL::Indexing, PDL::Threading, and PDL::PP.

เป€เบŠเบฑเปˆเบ™เบ”เบฝเบงเบเบฑเบ™, เบšเปเปˆเป€เบ„เบตเบเปƒเบŠเป‰ 1..10 เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบ•เบปเบงเป€เบฅเบ, เป€เบ–เบดเบ‡เปเบกเปˆเบ™เบงเปˆเบฒเบขเบนเปˆเบ™เบญเบ for-loop. 1..10 เปเบกเปˆเบ™ เบ
เบญเบฐเป€เบฃ Perl. Perl arrays เบ–เบทเบเบญเบญเบเปเบšเบšเบกเบฒเป€เบžเบทเปˆเบญเบ„เบงเบฒเบกเบเบทเบ”เบซเบเบธเปˆเบ™, เบšเปเปˆเปเบกเปˆเบ™เบ„เบงเบฒเบกเป„เบง. เปƒเบŠเป‰ เบ›เป‰เบฒ เปเบ—เบ™เบ—เบตเปˆเบˆเบฐเป€เบ›เบฑเบ™.
เป€เบžเบทเปˆเบญเบฎเบฝเบ™เบฎเบนเป‰เป€เบžเบตเปˆเบกเป€เบ•เบตเบก, เป€เบšเบดเปˆเบ‡เบžเบฒเบเบ•เปเปˆเป„เบ›.

เบ›เป‰เบฒ vs Perl เบญเบฒเป€เบฅ
เบกเบฑเบ™เป€เบ›เบฑเบ™เบชเบดเปˆเบ‡เบชเปเบฒเบ„เบฑเบ™เบ—เบตเปˆเบˆเบฐเบชเบฑเบ‡เป€เบเบ”เบ„เบงเบฒเบกเปเบ•เบเบ•เปˆเบฒเบ‡เบฅเบฐเบซเบงเปˆเบฒเบ‡ a Piddle เปเบฅเบฐ array Perl. Perl เบกเบต
เบงเบฑเบ”เบ–เบธ array เบˆเบธเบ”เบ›เบฐเบชเบปเบ‡เบ—เบปเปˆเบงเป„เบ›เบ—เบตเปˆเบชเบฒเบกเบฒเบ”เบ–เบทเบ›เบฐเป€เบžเบ”เบ‚เบญเบ‡เบญเบปเบ‡เบ›เบฐเบเบญเบšเปƒเบ”เป†:

@perl_array = 1..10;
@perl_array = ( 12, "เบชเบฐเบšเบฒเบเบ”เบต" );
@perl_array = ( 1, 2, 3, \@another_perl_array, เบฅเปเบฒเบ”เบฑเบš(5) );

Perl arrays เบŠเปˆเบงเบเปƒเบซเป‰เบ—เปˆเบฒเบ™เบชเป‰เบฒเบ‡เป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบกเบตเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบš (เป€เบšเบดเปˆเบ‡ เบ‚เปเป‰เบกเบนเบ™ เป‚เบ„เบ‡เบชเป‰เบฒเบ‡ เบ‚เป‰เบฒเบ‡เบฅเบธเปˆเบกเบ™เบตเป‰), เปเบ•เปˆ
เบžเบงเบเป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒ เบกเบต เบšเปเปˆ เบเบฒเบ™เบญเบญเบเปเบšเบš เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™ numerical เบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบ. เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ™เบฑเป‰เบ™, เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰ เบ›เป‰เบฒ:

$pdl = pdl [ 1, 2, 3, 4 ];
$pdl = เบฅเปเบฒเบ”เบฑเบš 10_000_000;
$pdl = ones 600, 600;

เบเบปเบโ€‹เบ•เบปเบงโ€‹เบขเปˆเบฒเบ‡:

$points = pdl 1..10_000_000 # 4.7 เบงเบดเบ™เบฒเบ—เบต
$points = เบฅเบณเบ”เบฑเบš 10_000_000 # milliseconds

TIP: เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เปƒเบŠเป‰เบ‚เบตเบ”เบเป‰เบญเบ‡เปƒเบ™เบ•เบปเบงเป€เบฅเบ ("10_000_000" เบญเปˆเบฒเบ™เป„เบ”เป‰เบ”เบตเบเบงเปˆเบฒ 10000000).

เป€เบ‡เบทเปˆเบญเบ™เป„เบ‚
Perl เบกเบตเบซเบผเบฒเบเป€เบ‡เบทเปˆเบญเบ™เป„เบ‚, เปเบ•เปˆเบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเบชเบฐเปเบ”เบ‡เบžเบฝเบ‡เปเบ•เปˆเบซเบ™เบถเปˆเบ‡เบ—เบตเปˆเบ„เบธเป‰เบ™เป€เบ„เบตเบเบเบฑเบš Scilab เบ—เบตเปˆเบชเบธเบ”
เบœเบนเป‰เปƒเบŠเป‰:

Scilab PerlDL
------ ------
เบ–เป‰เบฒเบ„เปˆเบฒ > MAX เบ–เป‰เบฒ ($value > $MAX) {
disp("เปƒเบซเบเปˆเป€เบเบตเบ™เป„เบ›") เบžเบดเบก "เปƒเบซเบเปˆเป€เบเบตเบ™เป„เบ›\n";
elseif เบ„เปˆเบฒ < MIN } elsif ($value < $MIN) {
disp("เบ™เป‰เบญเบเป€เบเบตเบ™เป„เบ›") เบžเบดเบก "เบ™เป‰เบญเบเป€เบเบตเบ™เป„เบ›\n";
else } else {
disp("Perfect!") เบžเบดเบก "Perfect!\n";
เบˆเบปเบš }

เบซเบกเบฒเบโ€‹เป€เบซเบ”โ€‹ เบ™เบตเป‰เปเบกเปˆเบ™ "gotcha":

Scilab: elseif
PerlDL: elsif

เบ–เป‰เบฒเป€เบ‡เบทเปˆเบญเบ™เป„เบ‚เบ‚เบญเบ‡เบ—เปˆเบฒเบ™เป€เบฎเบฑเบ”เปƒเบซเป‰ syntax เบœเบดเบ”เบžเบฒเบ”, เบเบงเบ”เป€เบšเบดเปˆเบ‡เบงเปˆเบฒเบ—เปˆเบฒเบ™เบ‚เบฝเบ™ "elsif" เบ‚เบญเบ‡เบ—เปˆเบฒเบ™
เบขเปˆเบฒเบ‡เบ–เบทเบเบ•เป‰เบญเบ‡.

เบ—เบดเบกเป‚เบ•เบงเบ”เบต (เบกเบต Is เป€เบžเบตเปˆเบกเป€เบ•เบตเบก เบเปˆเบงเบฒ เบซเบ™เบถเปˆเบ‡ เบ—เบฒเบ‡ To Do เบกเบฑเบ™)
เบซเบ™เบถเปˆเบ‡เปƒเบ™เบ„เบงเบฒเบกเปเบ•เบเบ•เปˆเบฒเบ‡เบ—เบตเปˆเบซเบ™เป‰เบฒเบชเบปเบ™เปƒเบˆเบ—เบตเปˆเบชเบธเบ”เบฅเบฐเบซเบงเปˆเบฒเบ‡ PDL เปเบฅเบฐเป€เบ„เบทเปˆเบญเบ‡เบกเบทเบญเบทเปˆเบ™เป†เปเบกเปˆเบ™เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบ
เบ‚เบญเบ‡โ€‹เบžเบฒโ€‹เบชเบฒ Perlโ€‹. TIMTOWDI, เบซเบผเบท "เบกเบตเบซเบผเบฒเบเบเบงเปˆเบฒเบซเบ™เบถเปˆเบ‡เบงเบดเบ—เบตเบ—เบตเปˆเบˆเบฐเป€เบฎเบฑเบ”", เปเบกเปˆเบ™เบ„เปเบฒเบ‚เบงเบฑเบ™เบ‚เบญเบ‡ Perl.

Perl เบ–เบทเบเบ‚เบฝเบ™เป‚เบ”เบเบ™เบฑเบเบžเบฒเบชเบฒเบชเบฒเบ”, เปเบฅเบฐเบซเบ™เบถเปˆเบ‡เปƒเบ™เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เบเปเบฒเบ™เบปเบ”เบ‚เบญเบ‡เบกเบฑเบ™เปเบกเปˆเบ™เบงเปˆเบฒเบ„เปเบฒเบ–เบฐเปเบซเบผเบ‡เบ—เบตเปˆเบชเบฒเบกเบฒเบ”เป€เบฎเบฑเบ”เป„เบ”เป‰
เบ–เบทเบเบชเป‰เบฒเบ‡เบ‚เบทเป‰เบ™เบ”เป‰เบงเบเบงเบดเบ—เบตเบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™เป€เบžเบทเปˆเบญเปƒเบซเป‰เบžเบฒเบชเบฒเบกเบตเบ„เบงเบฒเบกเบฎเบนเป‰เบชเบถเบเบ—เปเบฒเบกเบฐเบŠเบฒเบ”เบซเบผเบฒเบเบ‚เบถเป‰เบ™. เบ•เบปเบงเบขเปˆเบฒเบ‡, เป€เบˆเบปเป‰เบฒ
เบ„เบปเบ‡เบˆเบฐเบšเปเปˆเป€เบงเบปเป‰เบฒเบเบฑเบšเปเบนเปˆเบงเปˆเบฒ:

"เปƒเบ™เบ‚เบฐเบ™เบฐเบ—เบตเปˆเบ‚เป‰เบญเบเบšเปเปˆเบชเปเบฒเป€เบฅเบฑเบ”, เบ‚เป‰เบญเบเบˆเบฐเป€เบฎเบฑเบ”เบงเบฝเบเบ•เปเปˆเป„เบ›."

เบžเบฒเบชเบฒเบ‚เบญเบ‡เบกเบฐเบ™เบธเบ”เบกเบตเบ„เบงเบฒเบกเบเบทเบ”เบซเบเบธเปˆเบ™เบซเบผเบฒเบเบเบงเปˆเบฒเบ™เบฑเป‰เบ™. เปเบ—เบ™เบ—เบตเปˆเบˆเบฐ, เป€เบˆเบปเป‰เบฒเบกเบฑเบเบˆเบฐเป€เบงเบปเป‰เบฒเบงเปˆเบฒ:

"เบ‚เป‰เบญเบเบˆเบฐเป€เบฎเบฑเบ”เบงเบฝเบเบ•เปเปˆเป„เบ›เบˆเบปเบ™เบเปˆเบงเบฒเบ‚เป‰เบญเบเบชเปเบฒเป€เบฅเบฑเบ”."

เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบฎเบฒเบเบžเบฒเบชเบฒเบ‚เบญเบ‡เบกเบฑเบ™, Perl เปเบกเปˆเบ™เบžเบฒเบชเบฒเบเบฒเบ™เบ‚เบฝเบ™เป‚เบ›เบผเปเบเบผเบกเบ”เบฝเบงเบ—เบตเปˆเบกเบตเบ›เบฐเป€เบžเบ”เบ™เบตเป‰
เบ„เบงเบฒเบกเบเบทเบ”เบซเบเบธเปˆเบ™. เบ•เบปเบงเบขเปˆเบฒเบ‡, Perl เบกเบต while-loops เปเบฅเบฐ if-statements เปเบšเบšเบ”เบฑเป‰เบ‡เป€เบ”เบตเบก:

เปƒเบ™เบ‚เบฐเบ™เบฐเบ—เบตเปˆ ( ! เบชเปเบฒเป€เบฅเบฑเบ” () ) {
keep_working();
}

เบ–เป‰เบฒ ( ! wife_angry() ) {
kiss_wife();
}

เปเบ•เปˆเบกเบฑเบ™เบเบฑเบ‡เบชเบฐเป€เบซเบ™เบตเบ—เบฒเบ‡เป€เบฅเบทเบญเบ เบˆเบปเบ™เบเปˆเบงเบฒ เปเบฅเบฐ เป€เบงเบฑเป‰เบ™เป€เบชเบเปเบ•เปˆเบงเปˆเบฒ เบ–เบฐเปเบซเบผเบ‡เบเบฒเบ™:

เบˆเบปเบ™เบเปˆเบงเบฒ (เบชเปเบฒเป€เบฅเบฑเบ” () ) {
keep_working();
}

เป€เบงเบฑเป‰เบ™เป€เบชเบเปเบ•เปˆ (เป€เบกเบ_angry() ) {
kiss_wife();
}

เปเบฅเบฐ Perl เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ—เปˆเบฒเบ™เบ‚เบฝเบ™ loops เปเบฅเบฐเป€เบ‡เบทเปˆเบญเบ™เป„เบ‚เปƒเบ™เบฎเบนเบšเปเบšเบš "postfix":

keep_working() เบˆเบปเบ™เบเปˆเบงเบฒเบชเปเบฒเป€เบฅเบฑเบ”();

kiss_wife() เป€เบงเบฑเป‰เบ™เป€เบชเบเปเบ•เปˆ wife_angry();

เบ”เป‰เบงเบเบงเบดเบ—เบตเบ™เบตเป‰, Perl เบกเบฑเบเบˆเบฐเบŠเปˆเบงเบเปƒเบซเป‰เบ—เปˆเบฒเบ™เบ‚เบฝเบ™เบฅเบฐเบซเบฑเบ”เบ—เปเบฒเบกเบฐเบŠเบฒเบ”เบซเบผเบฒเบ, เป€เบ‚เบปเป‰เบฒเปƒเบˆเบ‡เปˆเบฒเบเบเบงเปˆเบฒ
เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เปƒเบ™เบžเบฒเบชเบฒเบเบฒเบ™เบ‚เบฝเบ™เป‚เบ›เบผเปเบเบผเบกเบ—เบตเปˆเบˆเบณเบเบฑเบ”เบซเบผเบฒเบเบ‚เบถเป‰เบ™.

เบซเบ™เป‰เบฒเบ—เบตเปˆ
syntax เบ‚เบญเบ‡ PDL เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ›เบฐเบเบฒเบ”เบซเบ™เป‰เบฒเบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™เบขเปˆเบฒเบ‡เบซเบผเบงเบ‡เบซเบผเบฒเบเบˆเบฒเบ Scilab's.

Scilab PerlDL
------ ------
function retval = foo(x,y) sub foo {
retval = x.**2 + x.*y my ($x, $y) = @_;
endfunction return $x**2 + $x*$y;
}

เบšเปเปˆเป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบ‚เบปเปˆเบกเบ‚เบนเปˆเป‚เบ”เบ syntax เปƒเบซเบกเปˆเบ—เบฑเบ‡เบซเบกเบปเบ”. เบ™เบตเป‰เปเบกเปˆเบ™เบเบฒเบ™เปเบฅเปˆเบ™เป„เบงเป‚เบ”เบเบœเปˆเบฒเบ™เบŸเบฑเบ‡เบŠเบฑเบ™
เบ›เบฐเบเบฒเบ”เปƒเบ™ PDL:

1) "เบเบฒเบ™เบเปˆเบญเบ" เบซเบเปเป‰เบกเบฒเบˆเบฒเบ "เบŠเบธเบ”เบเปˆเบญเบ".

2) "my" เบ›เบฐเบเบฒเบ”เบ•เบปเบงเปเบ›เป€เบ›เบฑเบ™เบ—เป‰เบญเบ‡เบ–เบดเปˆเบ™เบ•เปเปˆเบเบฑเบšเบŸเบฑเบ‡เบŠเบฑเบ™.

3) "@_" เป€เบ›เบฑเบ™ array Perl เบžเบดเป€เบชเบ”เบ—เบตเปˆเบ–เบทเบžเบฒเบฅเบฒเบกเบดเป€เบ•เบตเบŸเบฑเบ‡เบŠเบฑเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”. เบ™เบตเป‰เบญเบฒเบ”เบˆเบฐเป€เบšเบดเปˆเบ‡เบ„เบทเบงเปˆเบฒ
เบ„เบทเบเบฑเบšเบงเบดเบ—เบตเบ—เบตเปˆเปเบ›เบเบ—เบตเปˆเบˆเบฐเป€เบฎเบฑเบ”เบซเบ™เป‰เบฒเบ—เบตเปˆ, เปเบ•เปˆเบกเบฑเบ™เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ—เปˆเบฒเบ™เป€เบฎเบฑเบ”เบซเบ™เป‰เบฒเบ—เบตเปˆเปƒเบŠเป‰ a
เบˆเปเบฒเบ™เบงเบ™เบ•เบปเบงเบเปเบฒเบ™เบปเบ”เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡. เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบเบปเบเบ•เบปเบงเบขเปˆเบฒเบ‡, เบŸเบฑเบ‡เบŠเบฑเบ™เบ•เปเปˆเป„เบ›เบ™เบตเป‰เปƒเบŠเป‰เป€เบงเบฅเบฒเบˆเปเบฒเบ™เบงเบ™เบ‚เบญเบ‡
เบžเบฒเบฅเบฒเบกเบดเป€เบ•เบตเปเบฅเบฐเป€เบžเบตเปˆเบกเบžเบงเบเบกเบฑเบ™เป€เบ‚เบปเป‰เบฒเบเบฑเบ™:

sub mysum {
เบ‚เบญเบ‡เบ‚เป‰เบญเบ ($i, $total) = (0, 0);
เบชเปเบฒเบฅเบฑเบš $i (@_) {
$total += $i;
}
เบเบฑเบšเบ„เบทเบ™ $total;
}

4โ€‹) เบ—เปˆเบฒเบ™โ€‹เบชเบฒโ€‹เบกเบฒเบ”โ€‹เบเปเบฒโ€‹เบ™เบปเบ”โ€‹เบ„เปˆเบฒโ€‹เปƒเบซเป‰โ€‹เบ•เบปเบงโ€‹เบ›เปˆเบฝเบ™โ€‹เปเบ›เบ‡โ€‹เบซเบผเบฒเบโ€‹เปƒเบ™โ€‹เป€เบงโ€‹เบฅเบฒโ€‹เบ”เบฝเบงโ€‹เบเบฑเบ™โ€‹เป‚เบ”เบโ€‹เบเบฒเบ™โ€‹เบ™เปเบฒโ€‹เปƒเบŠเป‰ syntax เป„เบ”เป‰โ€‹:

($a, $b, $c) = (1, 2, 3);

เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เปƒเบ™เบ•เบปเบงเบขเปˆเบฒเบ‡เบ—เบตเปˆเบœเปˆเบฒเบ™เบกเบฒ:

# เบ™เบตเป‰เบ›เบฐเบเบฒเบ”เบชเบญเบ‡เบ•เบปเบงเปเบ›เบ—เป‰เบญเบ‡เบ–เบดเปˆเบ™เปเบฅเบฐเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบžเบงเบเบกเบฑเบ™เป€เบ›เบฑเบ™ 0.
เบ‚เบญเบ‡เบ‚เป‰เบญเบ ($i, $total) = (0, 0);

# เบ™เบตเป‰เปƒเบŠเป‰เป€เบงเบฅเบฒเบชเบญเบ‡เบญเบปเบ‡เบ›เบฐเบเบญเบšเบ—เปเบฒเบญเบดเบ”เบ‚เบญเบ‡ @_ เปเบฅเบฐเบงเบฒเบ‡เบžเบงเบเบกเบฑเบ™เป€เบ›เบฑเบ™ $x เปเบฅเบฐ $y.
เบ‚เบญเบ‡เบ‚เป‰เบญเบ ($x, $y) = @_;

5) เป„เบ”เป‰ "เบเบฒเบ™เบเบฑเบšเบ„เบทเบ™เบกเบฒ" เบ–เบฐเปเบซเบผเบ‡เบเบฒเบ™เปƒเบซเป‰เบ„เปˆเบฒเบเบฑเบšเบ„เบทเบ™เบ‚เบญเบ‡เบŸเบฑเบ‡เบŠเบฑเบ™, เบ–เป‰เบฒเบกเบต.

เป€เบžเบตเปˆเบกเป€เบ•เบตเบก เบ„เบธเบ™โ€‹เบฅเบฑเบโ€‹เบชเบฐโ€‹เบ™เบฐ


เบ‚เปเป‰เบกเบนเบ™ เป‚เบ„เบ‡เบชเป‰เบฒเบ‡
เป€เบžเบทเปˆเบญเบชเป‰เบฒเบ‡เป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบชเบฑเบšเบชเบปเบ™, Scilab เปƒเบŠเป‰ "เบฅเบฒเบเบเบฒเบ™"เปเบฅเบฐ"เป‚เบ„เบ‡เบชเป‰เบฒเบ‡". array เบ‚เบญเบ‡ Perl เปเบฅเบฐ
hashes เบชเบฐเบซเบ™เบญเบ‡เบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบ—เบตเปˆเบ„เป‰เบฒเบเบ„เบทเบเบฑเบ™. เบžเบฒเบเบ™เบตเป‰เปเบกเปˆเบ™เบžเบฝเบ‡เปเบ•เปˆเบžเบฒเบšเบฅเบงเบกเป„เบงเบ‚เบญเบ‡เบชเบดเปˆเบ‡เบ—เบตเปˆ Perl เบกเบต
เบชเบฐเป€เบซเบ™เบต. เป€เบžเบทเปˆเบญเบฎเบฝเบ™เบฎเบนเป‰เป€เบžเบตเปˆเบกเป€เบ•เบตเบกเบเปˆเบฝเบงเบเบฑเบšเป€เบฅเบทเปˆเบญเบ‡เบ™เบตเป‰, เบเบฐเบฅเบธเบ™เบฒเป„เบ›เบ—เบตเปˆhttp://perldoc.perl.org/perldata.html>
เบซเบผเบทเบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบ„เปเบฒเบชเบฑเปˆเบ‡ "perldoc perldata".

เบญเบฒเป€เบฅ
Perl arrays เปเบกเปˆเบ™เบ„เป‰เบฒเบเบ„เบทเบเบฑเบ™เบเบฑเบšเบฅเบฒเบเบŠเบทเปˆเบ‚เบญเบ‡ Scilab. เบžเบงเบเป€เบ‚เบปเบฒเบ—เบฑเบ‡เบชเบญเบ‡เป€เบ›เบฑเบ™เป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบ‚เปเป‰เบกเบนเบ™เบ•เบฒเบกเบฅเปเบฒเบ”เบฑเบš
เบ—เบตเปˆเบชเบฒเบกเบฒเบ”เบšเบฑเบ™เบˆเบธเบ‚เปเป‰เบกเบนเบ™เบ›เบฐเป€เบžเบ”เปƒเบ”เบ™เบถเปˆเบ‡.

เบ‚เบนเบ”
------
list(1, 12, "เบชเบฐเบšเบฒเบเบ”เบต", zeros(3,3), list(1, 2) );

PerlDL
------
@array = ( 1, 12, "เบชเบฐเบšเบฒเบเบ”เบต", zeros(3,3), [ 1, 2] )

เบชเบฑเบ‡เป€เบเบ”เป€เบซเบฑเบ™เบงเปˆเบฒ Perl array เบ‚เบญเบ‡เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ”เป‰เบงเบ "@" prefix เปเบ—เบ™ "$" เบ—เบตเปˆเปƒเบŠเป‰เป‚เบ”เบ
เบ›เป‰เบฒ.

To เบฎเบฝเบ™เบฎเบนเป‰ เบเปˆเบฝเบงเบเบฑเบš Perl arrays, เบเบฐเบฅเบธเบ™เบฒ go to <http://perldoc.perl.org/perldata.html> or
เปเบฅเปˆเบ™ เป„เบ”เป‰ เบ„เปเบฒเบชเบฑเปˆเบ‡ "perldoc perldata".

hashes
Perl hashes เปเบกเปˆเบ™เบ„เป‰เบฒเบเบ„เบทเบเบฑเบ™เบเบฑเบš array เป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบ‚เบญเบ‡ Scilab:

เบ‚เบนเบ”
------
--> เป€เบ„เบทเปˆเบญเบ‡เบ”เบทเปˆเบก = struct('type', 'coke', 'size', 'large', 'myarray', ones(3,3,3))
--> drink.type = 'เบชเบฐเป€เบ›เบฃ'
--> drink.price = 12 // เป€เบžเบตเปˆเบกเบžเบฒเบเบชเบฐเบซเบ™เบฒเบกเปƒเบซเบกเปˆเปƒเบชเปˆเป‚เบ„เบ‡เบชเป‰เบฒเบ‡ array.

PerlDL
------
pdl> %drink = (เบ›เบฐเป€เบžเบ” => 'coke' , เบ‚เบฐเปœเบฒเบ” => 'เปƒเบซเบเปˆ', mypiddle => ones(3,3,3))
pdl> $drink{type} = 'sprite'
pdl> $drink{price} = 12 # เป€เบžเบตเปˆเบกเบŠเปˆเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เปƒเปเปˆเปƒเบชเปˆ hash.

เบชเบฑเบ‡เป€เบเบ”เบงเปˆเบฒ Perl hashes เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ”เป‰เบงเบ "%" เบ„เปเบฒเบ™เปเบฒเบซเบ™เป‰เบฒเปเบ—เบ™ "@" เบชเปเบฒเบฅเบฑเบš arrays เปเบฅเบฐ
"$" เปƒเบŠเป‰เป‚เบ”เบ piddles.

To เบฎเบฝเบ™เบฎเบนเป‰ เบเปˆเบฝเบงเบเบฑเบš Perl hashes, เบเบฐเบฅเบธเบ™เบฒ go to <http://perldoc.perl.org/perldata.html> or
เปเบฅเปˆเบ™ เป„เบ”เป‰ เบ„เปเบฒเบชเบฑเปˆเบ‡ "perldoc perldata".

เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”
PDL เบกเบตเบฅเบฑเบเบชเบฐเบ™เบฐเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเบ—เบตเปˆเบกเบตเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบš, เบšเบฒเบ‡เบญเบฑเบ™เบ—เบตเปˆเบ›เบปเบเบเบฐเบ•เบดเปเบฅเป‰เบงเบšเปเปˆเบกเบตเบขเบนเปˆเปƒเบ™
เป€เบ„เบทเปˆเบญเบ‡โ€‹เบกเบทโ€‹เบเบฒเบ™โ€‹เบ„เบดเบ”โ€‹เป„เบฅเปˆโ€‹เบˆเปเบฒโ€‹เบ™เบงเบ™โ€‹. เปœเป‰เบฒเบ•เปเปˆเป„เบ›เบ™เบตเป‰เบˆเบฐเปเบ™เบฐเบ™เบณเบ—เปˆเบฒเบ™เบœเปˆเบฒเบ™เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰:

PDL::Indexing
เบฅเบฐเบ”เบฑเบš: เบœเบนเป‰เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™

เบเบฒเบ™เบชเบญเบ™เบœเบนเป‰เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ™เบตเป‰เบเบงเบกเป€เบญเบปเบฒเบ„เบธเบ™เบชเบปเบกเบšเบฑเบ” "vectorization" เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™เบ—เบตเปˆเบ—เปˆเบฒเบ™เบขเบนเปˆเปเบฅเป‰เบง
เบฎเบนเป‰เบˆเบฒเบ Scilab. เปƒเบŠเป‰เบซเบ™เป‰เบฒเบ™เบตเป‰เป€เบžเบทเปˆเบญเบฎเบฝเบ™เบฎเบนเป‰เบงเบดเบ—เบตเบซเบผเบตเบเป€เบงเบฑเป‰เบ™เบเบฒเบ™ for-loops เป€เบžเบทเปˆเบญเป€เบฎเบฑเบ”เปƒเบซเป‰เป‚เบ„เบ‡เบเบฒเบ™เบ‚เบญเบ‡เบ—เปˆเบฒเบ™
เบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเบซเบผเบฒเบ.

PDL::เบเบฐเบ—เบนเป‰
เบฅเบฐเบ”เบฑเบš: เบฅเบฐเบ”เบฑเบšเบ›เบฒเบ™เบเบฒเบ‡

เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ” "vectorization" เบ‚เบญเบ‡ PDL เป€เบเบตเบ™เบเบงเปˆเบฒเบชเบดเปˆเบ‡เบ—เบตเปˆเบŠเบญเบšเปเบงเบ•เบปเบงเป€เบฅเบเบชเบฒเบกเบฒเบ”เป€เบฎเบฑเบ”เป„เบ”เป‰. เปƒเบ™
tutorial เบ™เบตเป‰เบ—เปˆเบฒเบ™เบˆเบฐเบฎเบฝเบ™เบฎเบนเป‰เบงเบดเบ—เบตเบเบฒเบ™ "เบเบฐเบ—เบนเป‰" เปƒเบ™เป„เบฅเบเบฐเบ—เบตเปˆเบชเบนเบ‡เบ‚เบถเป‰เบ™, เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ—เปˆเบฒเบ™
vectorize เป‚เบ„เบ‡เบเบฒเบ™เบ‚เบญเบ‡เบ—เปˆเบฒเบ™เบซเบผเบฒเบเบเบงเปˆเบฒเบ—เบตเปˆเป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เปƒเบ™ Scilab.

เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™
เบฅเบฐเบ”เบฑเบš: เบฅเบฐเบ”เบฑเบšเบ›เบฒเบ™เบเบฒเบ‡

Perl เบกเบฒเบžเป‰เบญเบกเบเบฑเบšเป‚เบกเบ”เบนเบ™เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™เบ—เบตเปˆเบ‡เปˆเบฒเบเบ•เปเปˆเบเบฒเบ™เปƒเบŠเป‰เป€เบžเบทเปˆเบญเบŠเปˆเบงเบเปƒเบซเป‰เบ—เปˆเบฒเบ™เบŠเบญเบเบซเบฒเป„เบฅเบเบฐเป€เบงเบฅเบฒเบ—เบตเปˆเบกเบฑเบ™เปƒเบŠเป‰เป€เบงเบฅเบฒ
เป€เบžเบทเปˆเบญเบ›เบฐเบ•เบดเบšเบฑเบ”เบžเบฒเบเบชเปˆเบงเบ™เบ•เปˆเบฒเบ‡เป†เบ‚เบญเบ‡เบฅเบฐเบซเบฑเบ”เบ‚เบญเบ‡เบ—เปˆเบฒเบ™. เบกเบฑเบ™โ€‹เป€เบ›เบฑเบ™โ€‹เป€เบ„เบทเปˆเบญเบ‡โ€‹เบกเบทโ€‹เบ—เบตเปˆโ€‹เบ”เบตโ€‹เบ—เบตเปˆโ€‹เบˆเบฐโ€‹เบŠเปˆเบงเบโ€‹เปƒเบซเป‰โ€‹เบ—เปˆเบฒเบ™โ€‹เบชเบธเบกโ€‹เปƒเบชเปˆโ€‹เบเบฒเบ™โ€‹เบ‚เบญเบ‡โ€‹เบ—เปˆเบฒเบ™โ€‹
เบ„เบงเบฒเบกเบžเบฐเบเบฒเบเบฒเบกเป€เบžเบตเปˆเบกเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบš. เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบญเปˆเบฒเบ™เบเปˆเบฝเบงเบเบฑเบšเบกเบฑเบ™เบญเบญเบ™เป„เบฅเบ™เปŒ
(<http://perldoc.perl.org/Benchmark.html>) เบซเบผเบทเบœเปˆเบฒเบ™เบ„เปเบฒเบชเบฑเปˆเบ‡ "perldoc
เบ”เบฑเบ”เบŠเบฐเบ™เบต".

PDL::PP
เบฅเบฐเบ”เบฑเบš: เบ‚เบฑเป‰เบ™เบชเบนเบ‡

PDL's Pre-Processor เปเบกเปˆเบ™เบซเบ™เบถเปˆเบ‡เปƒเบ™เบฅเบฑเบเบชเบฐเบ™เบฐเบ—เบตเปˆเบกเบตเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเบ—เบตเปˆเบชเบธเบ”เบ‚เบญเบ‡ PDL. เบ—เปˆเบฒเบ™เบ‚เบฝเบ™เบซเบ™เป‰เบฒเบ—เบตเปˆ
เบ„เปเบฒเบ™เบดเบเบฒเบกเปƒเบ™ markup เบžเบดเป€เบชเบ”เปเบฅเบฐ pre-processor เบชเป‰เบฒเบ‡เบฅเบฐเบซเบฑเบ” C เบ—เบตเปˆเปเบ—เป‰เบˆเบดเบ‡เบ—เบตเปˆเบชเบฒเบกเบฒเบ”เป€เบ›เบฑเบ™
เบฅเบงเบšเบฅเบงเบก. เบ”เป‰เบงเบ PDL:PP เบ—เปˆเบฒเบ™เป„เบ”เป‰เบฎเบฑเบšเบ„เบงเบฒเบกเป„เบงเป€เบ•เบฑเบกเบ‚เบญเบ‡เบฅเบฐเบซเบฑเบ” C เบžเบทเป‰เบ™เป€เบกเบทเบญเบ‡เป‚เบ”เบเบšเปเปˆเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบˆเบฑเบ”เบเบฒเบ™เบเบฑเบš
เบเบฑเบšเบ„เบงเบฒเบกเบชเบฑเบšเบชเบปเบ™เบญเบฑเบ™เป€เบ•เบฑเบกเบ—เบตเปˆเบ‚เบญเบ‡เบžเบฒเบชเบฒ C.

เบเบฒเบ™เบงเบฒเบ‡เปเบœเบ™
PDL เบกเบตเบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เบงเบฒเบ‡เปเบœเบ™เปเบšเบšเป€เบ•เบฑเบกเบฎเบนเบšเปเบšเบš. เบšเปเปˆเป€เบซเบกเบทเบญเบ™เบเบฑเบš Scilab, PDL เบ‚เบถเป‰เบ™เบเบฑเบšเบžเบฒเบเบชเปˆเบงเบ™เบ—เบตเบชเบฒเบกเบซเบผเบฒเบ
เบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ” (pgplot เปเบฅเบฐ PLplot) เบชเปเบฒเบฅเบฑเบšเบฅเบฑเบเบชเบฐเบ™เบฐเบเบฒเบ™เบงเบฒเบ‡เปเบœเบ™ 2D เบ‚เบญเบ‡เบกเบฑเบ™. เบเบฒเบ™เบงเบฒเบ‡เปเบœเบ™ เปเบฅเบฐเบฎเบนเบšเบžเบฒเบš 3D
เปƒเบŠเป‰ OpenGL เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เปเบฅเบฐเบเบฒเบ™เป€เบ„เบทเปˆเบญเบ™เบ—เบตเปˆ. PDL เบกเบตเบชเบฒเบกเป‚เบกเบ”เบนเบ™เบเบฒเบ™เบงเบฒเบ‡เปเบœเบ™เบ•เบปเป‰เบ™เบ•เป:

PDL::เบเบฒเบŸเบดเบ::PGPLOT
เบ—เบตเปˆเบ”เบตเบ—เบตเปˆเบชเบธเบ” เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™: เบเบฒเบ™เบงเบฒเบ‡เปเบœเบ™เบŸเบฑเบ‡เบŠเบฑเบ™ 2D เปเบฅเบฐเบŠเบธเบ”เบ‚เปเป‰เบกเบนเบ™.

เบ™เบตเป‰โ€‹เปเบกเปˆเบ™โ€‹เบเบฒเบ™โ€‹เป‚เบ•เป‰โ€‹เบ•เบญเบšโ€‹เบเบฑเบšโ€‹เบซเป‰เบญเบ‡โ€‹เบชเบฐโ€‹เบซเบกเบธเบ” PGPLOT venerableโ€‹. PGPLOT เป„เบ”เป‰เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เบขเปˆเบฒเบ‡เบเบงเป‰เบฒเบ‡เบ‚เบงเบฒเบ‡เปƒเบ™
เบŠเบธเบกเบŠเบปเบ™เบ—เบฒเบ‡เบงเบดเบŠเบฒเบเบฒเบ™ เปเบฅเบฐเบงเบดเบ—เบฐเบเบฒเบชเบฒเบ”เป€เบ›เบฑเบ™เป€เบงเบฅเบฒเบซเบผเบฒเบเบ›เบต. เบชเปˆเบงเบ™โ€‹เปœเบถเปˆเบ‡โ€‹เปเบกเปˆเบ™โ€‹เบเป‰เบญเบ™โ€‹เบญเบฒเบเบธโ€‹เบ‚เบญเบ‡โ€‹เบกเบฑเบ™,
PGPLOT เบกเบตเบ‚เปเป‰เบˆเปเบฒเบเบฑเบ”เบšเบฒเบ‡เบขเปˆเบฒเบ‡เป€เบกเบทเปˆเบญเบ›เบฝเบšเบ—เบฝเบšเบเบฑเบšเบŠเบธเบ”เปƒเบซเบกเปˆเป€เบŠเบฑเปˆเบ™ PLplot (เป€เบŠเบฑเปˆเบ™: เบšเปเปˆเบกเบต RGB
เบฎเบนเบšเบžเบฒเบš). เปเบ•เปˆเบกเบฑเบ™เบกเบตเบฅเบฑเบเบชเบฐเบ™เบฐเบซเบผเบฒเบเบขเปˆเบฒเบ‡เบ—เบตเปˆเบเบฑเบ‡เป€เบฎเบฑเบ”เปƒเบซเป‰เบกเบฑเบ™เป€เบ›เบฑเบ™เบ—เบตเปˆเบ™เบดเบเบปเบกเปƒเบ™เบงเบดเบ—เบฐเบเบฒเบชเบฒเบ”
เบŠเบธเบกเบŠเบปเบ™.

PDL::Graphics::PLplot
เบ—เบตเปˆเบ”เบตเบ—เบตเปˆเบชเบธเบ” เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™: เบเบฒเบ™เบงเบฒเบ‡เปเบœเบ™เบŸเบฑเบ‡เบŠเบฑเบ™ 2D เป€เบŠเบฑเปˆเบ™เบ”เบฝเบงเบเบฑเบ™เบเบฑเบšเบŠเบธเบ”เบ‚เปเป‰เบกเบนเบ™ 2D เปเบฅเบฐ 3D.

เบ™เบตเป‰เปเบกเปˆเบ™เบชเปˆเบงเบ™เบ•เบดเบ”เบ•เปเปˆเบเบฑเบšเบซเป‰เบญเบ‡เบชเบฐเปเบธเบ” PLplot plotting. PLplot เป€เบ›เบฑเบ™เปเบซเบผเปˆเบ‡เป€เบ›เบตเบ”เบ—เบตเปˆเบ—เบฑเบ™เบชเบฐเป„เบซเบก
เบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ”เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบชเป‰เบฒเบ‡เปเบœเบ™เบœเบฑเบ‡เบงเบดเบ—เบฐเบเบฒเบชเบฒเบ”. เบกเบฑเบ™เบฎเบญเบ‡เบฎเบฑเบšเบŠเบธเบ”เบ‚เปเป‰เบกเบนเบ™เบ—เบฑเบ‡ 2D เปเบฅเบฐ 3D.
PLplot เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบ—เบตเปˆเบ”เบตเบ—เบตเปˆเบชเบธเบ”เบชเปเบฒเบฅเบฑเบšเป€เบงเบ—เบต unix / linux / macosx. เบกเบฑเบ™เบกเบตเบ™เบฑเบเบžเบฑเบ”เบ—เบฐเบ™เบฒเบ—เบตเปˆเบซเป‰เบฒเบงเบซเบฑเบ™
เบŠเบธเบกเบŠเบปเบ™เปเบฅเบฐเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบชเปเบฒเบฅเบฑเบšเป€เบงเบ—เบต win32 เบเปเบฒเบฅเบฑเบ‡เบ›เบฑเบšเบ›เบธเบ‡.

PDL::Graphics::TriD
เบ—เบตเปˆเบ”เบตเบ—เบตเปˆเบชเบธเบ” เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™: เบเบฒเบ™เบงเบฒเบ‡เปเบœเบ™เบŸเบฑเบ‡เบŠเบฑเบ™ 3D.

เบซเป‰เบญเบ‡เบชเบฐเปเบธเบ”เบเบฃเบฒเบšเบŸเบดเบ 3D PDL เบžเบทเป‰เบ™เป€เบกเบทเบญเบ‡เบ—เบตเปˆเปƒเบŠเป‰ OpenGL เป€เบ›เบฑเบ™ backend เบชเปเบฒเบฅเบฑเบšเบžเบทเป‰เบ™เบ—เบตเปˆ 3D เปเบฅเบฐเบ‚เปเป‰เบกเบนเบ™
เบเบฒเบ™เป€เบšเบดเปˆเบ‡เป€เบซเบฑเบ™. เบ”เป‰เบงเบ OpenGL, เบกเบฑเบ™เบ‡เปˆเบฒเบเบ—เบตเปˆเบˆเบฐเบˆเบฑเบ”เบเบฒเบ™เบงเบฑเบ”เบ–เบธ 3D เบ—เบตเปˆเบกเบตเบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบš
เบซเบ™เบนเปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเปเบ—เป‰เบˆเบดเบ‡.

เบฅเบฒเบเบฅเบฑเบเบญเบฑเบเบชเบญเบ™ GUIs
เบœเปˆเบฒเบ™ Perl, PDL เบกเบตเบเบฒเบ™เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เบ—เบธเบเบŠเบธเบ”เป€เบ„เบทเปˆเบญเบ‡เบกเบทเบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบชเป‰เบฒเบ‡เป€เบงเบ—เบตเบ‚เป‰เบฒเบก
เบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบšเบœเบนเป‰เปƒเบŠเป‰เปเบšเบšเบเบฒเบŸเบดเบ. เบซเบ™เบถเปˆเบ‡เปƒเบ™เบ—เบฒเบ‡เป€เบฅเบทเบญเบเบ—เบตเปˆเบ™เบดเบเบปเบกเปเบกเปˆเบ™ wxPerl (http://wxperl.sourceforge.net>).
เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เปเบกเปˆเบ™เบเบฒเบ™เบœเบนเบเบกเบฑเบ” Perl เบชเปเบฒเบฅเบฑเบš wxWidgets, เบŠเบธเบ”เป€เบ„เบทเปˆเบญเบ‡เบกเบท GUI เบ—เบตเปˆเบกเบตเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ‚เบฝเบ™เบ‚เป‰เบฒเบก.
เบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบเป€เบงเบ—เบต.

wxWidgets เบ–เบทเบโ€‹เบญเบญเบโ€‹เปเบšเบšโ€‹เป€เบžเบทเปˆเบญโ€‹เป€เบฎเบฑเบ”โ€‹เปƒเบซเป‰โ€‹เบ„เปเบฒโ€‹เบฎเป‰เบญเบ‡โ€‹เบชเบฐโ€‹เบซเบกเบฑเบโ€‹เบ‚เบญเบ‡โ€‹เบ—เปˆเบฒเบ™โ€‹เป€เบšเบดเปˆเบ‡โ€‹เปเบฅเบฐโ€‹เบกเบตโ€‹เบ„เบงเบฒเบกโ€‹เบฎเบนเป‰โ€‹เบชเบถเบโ€‹เบ„เป‰เบฒเบโ€‹เบ„เบทโ€‹เบ„เปเบฒโ€‹เบฎเป‰เบญเบ‡โ€‹เบชเบฐโ€‹เบซเบกเบฑเบโ€‹เบžเบทเป‰เบ™โ€‹เป€เบกเบทเบญเบ‡โ€‹เปƒเบ™โ€‹
เบ—เบธเบเป†เป€เบงเบ—เบต. เบ•เบปเบงเบขเปˆเบฒเบ‡, Perl IDE เบžเบฃเบฐเบšเบดเบ”เบฒ เบ–เบทเบเบ‚เบฝเบ™เบ”เป‰เบงเบ wxPerl.

Xcos / Scicos
Xcos (เป€เบกเบทเปˆเบญเบเปˆเบญเบ™เป€เบญเบตเป‰เบ™เบงเปˆเบฒ Scicos) เปเบกเปˆเบ™เบ•เบปเบงเบชเป‰เบฒเบ‡เปเบšเบšเบˆเปเบฒเบฅเบญเบ‡ เปเบฅเบฐเป€เบ„เบทเปˆเบญเบ‡เบˆเบณเบฅเบญเบ‡เบฅเบฐเบšเบปเบšเบเบฒเบŸเบดเบเปเบšเบšเป€เบ„เบทเปˆเบญเบ™เป„เบซเบง. เบกเบฑเบ™เป€เบ›เบฑเบ™เบชเปˆเบงเบ™เบซเบ™เบถเปˆเบ‡
เบ‚เบญเบ‡เบเบฒเบ™เปเบˆเบเบขเบฒเบ Scilab เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™. PDL เปเบฅเบฐ Perl เบšเปเปˆเบ—เบฝเบšเป€เบ—เบปเปˆเบฒเป‚เบ”เบเบเบปเบ‡เบเบฑเบš
Xcos เบ‚เบญเบ‡ Scilab. เบ–เป‰เบฒเบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เบ™เบตเป‰เบชเบณเบ„เบฑเบ™เบ•เปเปˆเป€เบˆเบปเป‰เบฒ, เป€เบˆเบปเป‰เบฒเบ„เบงเบ™เป€เบเบฑเบšเบชเบณเป€เบ™เบปเบฒเป„เบงเป‰
Scilab เบ›เบฐเบกเบฒเบ™เบ™เบฑเป‰เบ™.

COPYRIGHT


เบชเบฐเบซเบ‡เบงเบ™เบฅเบดเบ‚เบฐเบชเบดเบ” 2010 Daniel Carrera ([email protected]). เบ—เปˆเบฒเบ™โ€‹เบชเบฒโ€‹เบกเบฒเบ”โ€‹เปเบˆเบโ€‹เบขเบฒเบโ€‹เปเบฅเบฐ / เบซเบผเบทโ€‹เบ›เบฑเบšโ€‹เบ›เบธเบ‡โ€‹เปเบเป‰โ€‹เป„เบ‚โ€‹เบ™เบตเป‰โ€‹
เป€เบญเบเบฐเบชเบฒเบ™เบžเบฒเบเปƒเบ•เป‰เป€เบ‡เบทเปˆเบญเบ™เป„เบ‚เบ”เบฝเบงเบเบฑเบ™เบเบฑเบšเปƒเบšเบญเบฐเบ™เบธเบเบฒเบ” Perl เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™.

เป€เบšเบดเปˆเบ‡: http://dev.perl.org/licenses/

เปƒเบŠเป‰ PDL::Scilabp เบญเบญเบ™เป„เบฅเบ™เปŒเป‚เบ”เบเปƒเบŠเป‰เบšเปเบฅเบดเบเบฒเบ™ onworks.net


เป€เบŠเบตเบšเป€เบงเบต เปเบฅเบฐเบชเบฐเบ–เบฒเบ™เบตเป€เบฎเบฑเบ”เบงเบฝเบเบŸเบฃเบต

เบ”เบฒเบงเป‚เบซเบผเบ”เปเบญเบฑเบš Windows เปเบฅเบฐ Linux

  • 1
    VirtualGL
    VirtualGL
    VirtualGL เบ›เปˆเบฝเบ™เป€เบชเบฑเป‰เบ™เบ—เบฒเบ‡เบ„เปเบฒเบชเบฑเปˆเบ‡ 3D เบˆเบฒเบ a
    เปเบญเบฑเบšเบžเบฅเบดเป€เบ„เบŠเบฑเบ™ Unix/Linux OpenGL เปƒเบชเปˆ a
    GPU เบ‚เป‰เบฒเบ‡เป€เบŠเบตเบšเป€เบงเบตเปเบฅเบฐเปเบ›เบ‡
    rendered เบฎเบนเบš 3D เป€เบ‚เบปเป‰เบฒโ€‹เป„เบ›โ€‹เปƒเบ™โ€‹เบชเบฐโ€‹เบ•โ€‹เบฃเบตเบกโ€‹เบงเบดโ€‹เบ”เบตโ€‹เป‚เบญโ€‹
    เบ—เบตเปˆ...
    เบ”เบฒเบงเป‚เบซเบฅเบ” VirtualGL
  • 2
    libusb
    libusb
    เบซเป‰เบญเบ‡เบชเบฐเปเบธเบ”เป€เบžเบทเปˆเบญเป€เบ›เบตเบ”เปƒเบŠเป‰เบžเบทเป‰เบ™เบ—เบตเปˆเบœเบนเป‰เปƒเบŠเป‰
    เป‚เบ„เบ‡โ€‹เบเบฒเบ™โ€‹เบ„เปเบฒโ€‹เบฎเป‰เบญเบ‡โ€‹เบชเบฐโ€‹เบซเบกเบฑเบโ€‹เป€เบžเบทเปˆเบญโ€‹เบ•เบดเบ”โ€‹เบ•เปเปˆโ€‹เบžเบปเบงโ€‹เบžเบฑเบ™โ€‹เบเบฑเบšโ€‹
    เบญเบธเบ›เบฐเบเบญเบ™ USB. เบœเบนเป‰เบŠเบปเบก: เบ™เบฑเบเบžเบฑเบ”เบ—เบฐเบ™เบฒ, เบชเบดเป‰เบ™เบชเบธเบ”
    เบœเบนเป‰เปƒเบŠเป‰/เป€เบ”เบฑเบชเบ—เบฑเบญเบš. เบžเบฒเบชเบฒเบเบฒเบ™เบ‚เบฝเบ™เป‚เบ›เบฃเปเบเบฃเบก: C.
    เปเบงเบ”เปเบนเปˆ...
    เบ”เบฒเบงเป‚เบซเบฅเบ” libusb
  • 3
    SWIG
    SWIG
    SWIG เป€เบ›เบฑเบ™เป€เบ„เบทเปˆเบญเบ‡เบกเบทเบžเบฑเบ”เบ—เบฐเบ™เบฒเบŠเบญเบšเปเบง
    เบ—เบตเปˆเป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบšเบฑเบ™เบ”เบฒเป‚เบ„เบ‡เบเบฒเบ™เบ—เบตเปˆเบ‚เบฝเบ™เปƒเบ™ C เปเบฅเบฐ
    C ++ เบ—เบตเปˆเบกเบตเบ„เบงเบฒเบกเบซเบฅเบฒเบเบซเบฅเบฒเบเบ‚เบญเบ‡เบฅเบฐเบ”เบฑเบšเบชเบนเบ‡
    เบžเบฒเบชเบฒเบเบฒเบ™เบ‚เบฝเบ™เป‚เบ›เบผเปเบเบผเบก. SWIG เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เบเบฑเบš
    เปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™ ...
    เบ”เบฒเบงเป‚เบซเบฅเบ” SWIG
  • 4
    WooCommerce Nextjs React Theme
    WooCommerce Nextjs React Theme
    React WooCommerce เบซเบปเบงเบ‚เปเป‰, เบชเป‰เบฒเบ‡เบ‚เบถเป‰เบ™เบ”เป‰เบงเบ
    JS เบ•เปเปˆเป„เบ›, Webpack, Babel, Node, เปเบฅเบฐ
    เบ”เปˆเบงเบ™, เปƒเบŠเป‰ GraphQL เปเบฅเบฐ Apollo
    เบฅเบนเบโ€‹เบ„เป‰เบฒ. เบฎเป‰เบฒเบ™ WooCommerce เปƒเบ™ React(
    เบ›เบฐโ€‹เบเบญเบšโ€‹เบ”เป‰เบงเบโ€‹: เบœเบฐโ€‹เบฅเบดเบ”โ€‹เบ•เบฐโ€‹เบžเบฑเบ™ ...
    เบ”เบฒเบงเป‚เบซเบฅเบ” WooCommerce Nextjs React Theme
  • 5
    archlabs_repo
    archlabs_repo
    Package repo เบชเปเบฒเบฅเบฑเบš ArchLabs เบ™เบตเป‰เปเบกเปˆเบ™
    เบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบเบ—เบตเปˆเบเบฑเบ‡เบชเบฒเบกเบฒเบ”เป€เบญเบปเบฒเบกเบฒเป„เบ”เป‰
    เบˆเบฒเบ
    https://sourceforge.net/projects/archlabs-repo/.
    เบกเบฑเบ™เป„เบ”เป‰เบ–เบทเบเบˆเบฑเบ”เบขเบนเปˆเปƒเบ™ OnWorks เปƒเบ™ ...
    เบ”เบฒเบงเป‚เบซเบฅเบ” archlabs_repo
  • 6
    เป‚เบ„เบ‡เบเบฒเบ™ Zephyr
    เป‚เบ„เบ‡เบเบฒเบ™ Zephyr
    เป‚เบ„เบ‡เบเบฒเบ™ Zephyr เปเบกเปˆเบ™เบ„เบปเบ™เบฎเบธเปˆเบ™เปƒเบซเบกเปˆ
    เบฅเบฐเบšเบปเบšเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เปƒเบ™เป€เบงเบฅเบฒเบˆเบดเบ‡ (RTOS) เบ™เบฑเป‰เบ™
    เบฎเบญเบ‡เบฎเบฑเบšเบฎเบฒเบ”เปเบงเบซเบผเบฒเบเบญเบฑเบ™
    เบชเบฐเบ–เบฒเบ›เบฑเบ”เบ•เบฐเบเบฐเบเปเบฒ. เบกเบฑเบ™เปเบกเปˆเบ™เบญเบตเบ‡เปƒเบชเปˆ a
    เปเบเปˆเบ™เบฎเบญเบเบ•เบตเบ™เบ™เป‰เบญเบ...
    เบ”เบฒเบงเป‚เบซเบฅเบ”เป‚เบ„เบ‡เบเบฒเบ™ Zephyr
  • เป€เบžเบตเปˆเบกเป€เบ•เบตเบก ยป

Linux เบ„เบณ เบชเบฑเปˆเบ‡

  • 1
    aarch64-linux-gnu-gcc-ar-4.8
    aarch64-linux-gnu-gcc-ar-4.8
    gcc-ar - wrapper เบญเป‰เบญเบก ar เป€เบžเบตเปˆเบก the
    -- เบ—เบฒเบ‡เป€เบฅเบทเบญเบเบ›เบฅเบฑเบเบญเบดเบ™ ...
    เปเบฅเปˆเบ™ aarch64-linux-gnu-gcc-ar-4.8
  • 2
    aarch64-linux-gnu-gcc-ar-4.9
    aarch64-linux-gnu-gcc-ar-4.9
    gcc-ar - wrapper เบญเป‰เบญเบก ar เป€เบžเบตเปˆเบก the
    -- เบ—เบฒเบ‡เป€เบฅเบทเบญเบเบ›เบฅเบฑเบเบญเบดเบ™ ...
    เปเบฅเปˆเบ™ aarch64-linux-gnu-gcc-ar-4.9
  • 3
    cpp-6
    cpp-6
    cpp - เป‚เบ›เป€เบŠเบ”เป€เบŠเบต C ...
    เปเบฅเปˆเบ™ cpp-6
  • 4
    cpp
    cpp
    cpp - เป‚เบ›เป€เบŠเบ”เป€เบŠเบต C ...
    เปเบฅเปˆเบ™ cpp
  • 5
    g.gui.iclassgrass
    g.gui.iclassgrass
    g.gui.iclass - เป€เบ„เบทเปˆเบญเบ‡เบกเบทเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป€เบšเบดเปˆเบ‡เปเบเบ‡
    เบเบฒเบ™เบˆเบฑเบ”เบ›เบฐเป€เบžเบ”เบ‚เบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบฎเบนเบšเบžเบฒเบš.
    เบชเป‰เบฒเบ‡เบฅเบฒเบเป€เบŠเบฑเบ™ spectral เบชเปเบฒเบฅเบฑเบš an
    เบฎเบนเบšโ€‹เบžเบฒเบšโ€‹เป‚เบ”เบโ€‹เบเบฒเบ™โ€‹เบญเบฐโ€‹เบ™เบธโ€‹เบเบฒเบ”โ€‹เปƒเบซเป‰โ€‹เบœเบนเป‰โ€‹เปƒเบŠเป‰โ€‹เป€เบžเบทเปˆเบญโ€‹เบเปเบฒโ€‹เบ™เบปเบ”โ€‹
    เบ‚เบปเบ‡โ€‹เป€เบ‚เบ”โ€‹เบ—เบตเปˆโ€‹เบชเบปเบ™โ€‹เปƒเบˆ...
    เปเบฅเปˆเบ™ g.gui.iclassgrass
  • 6
    g.gui.mapswipegrass
    g.gui.mapswipegrass
    g.gui.mapswipe - เบ›เบฝเบšเบ—เบฝเบšเปเบšเบšเป‚เบ•เป‰เบ•เบญเบš
    เบชเบญเบ‡เปเบœเบ™เบ—เบตเปˆเป‚เบ”เบเบเบฒเบ™เบ›เบฑเบ”เปเบ–เบšเบเบฒเบ™เป€เบšเบดเปˆเบ‡เป€เบซเบฑเบ™.
    เบ„เปเบฒเบชเปเบฒเบ„เบฑเบ™: เป‚เบ”เบเบ—เบปเปˆเบงเป„เบ›, GUI, เบเบฒเบ™เบชเบฐเปเบ”เบ‡ ...
    เปเบฅเปˆเบ™ g.gui.mapswipegrass
  • เป€เบžเบตเปˆเบกเป€เบ•เบตเบก ยป

Ad