Portál AbcLinuxu, 12. května 2025 17:01

Nástroje: Začni sledovat (3) ?Zašle upozornění na váš email při vložení nového komentáře.

Vložit další komentář
24.1.2018 09:18 disorder | blog: weblog
Rozbalit Rozbalit vše Re: Optimismus ohledně Perlu 6
Odpovědět | Sbalit | Link | Blokovat | Admin
https://docs.perl6.org/language/concurrency

Bez toho aby som to podrobne studoval... vidim tam asynchronne promises ako v ECMAScripte, ale nie je mi jasne (predpokladam, ze nie) ci to dokaze robit nativne thready, ktore mozu bezat paralelne. Ak ano, tak s akymi obmedzeniami.

Inak Perl je dobry jazyk a Moose je najlepsi objektovy model v (semi-)mainstreamovych jazykoch. Bohuzial Perl 6 straca to najdolezitejsie na Perli - vsetky kniznice.
wamba avatar 24.1.2018 12:14 wamba | skóre: 38 | blog: wamba
Rozbalit Rozbalit vše Re: Optimismus ohledně Perlu 6
Jestli dobře chápu otázku, tak ano dokáže to běžet paralelně na více jádrech. Pro mě bylo vždycky největší omezení to, že režie s tím spojená je náročná.
time perl6 -e 'race for ^100000 {.put if .is-prime};' >/dev/null #64.94user 0.16system 0:18.49elapsed 352%CPU
time perl6 -e 'for ^100000 {.put if .is-prime};' >/dev/null      #27.83user 0.03system 0:27.81elapsed 100%CPU
Co se týká knihoven Perlu 5, tak ty jdou celkem dobře použít i v Perlu 6 pomocí Inline::Perl5
use v6;

use XML::LibXML:from<Perl5>;

my $filename = '/tmp/playlist.xml';

my $dom = XML::LibXML.load_xml(location => $filename);

for $dom.findnodes('/playlist/movie/title') -> $title {
    say $title.to_literal();
}
Srovnej s první příkladem z Perl XML::LibXML by Example. (Samozřejmě někdy to zaskřípe.)
This would have been so hard to fix when you don't know that there is in fact an easy fix.
mj41 avatar 25.1.2018 16:56 mj41 | skóre: 17 | blog: mj41 | Brno
Rozbalit Rozbalit vše Re: Optimismus ohledně Perlu 6
Na upstreamu to vypadá daleko lépe.
> perf stat -B perl6 -e 'race for ^100000 {.put if .is-prime};' >/dev/null

 Performance counter stats for 'perl6 -e race for ^100000 {.put if .is-prime};':

      45690.268196      task-clock:u (msec)       #    3.574 CPUs utilized          
                 0      context-switches:u        #    0.000 K/sec                  
                 0      cpu-migrations:u          #    0.000 K/sec                  
            43,963      page-faults:u             #    0.962 K/sec                  
   147,427,151,567      cycles:u                  #    3.227 GHz                    
   192,903,900,056      instructions:u            #    1.31  insn per cycle         
    42,450,934,486      branches:u                #  929.102 M/sec                  
       143,308,865      branch-misses:u           #    0.34% of all branches        

      12.785179639 seconds time elapsed

> perf stat -B perl6 -e 'for ^100000 {.put if .is-prime};' >/dev/null

 Performance counter stats for 'perl6 -e for ^100000 {.put if .is-prime};':

      19705.629214      task-clock:u (msec)       #    1.001 CPUs utilized          
                 0      context-switches:u        #    0.000 K/sec                  
                 0      cpu-migrations:u          #    0.000 K/sec                  
            17,081      page-faults:u             #    0.867 K/sec                  
    65,094,631,015      cycles:u                  #    3.303 GHz                    
   178,317,185,384      instructions:u            #    2.74  insn per cycle         
    39,558,982,717      branches:u                # 2007.497 M/sec                  
        69,080,754      branch-misses:u           #    0.17% of all branches        

      19.679696907 seconds time elapsed

> perl6 -v
This is Rakudo version 2017.12-279-g5cbd55281 built on MoarVM version 2017.12.1-62-ga04d1099b
implementing Perl 6.c.
Pokud se chcete zeptat na detaily přímo člověka, co většinu tohodle naimplementoval, tak máte jedinečnou možnost tady 1. března v Brně.
mj41 avatar 25.1.2018 17:11 mj41 | skóre: 17 | blog: mj41 | Brno
Rozbalit Rozbalit vše Re: Optimismus ohledně Perlu 6
Nerozumím přesně otázce. Existuje Thread a pro detaily doporučuju blog 6guts.
26.1.2018 09:42 disorder | blog: weblog
Rozbalit Rozbalit vše Re: Optimismus ohledně Perlu 6
V podstate mi ide o to, ci je mozne spravit paralelne beziaci Perl thread s (explicitne synchronizovanym) pristupom ku spolocnym datam. Proste worker thread, ako pthreads v C.

Kedysi som take nieco riesil v Perl 5 a nakoniec som myslim musel pouzit fork a IPC. Ale ide mi o to ci sa Perl 6 lisi od ostatnych jazykov, ktore to nevedia (alebo iba ich implementacie pre JVM ci CLR).
26.1.2018 16:37 Ivan
Rozbalit Rozbalit vše Re: Optimismus ohledně Perlu 6
Obecne si myslim, ze to nejde ani v Perlu, ani v Pythonu ani PHP libovolne verze. Problem neni v navrihu jazyka anebo VM ve ktere bezi. Problem je bindungu na ruzne ceckove knihovny. Pokud nevite jestli jsou thread-safe a kdy a jak zamykaji, tak nemuzete predpokladat vubec nic.
mj41 avatar 26.1.2018 22:38 mj41 | skóre: 17 | blog: mj41 | Brno
Rozbalit Rozbalit vše Re: Optimismus ohledně Perlu 6
24.1.2018 19:34 petr_p | skóre: 59 | blog: pb
Rozbalit Rozbalit vše Re: Optimismus ohledně Perlu 6
Odpovědět | Sbalit | Link | Blokovat | Admin

Já bych to nazval přehnaným optimismem. Rakudo neprojde ani vlastními testy na PowerPC nebo 32-bitovým ARMu. Platformě závislé soubory instaluje do /usr/share, skripty kamsi mimo PATH, při instalaci modulu se předkompilovává bytecode, který je závislý na proměnných prostředí, cesta k nainstalovaným modulům je zadrátovaná na několika místech a tak dále. Že to potřebuje Perl 5 k instalaci, je už jen detail.

Nedávný dopis od Elizabeth, kde píše, jak Perl 6 je skvělý, jen nemá moduly a že řešením bude, když p5p přestanou pracovat na Perlu 5 a budou místo toho portovat moduly na Perl 6, je fakt čin zoufalého člověka. Nebo člověka, který neví, o co mluví.

little.owl avatar 24.1.2018 20:53 little.owl | skóre: 22 | blog: Messy_Nest | Brighton/Praha
Rozbalit Rozbalit vše Re: Optimismus ohledně Perlu 6
Take mi to prijde jako prehnany optimismus. Perl5 spise ceka osud nastroju jako awk - bude hnit v instalaci systemu kvuli zpetne kompatibilite roky a pocet lidi, ktery to skutecne pouzivaji postupne klesne na minimum. Perl6 se jeste nedostal do pouzitelneho stavu a kdovi jestli vubec nekdy dostane.
A former Red Hat freeloader.
25.1.2018 15:32 Xerces
Rozbalit Rozbalit vše Re: Optimismus ohledně Perlu 6
A já blázen v tom pořád píšu nový věci. :-)
25.1.2018 18:37 Ondra
Rozbalit Rozbalit vše Re: Optimismus ohledně Perlu 6
ja taky. Vsak ono to jeste par let vydrzi.
25.1.2018 20:45 kolcon | skóre: 15 | blog: kolcon
Rozbalit Rozbalit vše Re: Optimismus ohledně Perlu 6

jo, jsem taky silenec - a zajimave je, ze se mi to pouziva cim dal lepe...

little.owl avatar 24.1.2018 20:57 little.owl | skóre: 22 | blog: Messy_Nest | Brighton/Praha
Rozbalit Rozbalit vše Re: Optimismus ohledně Perlu 6
Odpovědět | Sbalit | Link | Blokovat | Admin
Spise zajima jaka bude situace s Pythonem. Podpora Python2 pomalu konci a rada projektu stale neni prepsana na Python3, a pritom Python3 je uz uplne nekde jinde nez Perl6.
A former Red Hat freeloader.
24.1.2018 21:11 Cal | skóre: 6 | blog: CalBlog
Rozbalit Rozbalit vše Re: Optimismus ohledně Perlu 6
Bud PSF podporu (opet) prodlouzi nebo se toho chytne nekdo jiny. Kodu napsaneho pro Python 2 je prilis moc (a stale se pise novy).
24.1.2018 22:06 Jara K
Rozbalit Rozbalit vše Re: Optimismus ohledně Perlu 6
Doufam, ze neprodlouzi. Musel jsem psat moduly kompatibilni s Py2 i Py3 a neni to zrovna neco, co bych chtel delat casto.

Cim driv se zahodi podpora Py2, tim driv se prestane psat novy kod pro Py2. I tak na produkcnich masinach jeste spoustu let zustane, ale at uz se nepise novy, jen at dozije. Ucelem te periody bylo presne tohle.
little.owl avatar 24.1.2018 22:30 little.owl | skóre: 22 | blog: Messy_Nest | Brighton/Praha
Rozbalit Rozbalit vše Re: Optimismus ohledně Perlu 6
Bud PSF podporu (opet) prodlouzi nebo se toho chytne nekdo jiny.
Byl bych radsi kdyby se tak nestalo, ale asi to tak bude. Red Hat to bude "podporovat" ve svych produktech jeste roky.
Kodu napsaneho pro Python 2 je prilis moc (a stale se pise novy).
Ano.

Trochu mi prijde, ze plno veci se misto prevodu do Python3 radsi rovnou prepisuje do Golang, coz je mnohem narocnejsi na cas/pocet lidi, ale scaling/rychlost/snadnost nasazeni vyhravaji.
A former Red Hat freeloader.
24.1.2018 21:14 kolcon | skóre: 15 | blog: kolcon
Rozbalit Rozbalit vše Re: Optimismus ohledně Perlu 6
v cem je Python 3 nekde uplne jinde nez P6?
little.owl avatar 24.1.2018 22:30 little.owl | skóre: 22 | blog: Messy_Nest | Brighton/Praha
Rozbalit Rozbalit vše Re: Optimismus ohledně Perlu 6
Minimalne v tom ze je jiz nekolik let v produkcnim stavu, pouzivany v mnoha projektech a neni to v podstate uplne novy jazyk jako P6, takze se nezacina z nuly.
A former Red Hat freeloader.
26.1.2018 22:54 mimi.vx | skóre: 37 | blog: Mimi.VX | Praha
Rozbalit Rozbalit vše Re: Optimismus ohledně Perlu 6

neni to hracka co se vyviji od roku 2000 a mozna ted dospela k nejake specifikaci...

neni to uplne novy jezyk +- zaklad je python2 s par nekompaktibilnimi vecmi ( ketere si vynutily novou Major verzi)

 

narozdil od Perlu6 python3 bude v nejblizsi dobe defaultni varianta ve SLESu, openSUSE , Fedore etc.

 

a na rozdil od Perlu5 python2 RedHad i SUSE zabiji meze 2024/2027 s tim ze  uz predtim veskera mainteance bude jen pro platici zakazniky a na starych verzich distribuce

 

toho noveho kodu v python2 je stale mene ... a napr. nove Django je uz jen Python 3.4+.

USE="-gnome -kde";turris
mj41 avatar 27.1.2018 23:02 mj41 | skóre: 17 | blog: mj41 | Brno
Rozbalit Rozbalit vše Re: Optimismus ohledně Perlu 6
Pro mě je Perl 6 supr hračka. Když se v Perlu 6 dají napsat věci jako Cro tak si říkám, že si třeba v budoucnu vystačím s Perlem 6. Na druhou stranu si to říkám už více než deset let a moc věcí jsem v Perlu 6 ještě nenapsal. Pro mě jsou Python 2 i Python 3 stále jako Perl 5. Zachrání nás jen Go/Grumpy, Rust, ... nebo možná právě Perl 6.

Nemyslím, že Python někdy bude mít v distribucích stejné postavení jako Perl 5. To nebude mít ani Perl 6. A ani to nikdo neočekává. Perl 5 je tam, protože je zpětně kompatibilní, stabilní, má spousty řádků kódu v systému a infrastruktuře okolo. V distribucích je verze o několik let pozadu oproti poslední komunitou podporované verzi, ... tj. docela nevhodné na vyvíjení aplikací kvůli nedostatku nových funkcí a špatnou kompatibilitou s novýmí moduly. Systémový Perl nahrazuje bash/sed/awk/... Na aplikace tu bude poslední Perl 5 a časem snad i ten Perl 6, který si musíte nainstalovat sami. Ostatně dnes to už jsou stejně samé mikroservisy a kontejnery, tak to co dostanu z rpm už tolik potřeba není.

Tolik mi radí moje hlava a má křišťálová koule. Počkáme si a uvidíme :-).

BTW brožurka pro refresh jak je na tom ten Perl 6.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.