Diskuze: Je dobrý nápad psát v Pythonu programovací jazyk?

Člen

Zobrazeno 10 zpráv z 10.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
Python není moc dobrá volba pro rychlost, kompiluje se totiž za běhu
OK, a jak je na tom paměťově?
Pamäťovo podobne jako Java alebo C#. Čiže používa Garbage Collection, co nie je najlepšia volba z hladiska rýchlosti a využitia pamäte.
Python je jen specifikace jazyka, a jeho rychlost se liší podle konkrétní
implementace a konkrétní aplikace. Místo cpythonu (tj. standardní
implementace stažená z python.org) existují implementace zaměřené výkon
jako cython nebo pypy. Ze samostatným výkonem se tedy dá ještě čarovat,
mimo jiné i pomocí céčkových knihoven, které uvolní úzké hrdlo dané
aplikace.
POkud vím, např. jython je obecně pomalejší proti samotné javě proto, že
není staticky typovaný, a to brání kompilátoru ho optimalizovat tak
účinně jako samotnou javu nebo jiný staticky typovaný jazyk pro JVM.
Je ovšem potřeba si uvědomit, že úzké hrdlo samotného programu netvoří
většinou jazyk, ale spíš nevhodný algoritmus.
Co se týče paměti, tam záleží na tom, jak to naprogramuješ. Se
samostatným jazykem bych si hlavu nelámal. Co se týče správy paměti,
generátory určitě znamenaly pro její uvolnění obrovský pokrok.
Ovšem, python je vysokoúrovňový jazyk, takže se snaží své programátory
odfiltrovat od nižších úrovní. Proto hodně záleží na tom, co si od toho
slibuješ
POkud tě to opravdu zajímá, můžeš si přečíst toto:
Tak jsem nakonec použil PyPy3 a běží jako hodinky. A mimochodem, můžete si ho vyzkoušet. Zdroják je na adrese: https://github.com/Unicyde/Flat
Pěkné,
mimochodem, kde jsi našel toto? Tohle jsem ještě nikde neviděl. Ale
kupodivu to funguje
result[0::2] = lst
hlavně hodně záleží, jak to myslíš.. napsat parser a překladač v
pythonu je naprosto v pohodě.. s textem umí pracovat pěkně a jednoduše..
překládat ten tvůj jazyk do pythonu zase není moc dobrý nápad.. Python
je sám o sobě hodně vysokuúrovňový a pomalý.. záleží samozřejmě k
čemu to má sloužit.. jestli je to jen blbinka na vyzkoušení si tvorby
jazyka, tak proč ne..
Pokud to má být reálný, dobře využitelný jazyk, tak by se měl
překládat minimálně do C/C++, ideálně rovnou do ASM
Ale to je hodně práce (ne pro jednoho).. Takže dobrý kompromis by bylo
překládat do http://llvm.org/
Výhoda je, že tím bez enormní námahy získáš překlad pro x různých
platforem.. Nějak blíž jsem to ale nezkoumal, takže nemůžu přesně
říct, jak to funguje a jak to použít
EDIT: Tak jsem si právě všiml, že ta diskuze je poněkud postaršího
data..
Tak to už vážně netuším, ale myslím, že je to slicování multidimenzionálního listu..
EDIT:
Už to vím! Na každou druhou pozici v listu přidá daný element. (Nejspíš
jsem to našel na StackOverflow)
Zdravím, myslím, že Python je dost fajn jazyk, který se dá použít velmi všeobecně. Když jsem v něm mohl stvořit emulátor ZX, tak i rychlost je přijatelná. Též byl mou volbou pro přetvoření PC Fandu do trochu modernější varianty...zatím rozpracovaná verze. Tedy v závěru mohu tvrdit, že programovací jazyk v Pythonu jde udělat...i když C by asi byla lepší volba, ale příliš složitá práce s ukazateli a mnoho nutných kontrol poněkud v C zpomaluje vývoj.
Zobrazeno 10 zpráv z 10.