ChanServ changed the topic of #lowempire to: Low Level Empire | This channel was created for Algorithms, Compilers, OS, Hardware, CS theory stuff (low-level) | be patient, polite | don't do off top | Ask your question | Paste your codes/long texts https://paste.debian.net/ or "echo just testing! | nc termbin.com 9999" | Logs: https://freenode.irclog.whitequark.org/lowempire
ascii has joined #lowempire
ascii has quit [Ping timeout: 240 seconds]
lucid_0x80 has joined #lowempire
<lucid_0x80>
salamlar
<lucid_0x80>
marlin
<lucid_0x80>
indi gordum mesajini
<lucid_0x80>
backend hissede generator isleyir
<lucid_0x80>
compiler phrasedir o
<lucid_0x80>
ASTden datalari yigir
<lucid_0x80>
sonra o datalari goturub
<lucid_0x80>
LLVM ile
<lucid_0x80>
assembler instruction generasiya edir
<marlin>
bax meselen proglasdirma dilleride arxada os muraciet edirde thread yaratmaq ucun hansisa bir program teminatini run etmek ucun. men indiye kimi bilirdim ki corotuniler bir thread-de isleyir yeni async bir threadle isleyir, hemin threaddin icinde context swithing bas verir onlar arasinda. multiple thread olmasi meni qarisidirdi, compilerida signal atan bu programing dildirde , compiler ozu onda gedib basqa thread-ler yaradir orda ?:)
<marlin>
alem deydi)))
<suskun>
biraz sebr et
<suskun>
bunun
<suskun>
writeupini yazacam
<suskun>
senin ucun
<suskun>
tam deqiq
<marlin>
yox yazmaq danissq elee))
<marlin>
ezieyet cekme))
<suskun>
"compiler ozu onda gedib basqa thread-ler yaradir orda ?:)" it depends on interpreter/compiler
<suskun>
meselen javascript yaradir
<suskun>
polling etmek ucun ki
<suskun>
isini bitiren async funksiya var ya yox
<suskun>
bes axi sen bir threadin icinde isleyende o nece interrupt olacaq?
<suskun>
OS switching edir ozu ucun
<suskun>
OS bilmir axi
<suskun>
senin contextivin icinde ne bas verir
<suskun>
bax
<suskun>
bele birsey deyim sene
<suskun>
birdene pythonda kod yazmisan
<suskun>
def A() { do something .......... call_some_function(); }
<suskun>
bu A funksiyasi CPUda isleyir
<suskun>
bu funksiya ne vaxt dayanacaq?
<suskun>
gelib ret instructionina
<suskun>
catanda
<suskun>
duzdur?
<marlin>
aha
<suskun>
OS ne bilsin ki
<suskun>
epoll deyek
<suskun>
meselen
<suskun>
o ne bilsin ki
<suskun>
senin koduvun icinde ne isleyir
<suskun>
ki
<suskun>
mueyyen bir yerde
<suskun>
desinki he fayl geldi
<suskun>
qayit flan funksiyaya
<suskun>
bunu etmek shansi var? OSin?
<suskun>
bir threadin icinde
<suskun>
yada compilerin
<suskun>
yox
<suskun>
cunki compielr birdene codebase generasiya edir
<suskun>
kod birdenedir
<suskun>
run olur
<suskun>
funksiya daha dogrusu
<suskun>
o gerek herdefe ozunu interrupt edib
<suskun>
check etsinde
<suskun>
onda sen dediyin kimidirse
<suskun>
"men indiye kimi bilirdim ki corotuniler bir thread-de isleyir yeni async bir threadle isleyir,"
<suskun>
bir threadin icinde isleyirse
<suskun>
nece o biri async funksiyanin gozlediyi data gelende xeberi olur?
<marlin>
tekrar tekrar oxuyuram birdene sebr ele :)
<suskun>
okay
<suskun>
async ozu threadla islemir threadla isleyen o pollerdir
<suskun>
polling edira
<suskun>
bax o
<marlin>
sorry suallarim dummy olar yeni never mind-daa pls) bes burda CPu instrucktions os melumat oturmur? onda eger compiler bir dene code base generasiya edirse onda o bolgunude edirde yeqin ki nqeder thread cixaq codebase ucun,
<marlin>
yeni o file check elemek ucun file descirptorlar ucun men mecburam thread yaradir ?
<suskun>
bes
<suskun>
nece xeberin olacaq
<suskun>
ki fayllar
<suskun>
oxunub ?
<marlin>
yeni nedir best eslidnde?
<suskun>
qutarib
<marlin>
ozu elemir bes?
<suskun>
onu python ozu edir
<suskun>
meselen
<suskun>
nodejs ozu edir
<marlin>
ahaa
<suskun>
compilerda binary code generasiya olur deye mecburdan ozun edesen
<marlin>
ele bunu demek isetyirdim men mellim))
<suskun>
ozu etse bele thread istifade edirde :-D
<marlin>
bayqdan ki bes onlarda hazirdir axi men bilen
<suskun>
yeni thread yoxdur deye birsey yoxdur
<suskun>
axi
<suskun>
men bayaq
<suskun>
ona gore
<suskun>
dedim ki
<marlin>
hee onda bir thread imeenna
<marlin>
bu ise baxirda
<suskun>
interpeterler
<marlin>
main-den elave
<suskun>
ozleri edirler
<marlin>
olaraq
<marlin>
queue check ene
<suskun>
heee
<suskun>
v8i atdim
<suskun>
bax
<suskun>
gorursen
<suskun>
v8
<suskun>
epoll istifade
<suskun>
edir
<marlin>
aha
<marlin>
he tutdum indi temani)
<marlin>
izah eliyecem sene
<marlin>
:Dgor duz bildim indi mellim ))
<suskun>
aha
<marlin>
qoy birdene sualimi verim , normal python ve node.js olsun arxada ozleri edibde bize artiq imkani vermirlerki sen uzerinde emliyyat aparasn. bes basqa diller niye bunu usere buraxir ki ?
<marlin>
yeni nese bildikleri var ki ele edir yoxsa
<marlin>
python implement elemek ucun daha cox ezieyte cekib onlar o eziyeti goze almir
<marlin>
menseyi deyirem
<marlin>
bu thread check epolu check edne
<marlin>
ama o threadin umiytler main threa-de hec bir aidiyati yoxdur-da. bilirsen men nede ilisirem, python da GIL var-da multiple thread eyni vaxta icra olmur, eger burda iki thraed varsa onda aync python vapse cox vaxt alir
ascii__ has joined #lowempire
<suskun>
GIL basqa seydir
ascii__ has quit [Read error: Connection reset by peer]
<suskun>
GIL bilirsen nedir
<suskun>
GIL interpreterin
<suskun>
thread execute etmesine icaze vermir
<suskun>
asyncin cavabini veren
<suskun>
epolldu
<suskun>
onuda kernel edir
<suskun>
pythonun threadina qarisdirma onu
<suskun>
epoll kernel seviyyesinde isleyir
<suskun>
ve yaxud select syscalli
<suskun>
butun bu pollingi eden seyler
<suskun>
kernel seviyyesinde isleyir
<suskun>
user seviyyesinde yox
ascii has quit [Ping timeout: 260 seconds]
<suskun>
polling eden python deyil yeni
<suskun>
pollingi eden kerneldir
<suskun>
iki thread bilirsen harda olmali olur
<suskun>
binaryda
<suskun>
compiler-da
<suskun>
ikinci threadi yaradirsanki
<suskun>
getsin select()/epoll etc.
<suskun>
ni cagirsin
<suskun>
pythonda ise
<suskun>
interpreterin
<suskun>
oz prosesi varda
<suskun>
ehtiyyac yoxdur
<suskun>
threade
<marlin>
he onda bele summurize etsek, kernelde olan thread le python thread-di basqa basqa temalardir
<suskun>
yessss
<suskun>
eynen
<marlin>
bir interpretoro seviyesinde olandir birise kernelde?
<suskun>
eynen
<suskun>
biri kernel threaddir
<suskun>
birise user
<marlin>
aha okey indi yavas yvash ozume gleirem
<marlin>
:)
<suskun>
cool :-D
<suskun>
async asan konseptdir eslinde
<suskun>
prosto bilirsen niye bu qeder
<suskun>
casdirilir
<suskun>
cunki haqqinda yazanlarin
<suskun>
ozleride tam oyrenmeyib yazirlar
<suskun>
ona gore poxu poxa qatirlar
<marlin>
cunki aglime GIL- getdiki eger multi thread dirse onda duz olmaszad eyni anda cunki threadler paralel olraq icra olmur
<marlin>
ahaaa
<marlin>
eynen
<suskun>
thread hemise var
<suskun>
hemise
<suskun>
async thread yaratmir
<suskun>
o demekdir ki
<suskun>
her async funksiya thread yaratmir
<suskun>
ancaq asynca
<suskun>
destek ucun
<suskun>
thread olmalidir axi
<marlin>
onsuzda hemin asyncler birdene thread-le icra olmalidirda
<marlin>
her yaratmaz okey duzdur
<suskun>
yes
<marlin>
ama istesen sen async call icinde ayrica trhead
<marlin>
yarada bilersen de
<suskun>
heee
<suskun>
elbette
<marlin>
ela ela bele umumi gornus aydin oldu mene duzdur kerneli o qeder bilmirem ama uzden meen aydin oldu meselelr konspektler
<marlin>
cox sagolun mellim siz ejdahsiz heqeityen
<marlin>
:D
<marlin>
cox komeyiniz deydi hazird cox babat diskusiya getdi burda))
<marlin>
ejdaha sohbetlere bele temalara varamda men
<marlin>
:)
<suskun>
opurem opurem
<suskun>
aydin oldusa sevindim
<suskun>
ejdaha kImi
<marlin>
karantin vare bura ara meseafesi
<marlin>
gozlemirsen
<marlin>
heqqi aydin oldu bilmediklerimi oyrendim cox seyler
<marlin>
cox sagol bro birdaha :D
<marlin>
go-ya baxmisan?
<suskun>
:-D
<suskun>
gonun neyine?
<marlin>
orda bilirsen hansi tema gorotuniler
<marlin>
yoxsa sen go-nu sevmrisen axi :D
<marlin>
:)sprry bro men sevemey basladim onu))
<marlin>
pisdeme xais )))
suskun has quit [Quit: Leaving]
<marlin>
halal ele eziyetini mellim vaxtini ayrdin