Það er dáldið erfitt að lýsa Stackless Python akkúrat þessa dagana þar sem Christian Tismer, náunginn á bak við Stackless, er að endurskrifa það.
Einfaldasta lýsingin á því er að segja að með Stackless fást mjög ódýrir þræðir. Venjulegir stýrikerfis þræðir hafa sér stack fyrir hvern þráð, sem gerir það að verkum að það verður mjög dýrt að smíða marga þræði. Einnig kostar töluvert (fer eftir stýrikerfi hversu mikið) að skipta milli þráða.
Örþræðir í stackless nota ekki C hlaðann (stackinn) heldur byggja þeir á fyrirbæri sem heitir Continuation í eldri útgáfu stackless og tasklets í nýju útgáfunni.
Það er mjög ódýrt að skipta á milli örþráða (kostar það sama og Python function kall) og hver þráður tekur mjög lítið pláss.
Í nýju útgáfunni hefur Tismer t.d. smíðað 100.000 þræði (tasklets) í 80MB af minni og 1.000.000 skiptingar milli þráða taka 0.6 sek (skv. stackless póstlistanum)
Varðandi hljóð og mynd, þá notar ccp python einmitt til að vinna með hljóð og grafík. Reyndar eru library (directx, hljóð og net) skrifuð í C++ kóða sem Python kóðinn notar svo.
En þeir sem sjá um að útfæra grafíkina og hljóðið nota aldrei neitt annað en Python. Þannig að þegar grafíkliðið er að fikta sig áfram með einhverja fítusa í direct3d gera þeir það með Python.
Á netinu er hægt að sækja OpenGL library fyrir Python, en ég hef aldrei skoðað það.
þessar upplýsingar hafa svosem lítið með upprunalegu spurningu að gera… en hvað um það.
Matti Á.