07:30 <lucid_0x80> salamlar 07:30 <lucid_0x80> marlin 07:30 <lucid_0x80> indi gordum mesajini 07:30 <lucid_0x80> backend hissede generator isleyir 07:30 <lucid_0x80> compiler phrasedir o 07:30 <lucid_0x80> ASTden datalari yigir 07:30 <lucid_0x80> sonra o datalari goturub 07:30 <lucid_0x80> LLVM ile 07:30 <lucid_0x80> assembler instruction generasiya edir 10:18 <marlin> maraqlidir 12:13 <lucid_0x80> marlin 12:13 <lucid_0x80> teze event yaratdim 12:13 <lucid_0x80> 6ci gun 12:13 <lucid_0x80> yegin isiniz yoxdurda :-D 12:37 <marlin> ne eventi 12:37 <marlin> ? 12:37 <lucid_0x80> https://www.facebook.com/events/228512968691075 12:38 <marlin> ejdaaha snei)) 12:38 <marlin> qeseng 12:38 <marlin> :D 12:38 <lucid_0x80> gozleirem :-D 12:38 <lucid_0x80> 6ci gun 12:38 <marlin> qesey sevindim 12:38 <marlin> he yuz faiz 12:38 <marlin> ordayam men 12:38 <marlin> :) 12:38 <marlin> hammiz 12:38 <marlin> maraqli topicler 12:38 <marlin> var 12:40 <lucid_0x80> ya bu axsam yada sabah async haqqinda etrafli muzakired erik 12:40 <lucid_0x80> teze temalar var 12:40 <marlin> ciddi 12:40 <marlin> olar 12:41 <marlin> nese teze temalr kesf etdin? 12:41 <marlin> umumi konsept ya sirf biri ucun? 12:42 <lucid_0x80> umumi konsept haqqinda 12:42 <lucid_0x80> indi function callingi ayziram 12:42 <lucid_0x80> sonra kececem 12:42 <lucid_0x80> asynci yazmaga 12:42 <marlin> okey elasan 12:42 <marlin> axsam muzakire ederik 12:42 <marlin> babtizm 12:42 <marlin> sene bir dene mahni gelsin :) 12:43 <marlin> https://www.youtube.com/watch?v=Vw7lDm4Gdwo&ab_channel=BOZKURT39.59 12:44 <lucid_0x80> qesengggggggg 12:44 <marlin> :) 12:44 <marlin> bildim senniy birseydir bu rep 12:44 <marlin> cox babatdirda 12:44 <lucid_0x80> efsanevi kesfiyyatci olaraq her zaman bele temalar menlikdir :-D 12:44 <marlin> :D :D herii))) 13:39 <ascii> hiii guys :DD 13:40 <ascii> gorem ikivizde burdasiz etaga :D 13:40 <lucid_0x80> hahaha 13:40 <lucid_0x80> salamlar 13:40 <lucid_0x80> burdayiq yes 13:40 <marlin> herzmaan :) 13:40 <ascii> :DDDDDD 13:40 <lucid_0x80> biz bbutun gunu burdayiq 13:40 <lucid_0x80> sen axsam 13:40 <lucid_0x80> gelirsen 13:40 <lucid_0x80> ancaq ;-D 13:40 <lucid_0x80> onda da yatiriq:-D 13:40 <marlin> :d kurglu sutka 13:40 <ascii> ela ela)) netersuz?))) 13:40 <lucid_0x80> shukur salamatciligdir 13:40 <marlin> bomba kimi 13:40 <lucid_0x80> sen netersen 13:40 <marlin> :D 13:40 <marlin> sen netersne 13:40 <ascii> xaxaxa:DDD Mende gece heyatidi e brat :DDD 13:40 <ascii> Yarasa blyat :DD 13:40 <lucid_0x80> gececisen? :-D 13:41 <ascii> o nedi?)) 13:41 <suskun> gececide 13:41 <suskun> geceye qalanlar 13:41 <suskun> :-D 13:41 <suskun> turkce yoxdu soz :-D 13:41 <ascii> :DDDD xaxaxaxa 13:41 <ascii> yox e men 12-1 uje yatiram :D 13:41 <ascii> elede gec gelmiremki bura) 13:42 <ascii> marline ba butun gunu yatir e burda :DD 13:42 <ascii> lucid event xeyirli olsun mellim :DD 13:42 <ascii> babat temalardi:) bele baxdim event hardasa 3-4 saat gedecey diesen )) 13:42 <marlin> 1 il gececi islemisem ))) 13:42 <marlin> cox geder 13:43 <marlin> :D 13:43 <suskun> opurem heee 3-4 saat 13:43 <suskun> olacaq yegin :-D 13:43 <suskun> gorek cox adam qosulacagmi :-D 13:43 <suskun> qoz qoyan olacagmi :-D 13:43 <ascii> esas odu biz ordayig :DDDDD 13:43 <suskun> hemise 70 nefer going/interested olur 13:43 <ascii> ala nedi bu gececi?))))) 13:43 <suskun> 3 nefer girir 13:43 <suskun> sen marlin 13:43 <suskun> birde dark 13:43 <suskun> :-D 13:43 <ascii> :DDDD itiren olardida,agil yoxdu 15:07 <suskun> compilerlarin 15:07 <suskun> tetbiq etdikleri 15:07 <suskun> asynclar 15:07 <suskun> coooox 15:07 <suskun> ferqlidire 15:07 <suskun> dehset cox 15:07 <marlin> nece yeni 15:08 <marlin> her compiler ferqli tetbiq edib? 15:08 <suskun> yox 15:08 <suskun> OSden ferqli implement edibler 15:08 <marlin> sen ferqleri hansi dillerde gorursen yeni go baxirsan? 15:08 <suskun> Rust-a 15:08 <suskun> baxiram 15:08 <marlin> bes nece isleyir onda ? 15:08 <marlin> niye os-den ferqli elesinler 15:08 <marlin> axi 15:09 <suskun> cunki 15:09 <suskun> kodlara 15:09 <suskun> aid informasiyalar 15:09 <suskun> yaradilan coroutine 15:09 <suskun> de 15:09 <suskun> saxlanilir 15:09 <marlin> os coxmu geri qalib :) 15:09 <suskun> hetta bilirsen ne mesele var 15:09 <suskun> yox konseptler ferqlidir 15:09 <suskun> ona gore 15:09 <suskun> coroutine-da bele bir meselede var 15:09 <suskun> tls var 15:09 <suskun> thread local storage 15:09 <suskun> sen multithread yaradanda 15:09 <suskun> local variable 15:09 <suskun> threada 15:09 <suskun> aid 15:10 <suskun> global/local variablelar 15:10 <suskun> sorry global 15:10 <suskun> variablellar 15:10 <suskun> saxlanilir orda 15:10 <suskun> her threadin 15:10 <suskun> global strukturlari 15:10 <suskun> sen threadlar arasinda kecid edende 15:10 <suskun> switching olur 15:10 <suskun> bu switchingde tlsde deyisir 15:10 <suskun> coroutines-da 15:11 <suskun> sen suspend edib 15:11 <suskun> novbeti funksiyaya kecende 15:11 <suskun> funksiyanin variablleari 15:11 <suskun> contextda saxlanilir 15:11 <suskun> meselen async fn A() 15:11 <suskun> async fn B() 15:11 <suskun> fn A() { call async B(); } 15:12 <suskun> async fn A() { doing something..... suspend;} 15:12 <suskun> switch olacaq A funksiyasina 15:12 <suskun> onda saving olur 15:13 <suskun> yada async.sleep(222) 15:13 <suskun> compiler bunu goren kimi switch edir 15:14 <marlin> switch edende suspend olan funksiyani da hemin contexte atir da yox? 15:14 <marlin> ona gore asyn.sleep verirler he onda 15:15 <marlin> swtitch etsin deye diger corotuine 15:16 <marlin> onsuzda corotuniler hamsi bir thread icinde bas verirde, burda tls olmagini anlaya bilmedim 15:18 <suskun> yox 15:18 <suskun> bir threadin icinde bas vermir 15:18 <marlin> dogurdan? 15:18 <suskun> bir threadin bir isleme statei olur 15:18 <suskun> o interrupt olmasa 15:18 <marlin> ooo bes bir thread icinde deyil ki? 15:18 <suskun> nece switching ola biler? 15:18 <suskun> basqa bir threadda daim polling etmelidir axi 15:18 <suskun> ki 15:18 <suskun> ordan 15:19 <suskun> cavab gelib ya yox 15:19 <suskun> meselen 15:19 <suskun> bunu indi kodnan zadnan writeup yazacam 15:19 <marlin> onda sen deyirsen ki async eslinde multiple threadler arasinda swtihc edir? bes ordaki swithc eslinde corotuniler arasinda deyil 15:19 <suskun> yoxe 15:19 <suskun> async threadlar arasinda 15:19 <suskun> etmir 15:20 <suskun> switch 15:20 <suskun> funksiyalar arasinda 15:20 <suskun> olur duzdur 15:20 <suskun> ancaq basqa bir threadda lazimdir ki 15:20 <suskun> contexti flan check etsin 15:20 <suskun> like this 15:20 <suskun> https://aws1.discourse-cdn.com/free1/uploads/llvm/optimized/1X/020cd69d4fa27844ab8386334edbdd6e3e34aa7c_2_690x245.png 15:20 <marlin> bes event loop bir threade ait deyil men qarisdime yene ) 15:21 <marlin> event loopun icinde olan corotuniler 15:21 <suskun> event loop ozu threadda yaranir duzdur 15:21 <suskun> oda OS-dedir 15:21 <suskun> compiler-da 15:21 <suskun> ise 15:21 <suskun> he 15:22 <suskun> coroutinelardir 15:22 <suskun> event loopu qatma 15:22 <suskun> compiler-da 15:22 <suskun> event loop yoxdur 15:22 <suskun> :-D 15:22 <suskun> event loop os seviyyesinde olur 15:22 <suskun> o osindir 15:22 <suskun> epoll 15:22 <marlin> hee bu sohbet compiler-a aitdire ?)) 15:22 <suskun> hee 15:22 <suskun> coroutinelerin 15:22 <suskun> switchingi 15:22 <marlin> men event loop-la qarisdime )) 15:22 <suskun> compilera aiddir 15:22 <suskun> yox 15:22 <suskun> event loop basqa seydir 15:22 <marlin> aa 15:22 <suskun> event loop melumatin gelib gelmemesini check edir 15:23 <marlin> bes m=hemin queue yigilmir corontuniler? 15:23 <marlin> o queue hansiki daim check edilirde, notfiction call back-ida var 15:23 <suskun> queue-a descirptorlar yigilir 15:23 <suskun> coroutinelarin 15:23 <suskun> sahib 15:23 <suskun> oldugu descirptorlar 15:23 <suskun> coroutine adi funksiyadir 15:23 <suskun> dayan sene birdene qrafika atim 15:23 <suskun> tam tutacagsan 15:23 <suskun> temani 15:24 <suskun> https://pasteboard.co/JD4NVuH.png 15:24 <suskun> bu qeder asan 15:24 <suskun> bax 15:27 <suskun> bu asycin konseptidir 15:27 <suskun> event loop yox 15:28 <marlin> thread umumi birsey deyil 15:28 <marlin> m? 15:28 <suskun> hansi thread? 15:30 <suskun> ahahah 15:30 <suskun> bla javascriptde ise konsept 15:30 <suskun> tam basqadir 15:30 <suskun> etaga pizdec :-D 15:31 <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 ?:) 15:31 <marlin> alem deydi))) 15:31 <suskun> biraz sebr et 15:31 <suskun> bunun 15:31 <suskun> writeupini yazacam 15:31 <suskun> senin ucun 15:31 <suskun> tam deqiq 15:31 <marlin> yox yazmaq danissq elee)) 15:31 <marlin> ezieyet cekme)) 15:32 <suskun> "compiler ozu onda gedib basqa thread-ler yaradir orda ?:)" it depends on interpreter/compiler 15:32 <suskun> meselen javascript yaradir 15:32 <suskun> polling etmek ucun ki 15:32 <suskun> isini bitiren async funksiya var ya yox 15:32 <suskun> bes axi sen bir threadin icinde isleyende o nece interrupt olacaq? 15:32 <suskun> OS switching edir ozu ucun 15:32 <suskun> OS bilmir axi 15:32 <suskun> senin contextivin icinde ne bas verir 15:32 <suskun> bax 15:32 <suskun> bele birsey deyim sene 15:32 <suskun> birdene pythonda kod yazmisan 15:33 <suskun> def A() { do something .......... call_some_function(); } 15:33 <suskun> bu A funksiyasi CPUda isleyir 15:33 <suskun> bu funksiya ne vaxt dayanacaq? 15:33 <suskun> gelib ret instructionina 15:33 <suskun> catanda 15:33 <suskun> duzdur? 15:33 <marlin> aha 15:33 <suskun> OS ne bilsin ki 15:33 <suskun> epoll deyek 15:33 <suskun> meselen 15:33 <suskun> o ne bilsin ki 15:33 <suskun> senin koduvun icinde ne isleyir 15:33 <suskun> ki 15:33 <suskun> mueyyen bir yerde 15:33 <suskun> desinki he fayl geldi 15:33 <suskun> qayit flan funksiyaya 15:33 <suskun> bunu etmek shansi var? OSin? 15:34 <suskun> bir threadin icinde 15:34 <suskun> yada compilerin 15:34 <suskun> yox 15:34 <suskun> cunki compielr birdene codebase generasiya edir 15:34 <suskun> kod birdenedir 15:34 <suskun> run olur 15:34 <suskun> funksiya daha dogrusu 15:34 <suskun> o gerek herdefe ozunu interrupt edib 15:34 <suskun> check etsinde 15:34 <suskun> onda sen dediyin kimidirse 15:34 <suskun> "men indiye kimi bilirdim ki corotuniler bir thread-de isleyir yeni async bir threadle isleyir," 15:34 <suskun> bir threadin icinde isleyirse 15:34 <suskun> nece o biri async funksiyanin gozlediyi data gelende xeberi olur? 15:35 <suskun> bu mumkun deyil axi 15:35 <suskun> ele deyil? 15:35 <suskun> btw sohbet interpreterlerdan gedir js/python 15:35 <suskun> fikrimi izah ede bildim? 15:36 <marlin> tekrar tekrar oxuyuram birdene sebr ele :) 15:36 <suskun> okay 15:40 <suskun> async ozu threadla islemir threadla isleyen o pollerdir 15:40 <suskun> polling edira 15:40 <suskun> bax o 15:40 <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, 15:40 <suskun> async birdene contextde isleyir 15:40 <suskun> yox aybrat 15:40 <suskun> CPUnun 15:40 <suskun> senin kodunda bas verenlerin 15:40 <marlin> aha 15:40 <suskun> hecbirinnen 15:40 <suskun> xeberi yoxdur 15:40 <suskun> thread bilirsen nedir 15:40 <suskun> birdene processin icinde 15:40 <suskun> ferqli contextler yaratirlar 15:41 <suskun> onlari prosesin icinde dayandira dayandira 15:41 <suskun> isledirler 15:41 <suskun> prosto sene o parallel gorunur 15:41 <suskun> o polling vare 15:41 <suskun> o OS terefde olan prosesdir 15:41 <suskun> syscall ile 15:41 <marlin> aha 15:42 <suskun> o tez tez fayl descritpro 15:42 <suskun> u 15:42 <suskun> yoxlayir 15:42 <suskun> ki 15:42 <suskun> fayl tam gelib catib ya yox 15:42 <suskun> gelib catanda 15:42 <suskun> sene siqnal oturur 15:42 <suskun> ki geldi catdi 15:42 <suskun> basla dayandirdigin asynci icra 15:42 <suskun> etmeye 15:43 <marlin> orasi aydindir hec 15:43 <suskun> asyncin ozu ise 15:43 <suskun> tam ferqlidir 15:43 <suskun> async ozude 15:43 <suskun> state machine-dir 15:43 <suskun> awaite qeder 15:43 <suskun> kodu icra edir 15:43 <suskun> sonra switch edir 15:43 <marlin> ona os qeraar veride? 15:43 <marlin> swithce? 15:43 <suskun> yox 15:43 <suskun> compiler 15:43 <suskun> awaiti gorende 15:44 <suskun> return instructionini 15:44 <suskun> ise salir 15:44 <suskun> qayitir 15:44 <suskun> o biri funksiyaya 15:44 <suskun> OS qerar vere bilmez ona 15:44 <suskun> OS hardan bilir senin kodunda ne isleyir 15:44 <suskun> hemde OS interrupt ede bilmir axi 15:44 <suskun> interrupti ancaq CPU ede bilir 15:45 <suskun> async doesn't create thread 15:45 <suskun> bunun menasi o demek deyilki 15:45 <suskun> sen her asyncde 15:45 <suskun> sorry 15:45 <suskun> bunun menasi 15:45 <suskun> odur ki 15:45 <suskun> her asyncda 15:45 <suskun> thread yaratmirsan 15:46 <suskun> o demek deyil ki 15:46 <suskun> sen umumiyyetle 15:46 <suskun> thread istifade 15:46 <suskun> etmirsen 15:46 <suskun> bunu bele yadinda saxla vse 15:46 <suskun> sen multi-threading/concurrency istifade etmelisen 15:46 <suskun> basqa yolun yoxdur 15:46 <suskun> async threading istifade etmir o demekdir ki 15:46 <suskun> multi threadingde nece 15:46 <suskun> her funksiya ucun 15:46 <suskun> ayri thread yaradirsane 15:46 <suskun> asyncde ele deyil 15:46 <suskun> asyncda 2 dene threadla bu switchingi ede bilersen 15:46 <suskun> meselen 15:48 <suskun> dayan sesde atiram sene 15:52 <marlin> async doesn't create thread -> sen corotunie icinde onsuzda istesen yarad bilersen thread, ama ozu yaratmir. ama async await de kimse multithreadingde nece istifade edirsen bes? 15:52 <suskun> https://voca.ro/1550ML0tECcF 15:52 <suskun> coroutine icinde thread yaratmada axi o performans overhead verecek axi sene 15:52 <suskun> sese quloaq as birdene] 15:52 <marlin> oooo thank you qulaq asiram 15:52 <marlin> :D 15:52 <suskun> qulaq asannan sonra denen silim pls 15:53 <marlin> yaxsi 15:53 <suskun> kameranin mikrofonu ile yazmisam zordue gor ses ne temiz cixir :-D 15:54 <suskun> https://miro.medium.com/max/982/1*xm_WajiPlaOeJWcqgJb1xQ.png 15:57 <suskun> https://voca.ro/1m37BJJzWmrO 15:58 <marlin> okey aydindir ses, indi bele birsey varda bu context umumi olaraq main thraed-de ait olurda ? 15:58 <suskun> https://www.vskills.in/lms/wp-content/uploads/2019/07/image080.jpg 15:58 <suskun> bu shekilede bax 15:58 <suskun> ikinci sesede 15:58 <suskun> qulaq as 15:58 <marlin> yaxsi 15:58 <suskun> birincini 15:58 <suskun> silim? 15:59 <marlin> he qulaq asdim 15:59 <marlin> ona 15:59 <suskun> sesim 15:59 <suskun> leak olmasin :-D 16:02 <suskun> btw 16:02 <suskun> indi baxdim 16:02 <suskun> ziglangda 16:02 <suskun> men dusunduyum 16:02 <suskun> kimi 16:02 <suskun> implement edib :-D 16:02 <suskun> asycni 16:02 <suskun> state masin kimi 16:04 <marlin> ahahha yaxsi:))leak olmasin 16:04 <marlin> :D 16:04 <suskun> basha dusdun temani? 16:04 <suskun> epollu calisasynce 16:04 <suskun> qatma 16:04 <suskun> epoll tamam ayri konseptdir 16:04 <marlin> basa dusdum bunlari v8 le bagli oxumusdum 16:04 <suskun> async ayri epoll ayri konseptlerdir 16:04 <suskun> prosto async epoll istifade edir 16:05 <marlin> libuv ve queue sohbtelerinni oxumusdum kecen hefte 16:05 <marlin> epoll basqa birseydir 16:05 <suskun> yes 16:05 <suskun> eynen 16:05 <marlin> tammaile bele basa dusdum 16:05 <suskun> eynen 16:05 <suskun> ela 16:05 <suskun> duz basha dusmusen 16:05 <marlin> onda epoll nezaret edirde 16:05 <marlin> butun proseslere 16:06 <marlin> epola bele deseke 16:06 <suskun> epoll senin xebercindir 16:06 <marlin> easas bus-dir he 16:06 <suskun> ki fayl oxunub 16:06 <suskun> davay callbacki cagir 16:06 <suskun> eynen 16:06 <marlin> isin biten kimide 16:06 <suskun> datanin aparib getirmeliyini xeber verir 16:06 <marlin> her async await 16:06 <marlin> funckisya uucn bir callback olur is biten kimi-ki onun cavablarini temin eden 16:06 <marlin> bir callback 16:06 <marlin> okey bruasi eladir 16:07 <marlin> bu hamsinda beledirde 16:07 <marlin> yeni butun dillerde onsuzda epoll yenede isleycek 16:10 <suskun> yes 16:10 <suskun> mecbursan 16:10 <suskun> istifade etmeye 16:10 <suskun> amma istifade etmeyede bilersen 16:10 <suskun> onda prosto 16:10 <suskun> senin xeberin olmayacagda 16:10 <suskun> bitib fayl oxuma ya yox 16:10 <suskun> prosto funksiyanin icine girib cixacagsan 16:10 <marlin> gel bele eliyekde indi 16:11 <marlin> easas konspetlerimiz nedir bax : thread, context switching, async await call-lar, pool (where all coronies gather) 16:11 <suskun> aha 16:12 <marlin> epol kecen defede demisdin o standart her hansi xeber veren call backlardir okeydir 16:12 <marlin> prosta bax qayidaq diger meseleye 16:12 <marlin> multithread meselesi mene birazda qaranliq qaldi 16:13 <marlin> sen istesen yarada bilersende async call icinde aother thread bu okeydir 16:13 <marlin> ama eger bu corotuniler multi thread environmnet-de olsa onda hamsi parcalanmaycaq heresine ayri ayri epollar nezerat edecek? 16:14 <marlin> yeni olsa bele yene multithread ancaq compiler seviyede olurda? 16:14 <marlin> bu context swtichg ola biler multithread-de olsun async call-lar arasinda? 16:15 <suskun> usaglar ozume teze velotrenajor almisam gozle 5 deq mesq edib gelirem :-D 16:15 <marlin> ahahha 16:16 <suskun> yox yox indi gozlwe 16:16 <marlin> mezlenmede sekline baxim 16:16 <suskun> gelib 16:16 <suskun> kod kimi 16:16 <suskun> yazib 16:16 <suskun> gosterecem 16:16 <suskun> sene 16:16 <suskun> birdene su suzum 16:16 <marlin> :D 16:16 <suskun> 2 saniyeye 16:16 <marlin> yaxsi 16:16 <marlin> olar 16:16 <marlin> mesq elemirsen? 16:17 <marlin> https://www.youtube.com/watch?v=qqh7SFXgfnY&ab_channel=AzeBassMusic 16:17 <marlin> mesqe gecikiyor :D 16:18 <suskun> ozume teze kettleda almisama xirki 16:18 <suskun> axirki 16:18 <marlin> ahaha 16:18 <marlin> bes bonzai 16:18 <marlin> aldin? 16:18 <marlin> ))) 16:18 <marlin> karantin bitsin gedey bilgeh e orda baxariq)) 16:18 <marlin> ya mastaga yolunda :D 16:19 <suskun> https://pasteboard.co/JD59VMh.png 16:19 <suskun> gor necedir 16:19 <marlin> ooo 16:19 <marlin> xeyirli olsun :D 16:19 <suskun> opurem brat 16:19 <marlin> hergun mesq 16:19 <marlin> :D 16:19 <marlin> eliyesen 16:26 <suskun> qayitmisam indi texti yaziram 16:26 <suskun> gonderirem 16:26 <suskun> 5 deqiqeye 16:29 <marlin> yaxsi ))) 16:29 <marlin> yorulmyasaiz 16:29 <marlin> take your time 16:36 <marlin> birdene hebib yazigini oxu 16:36 <suskun> ne yazib? 16:36 <marlin> twitterde adam deli olare 16:36 <suskun> harda oxuyum? 16:37 <marlin> atiram link 16:37 <marlin> https://twitter.com/muntezir/status/1334167354956263424 16:38 <marlin> usagi bunlar oldu bilib, ama olmeyib tessvur edirsen indi gor nece sevinirler yas eliyirdiler. 16:38 <marlin> talis esger yoldasim sehid olub lenkaran goren kimi ele bildim odur birinci( 16:38 <suskun> https://paste.debian.net/1175285/ 16:38 <suskun> oxu birdene bunu 16:39 <suskun> ayda Allah rehmet elesin 16:39 <marlin> hec yadimdan cixmir o esger yoldasim cox qizil usaq idiye(( 16:39 <suskun> dayan oxuyum hebib munteziri 16:39 <marlin> baxiram 16:43 <marlin> mellim 16:43 <suskun> beli 16:43 <marlin> bu conext umumidir-de ferqi yxodur-da burda epol var veya ferqli thread-ler var hamsi bir noqteye baxirda duzdur mu 16:43 <suskun> @frame vara 16:44 <suskun> compiler orda generasiya edir 16:44 <suskun> hal hazirdaki 16:44 <suskun> funksiyanin frame pointerini 16:44 <suskun> stakdaki 16:44 <suskun> stackdaki 16:44 <suskun> icinde datalar olam 16:44 <suskun> adresdir 16:44 <marlin> aja 16:44 <suskun> @frame = test() funksiyasinin frame adresi 16:44 <suskun> icinde de return adres olur 16:44 <suskun> ki test() funksiyasinin icine qayitsin 16:44 <suskun> resume blokunu gorende 16:45 <marlin> cox qesey yazmisan izah elemisen sair ellerine sagliq :) 16:45 <suskun> basha dusdun 16:45 <suskun> asynci tam? :-d 16:45 <suskun> ascii sende bax 16:45 <suskun> @ascii 16:45 <suskun> burdasan? 16:46 <suskun> daha deme ki, biz asynci basha dusmuruk :-D 16:46 <marlin> thread sohbeti acigi meni cox qarisdirdi yeni ne deyim :D 16:46 <marlin> ahahah 16:46 <suskun> hee 16:46 <suskun> threadi qoy qiraga 16:46 <suskun> thread yoxdur burda 16:46 <suskun> uje 16:46 <suskun> gorursen 16:46 <suskun> thread bilirsen ne vaxt ola biler 16:46 <suskun> qiragda birdene thread yaradirsan ki 16:46 <marlin> hele tezdir bro :D 16:46 <suskun> asynclerin queue-a 16:46 <suskun> yigdilari 16:46 <suskun> seyler vare 16:46 <suskun> descirptorlar 16:47 <suskun> onlari polling edib 16:47 <suskun> uygun resume-lari 16:47 <suskun> cagirsin 16:47 <suskun> meselen birdenede thread yaradirsan icinde 16:47 <suskun> gedir queuelari gezir 16:47 <suskun> onun icinde de file descirptorlar olur 16:47 <suskun> onlari check edirki 16:47 <suskun> fayllar oxunub qutarib 16:47 <suskun> fso 16:47 <suskun> resume frame_for_test 16:47 <suskun> resume frame_for_fileread 16:48 <marlin> yeni o file check elemek ucun file descirptorlar ucun men mecburam thread yaradir ? 16:48 <suskun> bes 16:48 <suskun> nece xeberin olacaq 16:48 <suskun> ki fayllar 16:48 <suskun> oxunub ? 16:48 <marlin> yeni nedir best eslidnde? 16:48 <suskun> qutarib 16:48 <marlin> ozu elemir bes? 16:48 <suskun> onu python ozu edir 16:48 <suskun> meselen 16:48 <suskun> nodejs ozu edir 16:48 <marlin> ahaa 16:48 <suskun> compilerda binary code generasiya olur deye mecburdan ozun edesen 16:49 <marlin> ele bunu demek isetyirdim men mellim)) 16:49 <suskun> ozu etse bele thread istifade edirde :-D 16:49 <marlin> bayqdan ki bes onlarda hazirdir axi men bilen 16:49 <suskun> yeni thread yoxdur deye birsey yoxdur 16:49 <suskun> axi 16:49 <suskun> men bayaq 16:49 <suskun> ona gore 16:49 <suskun> dedim ki 16:49 <marlin> hee onda bir thread imeenna 16:49 <marlin> bu ise baxirda 16:49 <suskun> interpeterler 16:49 <marlin> main-den elave 16:49 <suskun> ozleri edirler 16:49 <marlin> olaraq 16:49 <marlin> queue check ene 16:49 <suskun> heee 16:49 <suskun> v8i atdim 16:49 <suskun> bax 16:49 <suskun> gorursen 16:49 <suskun> v8 16:49 <suskun> epoll istifade 16:49 <suskun> edir 16:50 <marlin> aha 16:50 <marlin> he tutdum indi temani) 16:50 <marlin> izah eliyecem sene 16:50 <marlin> :Dgor duz bildim indi mellim )) 16:50 <suskun> aha 16:51 <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 ? 16:51 <marlin> yeni nese bildikleri var ki ele edir yoxsa 16:52 <marlin> python implement elemek ucun daha cox ezieyte cekib onlar o eziyeti goze almir 16:52 <marlin> menseyi deyirem 16:52 <marlin> bu thread check epolu check edne 16:54 <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 16:57 <suskun> GIL basqa seydir 16:57 <suskun> GIL bilirsen nedir 16:57 <suskun> GIL interpreterin 16:58 <suskun> thread execute etmesine icaze vermir 16:58 <suskun> asyncin cavabini veren 16:58 <suskun> epolldu 16:58 <suskun> onuda kernel edir 16:58 <suskun> pythonun threadina qarisdirma onu 16:58 <suskun> epoll kernel seviyyesinde isleyir 16:58 <suskun> ve yaxud select syscalli 16:58 <suskun> butun bu pollingi eden seyler 16:58 <suskun> kernel seviyyesinde isleyir 16:58 <suskun> user seviyyesinde yox 17:01 <suskun> polling eden python deyil yeni 17:01 <suskun> pollingi eden kerneldir 17:01 <suskun> iki thread bilirsen harda olmali olur 17:01 <suskun> binaryda 17:01 <suskun> compiler-da 17:01 <suskun> ikinci threadi yaradirsanki 17:01 <suskun> getsin select()/epoll etc. 17:01 <suskun> ni cagirsin 17:01 <suskun> pythonda ise 17:01 <suskun> interpreterin 17:01 <suskun> oz prosesi varda 17:01 <suskun> ehtiyyac yoxdur 17:01 <suskun> threade 17:07 <marlin> he onda bele summurize etsek, kernelde olan thread le python thread-di basqa basqa temalardir 17:07 <suskun> yessss 17:07 <suskun> eynen 17:07 <marlin> bir interpretoro seviyesinde olandir birise kernelde? 17:07 <suskun> eynen 17:07 <suskun> biri kernel threaddir 17:08 <suskun> birise user 17:08 <marlin> aha okey indi yavas yvash ozume gleirem 17:08 <marlin> :) 17:08 <suskun> cool :-D 17:08 <suskun> async asan konseptdir eslinde 17:08 <suskun> prosto bilirsen niye bu qeder 17:08 <suskun> casdirilir 17:08 <suskun> cunki haqqinda yazanlarin 17:08 <suskun> ozleride tam oyrenmeyib yazirlar 17:08 <suskun> ona gore poxu poxa qatirlar 17:08 <marlin> cunki aglime GIL- getdiki eger multi thread dirse onda duz olmaszad eyni anda cunki threadler paralel olraq icra olmur 17:09 <marlin> ahaaa 17:09 <marlin> eynen 17:09 <suskun> thread hemise var 17:09 <suskun> hemise 17:09 <suskun> async thread yaratmir 17:09 <suskun> o demekdir ki 17:09 <suskun> her async funksiya thread yaratmir 17:09 <suskun> ancaq asynca 17:09 <suskun> destek ucun 17:09 <suskun> thread olmalidir axi 17:09 <marlin> onsuzda hemin asyncler birdene thread-le icra olmalidirda 17:10 <marlin> her yaratmaz okey duzdur 17:10 <suskun> yes 17:10 <marlin> ama istesen sen async call icinde ayrica trhead 17:10 <marlin> yarada bilersen de 17:10 <suskun> heee 17:10 <suskun> elbette 17:11 <marlin> ela ela bele umumi gornus aydin oldu mene duzdur kerneli o qeder bilmirem ama uzden meen aydin oldu meselelr konspektler 17:11 <marlin> cox sagolun mellim siz ejdahsiz heqeityen 17:11 <marlin> :D 17:11 <marlin> cox komeyiniz deydi hazird cox babat diskusiya getdi burda)) 17:11 <marlin> ejdaha sohbetlere bele temalara varamda men 17:11 <marlin> :) 17:11 <suskun> opurem opurem 17:12 <suskun> aydin oldusa sevindim 17:12 <suskun> ejdaha kImi 17:12 <marlin> karantin vare bura ara meseafesi 17:12 <marlin> gozlemirsen 17:12 <marlin> heqqi aydin oldu bilmediklerimi oyrendim cox seyler 17:12 <marlin> cox sagol bro birdaha :D 17:13 <marlin> go-ya baxmisan? 17:13 <suskun> :-D 17:13 <suskun> gonun neyine? 17:14 <marlin> orda bilirsen hansi tema gorotuniler 17:14 <marlin> yoxsa sen go-nu sevmrisen axi :D 17:14 <marlin> :)sprry bro men sevemey basladim onu)) 17:15 <marlin> pisdeme xais ))) 17:17 <marlin> halal ele eziyetini mellim vaxtini ayrdin 17:17 <marlin> :)