InglesPransesEspanyol

OnWorks favicon

PDL::Philosophyp - Online sa Cloud

Patakbuhin ang PDL::Philosophyp sa OnWorks na libreng hosting provider sa Ubuntu Online, Fedora Online, Windows online emulator o MAC OS online emulator

Ito ang command na PDL::Philosophyp na maaaring patakbuhin sa OnWorks na libreng hosting provider gamit ang isa sa aming maramihang libreng online na workstation gaya ng Ubuntu Online, Fedora Online, Windows online emulator o MAC OS online emulator

PROGRAMA:

NAME


PDL::Philosophy -- Bakit natin sinulat ang PDL?

DESCRIPTION


Ilang kasaysayan mula sa lumikha ng PDL, na humahantong sa pilosopiya at motibasyon sa likod
wikang ito ng data. Ito ay isang pagtatangka na ibuod ang ilan sa karaniwang diwa sa pagitan ng pdl
mga developer upang masagot ang tanong na "Bakit PDL"?

Ang simula of PDL
"Bakit is it na we aliwin ang paniniwala na para bawat layunin kakaiba numero ay ang pinaka-
epektibo?" - Pliny ang Nakatatanda

Nagsimula ang proyekto ng PDL noong Pebrero 1996, nang magpasya akong mag-eksperimento sa pagsulat ng aking sarili
`Wika ng Data'. Isa akong astronomer. Ang aking pang-araw-araw na trabaho ay nagsasangkot ng maraming pagsusuri ng digital
data na naipon sa maraming gabi na nagmamasid sa mga teleskopyo sa buong mundo. Ang nasabing data ay maaaring
halimbawa ay mga larawang naglalaman ng milyun-milyong pixel at libu-libong larawan ng malayo
mga bituin at kalawakan. O mas abstrusely, maraming daan-daang digital spectra ang nagpapakita ng
mga lihim ng komposisyon at mga katangian ng malalayong bagay na ito.

Malinaw na maraming mga astronomo ang nakaharap sa mga problemang ito dati, at isang malaking halaga ng
ang software ay binuo upang mapadali ang kanilang pagsusuri. Gayunpaman, tulad ng marami sa akin
mga kasamahan, palagi akong nadidismaya sa kawalan ng pangkalahatan at flexibility ng mga ito
mga programa at ang kahirapan sa paggawa ng anumang bagay na hindi karaniwan nang mabilis at madali. Ano
Nais kong magkaroon ng isang pangalan: "Data Language", ibig sabihin, isang wika na nagpapahintulot sa pagmamanipula ng
malaking halaga ng data na may simpleng mga expression ng aritmetika. Sa katunayan ilang komersyal
gumana nang ganito ang software, at humanga ako sa mga kakayahan ngunit hindi sa
presyo. At naisip ko na magagawa ko nang mas mahusay.

Bilang isang astronomer na medyo marunong sa computer (basahin ang "nerd" o "geek" ayon sa iyong lokal
argot) Napakapamilyar ko sa "Perl", isang wika ng computer na ngayon ay tila pumupuno sa
istante ng maraming tindahan ng libro sa buong mundo. Napahanga ako sa kapangyarihan nito at
flexibility, at lalo na ang kadalian ng paggamit nito. Na-explore ko pa ang lalim nito
internals at nagsulat ng isang interface upang payagan ang mga graphics, ang kadalian na magagawa ko noon
lumikha ng mga tsart at mga graph, para sa aking mga papel, ay nagre-refresh.

Kakalabas lang ng Bersyon 5 ng Perl, at nabighani ako sa mga bagong feature
magagamit. Lalo na ang suporta ng mga arbitrary na istruktura ng data (o "mga bagay" sa modernong
parlance) at ang kakayahang "mag-overload" sa mga operator - ibig sabihin, gumawa ng mga simbolong pangmatematika tulad ng
"+-*/" gawin ang anumang naramdaman mo. Tila sa akin ito ay nararapat na magsulat ng isang
extension sa Perl kung saan maaari kong laruin ang aking data sa pangkalahatang paraan: halimbawa gamit ang
Ang mga operator ng matematika ay nagmamanipula ng buong imahe nang sabay-sabay.

Isang mabagal na gabi sa isang obserbatoryo naisip ko lang na subukan ko ang isang maliit na eksperimento. Sa
sa isang naiinip na sandali, nagpaputok ako ng isang text editor at nagsimulang lumikha ng isang file na tinatawag na `PDL.xs' - isang
Perl extension module upang manipulahin ang mga vector ng data. Makalipas ang ilang oras ay nagkaroon na talaga ako
isang bagay na kalahating disenteng gumagana, kung saan maaari akong magdagdag ng dalawang larawan sa wikang Perl, mabilis!
Ito ay isang bagay na hindi ko maaaring hayaang magpahinga, at malamang na nagkakahalaga ito ng isa o dalawang pang-agham
mga papel na nagkakahalaga ng pagiging produktibo. Pagkalipas ng ilang linggo ang Perl Data Language na bersyon 1.0 ay
ipinanganak. Ito ay isang medyo hubad na sanggol: napakaliit doon bukod sa pangunahing arithmetic
mga operator. Ngunit hinikayat kong ginawa itong available sa Internet upang makita kung ano ang iniisip ng mga tao.

Well, ang mga tao ay medyo kritikal - kabilang sa mga pinaka-vocal ay sina Tuomas Lukka at Christian
Soeller. Sa kasamaang palad para sa kanila pareho silang mahilig sa Perl at sa lalong madaling panahon natagpuan
ang kanilang mga sarili sa pagpapabuti ng aking code upang ipatupad ang lahat ng mga tampok na naisip nila na dapat magkaroon ng PDL
at ako ay karumal-dumal na napabayaan. Ang PDL ay isang pangunahing halimbawa ng modernong phenomenon ng
pag-akda ng malalaking libreng software package sa pamamagitan ng Internet. Malaking bilang ng mga tao, karamihan sa mga
na hindi pa nakikilala, ay gumawa ng mga kontribusyon mula sa pangunahing functionality hanggang sa malaki
module sa pinakamaliit na mga patch ng bug. Ang bersyon 2.0 ng PDL ay narito na ngayon (bagaman dapat
marahil ay tinawag na bersyon 10 upang ipakita ang dami ng paglaki sa laki at
functionality) at nagpapatuloy ang phenomenon. Lubos akong naniniwala na ang PDL ay isang mahusay na tool
para sa pagharap sa mga pangkalahatang problema ng pagsusuri ng data. Ito ay malakas, mabilis, madaling idagdag at
malayang magagamit ng sinuman. Sana nagkaroon ako nito noong graduate student ako! sana
mahahanap mo rin ito ng napakalaking halaga, umaasa akong iligtas ka nito mula sa mga tambak ng oras at
pagkabigo sa paglutas ng mga kumplikadong problema. Siyempre hindi nito magagawa ang lahat, ngunit nagbibigay ito
ang balangkas, ang mga martilyo at ang mga pako para sa pagbuo ng mga solusyon nang hindi kinakailangang muling likhain
mga gulong o levers.

--- Karl Glazebook, ang lumikha ng PDL

Malaki ideya
Ang unang prinsipyo ng aming pilosopiya ay ang "libreng software" na ideya: ang software ay libre
ilang mga pakinabang (mas kaunting mga bug dahil mas maraming tao ang nakakakita ng code, maaari kang magkaroon ng pinagmulan
at i-port ito sa iyong sariling kapaligiran sa pagtatrabaho kasama mo, ... at siyempre, na hindi mo gagawin
kailangang magbayad ng kahit ano).

Ang pangalawang ideya ay isang pet peeve ng marami: maraming mga wika tulad ng Matlab ay medyo angkop
para sa kanilang mga partikular na gawain ngunit para sa ibang aplikasyon, kailangan mong baguhin sa isang
ganap na naiibang kasangkapan at pasiglahin ang iyong sarili sa pag-iisip. Hindi upang magsalita tungkol sa paggawa ng isang
application na gumagawa ng dalawang bagay nang sabay-sabay... Dahil ginagamit namin ang Perl, mayroon kaming kapangyarihan at
kadalian ng Perl syntax, mga regular na expression, hash table, atbp. sa aming mga kamay sa lahat
beses. Sa pamamagitan ng pagpapalawak ng isang umiiral na wika, nagsisimula tayo sa isang mas malusog na base kaysa
mga wika tulad ng Matlab na lumaki mula sa napakaliit na functionality sa
una at pinalawak nang paunti-unti, na ginagawang masama ang plano. Nakatayo kami sa tabi ng
Mga kasabihan ni Perl: "dapat maging simple ang mga simpleng bagay ngunit dapat maging posible ang mga kumplikadong bagay"
at "May higit sa isang paraan upang gawin ito" (TIMTOWTDI).

Ang pangatlong ideya ay interoperability: gusto naming magamit ang PDL para magmaneho ng maraming tool
hangga't maaari, maaari tayong kumonekta sa OpenGL o Mesa para sa mga graphics o kung ano pa man. wala
anumang bagay doon na talagang kasiya-siya bilang isang tool at magagawa ang lahat ng gusto natin
madali. At maging portable.

Ang ikaapat na ideya ay nauugnay sa "PDL::PP" at ito ang personal na paborito ni Tuomas: code should
tukuyin lamang ang kasing liit ng posibleng kalabisan na impormasyon. Kung nakita mo ang iyong sarili na nagsusulat ng napaka
magkapareho ang hitsura ng code sa karamihan ng oras, ang lahat ng code na iyon ay maaaring mabuo ng a
simpleng Perl script. Dinadala ito ng preprocessor ng PDL C sa isang sukdulan.

Minor mga layunin at Mga layunin
Gusto namin ng bilis. Sa pinakamainam, ito ay dapat sa huli (hal. sa Perl compiler) ay posible
upang i-compile ang "PDL::PP" subs sa C at makuha ang pinakamataas na vectorized na bilis sa mga supercomputer.
Gayundin, gusto naming makalkula ang mga bagay sa halos pinakamataas na bilis mula sa loob ng Perl, sa pamamagitan ng paggamit
dataflow upang maiwasan ang memory allocation at deallocation (ang overhead ay dapat sa huli
kaunti lamang sa isang indirect function na tawag kasama ang ilang ifs sa bawat function sa
tubo).

Go isa; sumubok it!
Well, iyon ang pilosopiya sa likod ng PDL - bilis, maigsi, libre, napapalawak, at
isinama sa malawak na base ng mga module at library na ibinibigay ng Perl. Huwag mag-atubiling
i-download ito, i-install ito, patakbuhin ang ilan sa mga tutorial at pagpapakilala at magkaroon ng
Maglaro ka.

Enjoy!

Gamitin ang PDL::Philosophyp online gamit ang mga serbisyo ng onworks.net


Mga Libreng Server at Workstation

Mag-download ng Windows at Linux apps

Linux command

Ad