{"title":"Blacklight Inspection","page_title":"Languages and Logic","uri_ins":"http://blog.samibadawi.com/","uri_dest":"https://blog.samibadawi.com/?m=1","uri_redirects":["http://blog.samibadawi.com/","https://blog.samibadawi.com/"],"secure_connection":{},"host":"blog.samibadawi.com","config":{"emulateDevice":{"name":"iPhone 12 Pro","userAgent":"Mozilla/5.0 (iPhone; CPU iPhone OS 14_4 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.4 Mobile/15E148 Safari/604.1","viewport":{"width":390,"height":844,"deviceScaleFactor":3,"isMobile":true,"hasTouch":true,"isLandscape":false}},"cleareCache":true,"captureHar":true,"captureLinks":false,"enableAdBlock":false,"saveBrowserProfile":false,"numPages":2,"defaultTimeout":35000,"defaultWaitUntil":"networkidle2","headless":true,"headers":{},"extraChromiumArgs":["--disable-features=TrackingProtection3pcd","--website-analysis-scan=44bfb9f7-e090-4649-b58c-f2f4a6af5433"],"extraPuppeteerOptions":{}},"browser":{"name":"Chromium","version":"Chrome/127.0.6533.88","user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/127.0.0.0 Safari/537.36","platform":{"name":"Linux","version":"6.6.87.1-microsoft-standard-WSL2"}},"script":{"host":"27f34b741838","version":{"npm":"3.11.0","commit":"dev"},"node_version":"v24.20.0"},"start_time":"2026-09-08T11:47:56.519Z","end_time":"2026-09-08T11:48:16.943Z","browsing_history":["https://blog.samibadawi.com/?m=1","https://blog.samibadawi.com/2020/04/how-many-languages-should-you-program-in.html?m=1","https://blog.samibadawi.com/2020/02/haskell-and-hadoop-aftermath.html?m=1"],"hosts":{"requests":{"first_party":["blog.samibadawi.com"],"third_party":["www.blogger.com","www.googletagmanager.com","blogger.googleusercontent.com","pagead2.googlesyndication.com","themes.googleusercontent.com","resources.blogblog.com","region1.google-analytics.com","www.google.com","www.gstatic.com"]}},"reports":{"behaviour_event_listeners":{"MOUSE":{"https://www.blogger.com/_/scs/mss-static/_/js/k=boq-blogger.BloggerCommentUi.en.jGGMSICBieY.2018.O/ck=boq-blogger.BloggerCommentUi.YBO3IsseOJk.L.W1.O/am=AwAAAIAY/d=1/exm=A7fCU,BVgquf,EFQ78c,FCpbqb,GkRiKb,IZT63,JNoxi,KUM7Z,LEikZe,MI6k7c,MdUzUe,MpJwZc,NwH0H,O1Gjze,O6y8ed,OTA3Ae,PrPYRd,QIhFr,RMhBfe,RyvaUb,SdcwHb,SpsfSb,UUJqVe,Uas9Hd,Ulmmrd,V3dDOb,VXdfxd,WO9ee,WhJNk,Wt6vjf,XVMNvd,YYmHzb,YwHGTd,Z5uLle,ZDZcre,ZwDk9d,_b,_tp,aW3pY,byfTOb,e5qFLc,eD1YLc,fgib1c,gZjhIf,gychg,hKSk3e,hc6Ubd,hhhU8,kjKdXe,lazG7b,lsjVmc,lwddkf,mI3LFb,mdR7q,n73qwf,pjICDe,pw70Gc,pxq3x,w9hDv,wmnU7d,ws9Tlc,xQtZb,xUdipf,zbML3c,zr1jrb/excm=_b,_tp,commentformiframeview/ed=1/wt=2/ujg=1/rs=AEy-KP1h4ZRZuMJexhOX-tEMSCfVeOSKjg/ee=EVNhjf:pw70Gc;EmZ2Bf:zr1jrb;JsbNhc:Xd8iUd;K5nYTd:ZDZcre;LBgRLc:SdcwHb;Me32dd:MEeYgc;NJ1rfe:qTnoBf;NPKaK:SdcwHb;NSEoX:lazG7b;Pjplud:EEDORb;QGR0gd:Mlhmy;SNUn3:ZwDk9d;ScI3Yc:e7Hzgb;Uvc8o:VDovNc;YIZmRd:A1yn5d;a56pNe:JEfCwb;cEt90b:ws9Tlc;dIoSBb:SpsfSb;dowIGb:ebZ3mb;eBAeSb:zbML3c;iFQyKf:QIhFr;lOO0Vd:OTA3Ae;oGtAuc:sOXFj;pXdRYb:MdUzUe;qQEoOc:KUM7Z;qafBPd:yDVVkb;qddgKe:xQtZb;wR5FRb:O1Gjze;xqZiqf:wmnU7d;yxTchf:KUM7Z;zxnPse:GkRiKb/dti=1/m=p3hmRc,LvGhrf,RqjULd":["click"],"https://www.blogger.com/_/scs/mss-static/_/js/k=boq-blogger.BloggerCommentUi.en.jGGMSICBieY.2018.O/am=AwAAAIAY/d=1/excm=_b,_tp,commentformiframeview/ed=1/dg=0/wt=2/ujg=1/rs=AEy-KP1l9ruQ9M_abvcbMdKIAPVPEDLdMw/dti=1/m=_b,_tp":["scroll","mousemove"]},"KEYBOARD":{"https://www.blogger.com/_/scs/mss-static/_/js/k=boq-blogger.BloggerCommentUi.en.jGGMSICBieY.2018.O/ck=boq-blogger.BloggerCommentUi.YBO3IsseOJk.L.W1.O/am=AwAAAIAY/d=1/exm=A7fCU,BVgquf,EFQ78c,FCpbqb,GkRiKb,IZT63,JNoxi,KUM7Z,LEikZe,MI6k7c,MdUzUe,MpJwZc,NwH0H,O1Gjze,O6y8ed,OTA3Ae,PrPYRd,QIhFr,RMhBfe,RyvaUb,SdcwHb,SpsfSb,UUJqVe,Uas9Hd,Ulmmrd,V3dDOb,VXdfxd,WO9ee,WhJNk,Wt6vjf,XVMNvd,YYmHzb,YwHGTd,Z5uLle,ZDZcre,ZwDk9d,_b,_tp,aW3pY,byfTOb,e5qFLc,eD1YLc,fgib1c,gZjhIf,gychg,hKSk3e,hc6Ubd,hhhU8,kjKdXe,lazG7b,lsjVmc,lwddkf,mI3LFb,mdR7q,n73qwf,pjICDe,pw70Gc,pxq3x,w9hDv,wmnU7d,ws9Tlc,xQtZb,xUdipf,zbML3c,zr1jrb/excm=_b,_tp,commentformiframeview/ed=1/wt=2/ujg=1/rs=AEy-KP1h4ZRZuMJexhOX-tEMSCfVeOSKjg/ee=EVNhjf:pw70Gc;EmZ2Bf:zr1jrb;JsbNhc:Xd8iUd;K5nYTd:ZDZcre;LBgRLc:SdcwHb;Me32dd:MEeYgc;NJ1rfe:qTnoBf;NPKaK:SdcwHb;NSEoX:lazG7b;Pjplud:EEDORb;QGR0gd:Mlhmy;SNUn3:ZwDk9d;ScI3Yc:e7Hzgb;Uvc8o:VDovNc;YIZmRd:A1yn5d;a56pNe:JEfCwb;cEt90b:ws9Tlc;dIoSBb:SpsfSb;dowIGb:ebZ3mb;eBAeSb:zbML3c;iFQyKf:QIhFr;lOO0Vd:OTA3Ae;oGtAuc:sOXFj;pXdRYb:MdUzUe;qQEoOc:KUM7Z;qafBPd:yDVVkb;qddgKe:xQtZb;wR5FRb:O1Gjze;xqZiqf:wmnU7d;yxTchf:KUM7Z;zxnPse:GkRiKb/dti=1/m=p3hmRc,LvGhrf,RqjULd":["keydown"]},"SENSOR":{"https://www.blogger.com/_/scs/mss-static/_/js/k=boq-blogger.BloggerCommentUi.en.jGGMSICBieY.2018.O/am=AwAAAIAY/d=1/excm=_b,_tp,commentformiframeview/ed=1/dg=0/wt=2/ujg=1/rs=AEy-KP1l9ruQ9M_abvcbMdKIAPVPEDLdMw/dti=1/m=_b,_tp":["orientationchange"]}},"canvas_fingerprinters":{"data_url":{},"fingerprinters":[],"styles":{},"texts":{}},"canvas_font_fingerprinters":{"canvas_font":{},"text_measure":{}},"cookies":[{"name":"_ga_EGJNE4JZJ7","value":"GS2.1.s1788868089$o1$g0$t1788868089$j60$l0$h0","domain":"samibadawi.com","path":"/","expires":"2027-10-13T11:48:09.036Z","size":59,"httpOnly":false,"secure":false,"session":false,"priority":"Medium","sameParty":false,"sourceScheme":"Secure","sourcePort":443,"type":"js","third_party":false},{"name":"_ga","value":"GA1.1.2059938094.1788868089","domain":"samibadawi.com","path":"/","expires":"2027-10-13T11:48:09.037Z","size":30,"httpOnly":false,"secure":false,"session":false,"priority":"Medium","sameParty":false,"sourceScheme":"Secure","sourcePort":443,"type":"js","third_party":false}],"fb_pixel_events":[],"tiktok_pixel_events":[],"twitter_pixel_events":[],"google_analytics_events":[],"key_logging":{},"session_recorders":{},"third_party_trackers":[{"data":{"body":{},"filter":"||google-analytics.com^$third-party","listName":"easyprivacy.txt","query":{"_ee":1,"_fv":1,"_nsi":1,"_p":1788868088950,"_s":1,"_ss":1,"are":1,"cid":2059938094.178887,"dl":"https://blog.samibadawi.com/2020/02/haskell-and-hadoop-aftermath.html?m=1","dma":1,"dma_cps":"a","dt":"Languages and Logic: Haskell and Hadoop the Aftermath","en":"page_view","frm":0,"gcd":"13l3l3l2l1l1","gtm":"45je6921v9133803541za200zd9133803541","ngs":1,"npa":1,"pscdl":"","rcb":11,"sct":1,"seg":0,"sid":1788868089,"sr":"390x844","tag_exp":"115938466~115938468~118897920~118897930~120213116~120385423~120469145~120469153~120914214","tfd":561,"tid":"G-EGJNE4JZJ7","uaa":"","uab":"","uafvl":"","uam":"","uamb":0,"uap":"","uapv":"","uaw":0,"ul":"en-us","v":2}},"stack":[{"fileName":"https://blog.samibadawi.com/2020/02/haskell-and-hadoop-aftermath.html?m=1","source":"ThirdPartyTracker RequestHandler"}],"type":"TrackingRequest","url":"https://region1.google-analytics.com/g/collect?v=2&tid=G-EGJNE4JZJ7&gtm=45je6921v9133803541za200zd9133803541&_p=1788868088950&gcd=13l3l3l2l1l1&npa=1&dma_cps=a&dma=1&are=1&cid=2059938094.1788868089&frm=0&ngs=1&pscdl=&rcb=11&sr=390x844&uaa=&uab=&uafvl=&uam=&uamb=0&uap=&uapv=&uaw=0&ul=en-us&_s=1&tag_exp=115938466~115938468~118897920~118897930~120213116~120385423~120469145~120469153~120914214&sid=1788868089&sct=1&seg=0&dl=https%3A%2F%2Fblog.samibadawi.com%2F2020%2F02%2Fhaskell-and-hadoop-aftermath.html%3Fm%3D1&dt=Languages%20and%20Logic%3A%20Haskell%20and%20Hadoop%20the%20Aftermath&en=page_view&_fv=1&_nsi=1&_ss=1&_ee=1&tfd=561"},{"data":{"body":{},"filter":"||pagead2.googlesyndication.com^","listName":"easylist.txt","query":{}},"stack":[{"fileName":"https://blog.samibadawi.com/2020/02/haskell-and-hadoop-aftermath.html?m=1","source":"ThirdPartyTracker RequestHandler"}],"type":"TrackingRequest","url":"https://pagead2.googlesyndication.com/pagead/js/google_top_exp.js"},{"data":{"body":{},"filter":"||googletagmanager.com^","listName":"easyprivacy.txt","query":{"id":"G-EGJNE4JZJ7"}},"stack":[{"fileName":"https://blog.samibadawi.com/2020/02/haskell-and-hadoop-aftermath.html?m=1","source":"ThirdPartyTracker RequestHandler"}],"type":"TrackingRequest","url":"https://www.googletagmanager.com/gtag/js?id=G-EGJNE4JZJ7"},{"data":{"body":{},"filter":"||google-analytics.com^$third-party","listName":"easyprivacy.txt","query":{"_ee":1,"_fv":1,"_nsi":1,"_p":1788868082676,"_s":1,"_ss":1,"are":1,"cid":671681694.1788868,"dl":"https://blog.samibadawi.com/2020/04/how-many-languages-should-you-program-in.html?m=1","dma":1,"dma_cps":"a","dt":"Languages and Logic: How Many Languages Should You Program In","en":"page_view","frm":0,"gcd":"13l3l3l2l1l1","gtm":"45je6921v9133803541za200zd9133803541","ngs":1,"npa":1,"pscdl":"","rcb":1,"sct":1,"seg":0,"sid":1788868082,"sr":"390x844","tag_exp":"115616985~115938465~115938468~118012009~118897920~118897930~119791749~120213116~120385423~120469145~120469153","tfd":281,"tid":"G-EGJNE4JZJ7","uaa":"","uab":"","uafvl":"","uam":"","uamb":0,"uap":"","uapv":"","uaw":0,"ul":"en-us","v":2}},"stack":[{"fileName":"https://blog.samibadawi.com/2020/04/how-many-languages-should-you-program-in.html?m=1","source":"ThirdPartyTracker RequestHandler"}],"type":"TrackingRequest","url":"https://region1.google-analytics.com/g/collect?v=2&tid=G-EGJNE4JZJ7&gtm=45je6921v9133803541za200zd9133803541&_p=1788868082676&gcd=13l3l3l2l1l1&npa=1&dma_cps=a&dma=1&are=1&cid=671681694.1788868083&frm=0&ngs=1&pscdl=&rcb=1&sr=390x844&uaa=&uab=&uafvl=&uam=&uamb=0&uap=&uapv=&uaw=0&ul=en-us&_s=1&tag_exp=115616985~115938465~115938468~118012009~118897920~118897930~119791749~120213116~120385423~120469145~120469153&sid=1788868082&sct=1&seg=0&dl=https%3A%2F%2Fblog.samibadawi.com%2F2020%2F04%2Fhow-many-languages-should-you-program-in.html%3Fm%3D1&dt=Languages%20and%20Logic%3A%20How%20Many%20Languages%20Should%20You%20Program%20In&en=page_view&_fv=1&_nsi=1&_ss=1&_ee=1&tfd=281"},{"data":{"body":{},"filter":"||pagead2.googlesyndication.com^","listName":"easylist.txt","query":{}},"stack":[{"fileName":"https://blog.samibadawi.com/2020/04/how-many-languages-should-you-program-in.html?m=1","source":"ThirdPartyTracker RequestHandler"}],"type":"TrackingRequest","url":"https://pagead2.googlesyndication.com/pagead/js/google_top_exp.js"},{"data":{"body":{},"filter":"||googletagmanager.com^","listName":"easyprivacy.txt","query":{"id":"G-EGJNE4JZJ7"}},"stack":[{"fileName":"https://blog.samibadawi.com/2020/04/how-many-languages-should-you-program-in.html?m=1","source":"ThirdPartyTracker RequestHandler"}],"type":"TrackingRequest","url":"https://www.googletagmanager.com/gtag/js?id=G-EGJNE4JZJ7"},{"data":{"body":{},"filter":"||google-analytics.com^$third-party","listName":"easyprivacy.txt","query":{"_ee":1,"_fv":1,"_nsi":1,"_p":1788868077137,"_s":1,"_ss":1,"are":1,"cid":913305665.1788868,"dl":"https://blog.samibadawi.com/?m=1","dma":1,"dma_cps":"a","dt":"Languages and Logic","en":"page_view","frm":0,"gcd":"13l3l3l2l1l1","gtm":"45je6921v9133803541za200zd9133803541","ngs":1,"npa":1,"pscdl":"","rcb":18,"sct":1,"seg":0,"sid":1788868077,"sr":"390x844","tag_exp":"115616985~115938465~115938469~118897920~118897930~120213116~120385423~120469145~120469153~120914214","tfd":574,"tid":"G-EGJNE4JZJ7","uaa":"","uab":"","uafvl":"","uam":"","uamb":0,"uap":"","uapv":"","uaw":0,"ul":"en-us","v":2}},"stack":[{"fileName":"https://blog.samibadawi.com/?m=1","source":"ThirdPartyTracker RequestHandler"}],"type":"TrackingRequest","url":"https://region1.google-analytics.com/g/collect?v=2&tid=G-EGJNE4JZJ7&gtm=45je6921v9133803541za200zd9133803541&_p=1788868077137&gcd=13l3l3l2l1l1&npa=1&dma_cps=a&dma=1&are=1&cid=913305665.1788868077&frm=0&ngs=1&pscdl=&rcb=18&sr=390x844&uaa=&uab=&uafvl=&uam=&uamb=0&uap=&uapv=&uaw=0&ul=en-us&_s=1&tag_exp=115616985~115938465~115938469~118897920~118897930~120213116~120385423~120469145~120469153~120914214&sid=1788868077&sct=1&seg=0&dl=https%3A%2F%2Fblog.samibadawi.com%2F%3Fm%3D1&dt=Languages%20and%20Logic&en=page_view&_fv=1&_nsi=1&_ss=1&_ee=1&tfd=574"},{"data":{"body":{},"filter":"||pagead2.googlesyndication.com^","listName":"easylist.txt","query":{}},"stack":[{"fileName":"https://blog.samibadawi.com/?m=1","source":"ThirdPartyTracker RequestHandler"}],"type":"TrackingRequest","url":"https://pagead2.googlesyndication.com/pagead/js/google_top_exp.js"},{"data":{"body":{},"filter":"||googletagmanager.com^","listName":"easyprivacy.txt","query":{"id":"G-EGJNE4JZJ7"}},"stack":[{"fileName":"https://blog.samibadawi.com/?m=1","source":"ThirdPartyTracker RequestHandler"}],"type":"TrackingRequest","url":"https://www.googletagmanager.com/gtag/js?id=G-EGJNE4JZJ7"}]}}