{"id":"W2898093955","doi":"10.1145/3276532","title":"Finding broken promises in asynchronous JavaScript programs","year":2018,"lang":"en","type":"article","venue":"Proceedings of the ACM on Programming Languages","topic":"Logic, programming, and type systems","field":"Computer Science","cited_by":22,"is_retracted":false,"has_abstract":true,"ca_institutions":"","funders":"Natural Sciences and Engineering Research Council of Canada; National Science Foundation","keywords":"Computer science; Callback; Debugging; JavaScript; Asynchrony (computer programming); Programming language; Control flow; Event (particle physics); Web application; Asynchronous communication; Theoretical computer science; Software engineering; World Wide Web","routes":{"ca_aff":false,"ca_fund":true,"ca_venue":false,"about_ca":false,"invisible_to_affiliation_only":true},"retraction":null,"screen":null,"direct_labels":[],"prediction":{"model_version":"metacan-v3-hybrid-931329e0061c","candidate_categories":[],"consensus_categories":[],"category_scores_codex":[0.004297529,0.0007921929,0.0005351668,0.001312225,0.001740702,0.001817193,0.002013512,0.001380392,0.002672795],"category_scores_gemma":[0.02189401,0.001489909,0.001584654,0.001024146,0.002733507,0.007191118,0.004026961,0.002463304,0.0007886266],"about_ca_system_candidate":false,"about_ca_system_consensus":false,"about_ca_system_score_codex":0.001322778,"about_ca_system_score_gemma":0.001905829,"about_ca_topic_candidate":false,"about_ca_topic_consensus":false,"about_ca_topic_score_codex":0.003836795,"about_ca_topic_score_gemma":0.005251513,"domain_scores_codex":[0.9960448,0.001318632,0.0002387942,0.0007263644,0.001327063,0.0003444624],"domain_scores_gemma":[0.9772701,0.01564037,0.002442508,0.002520267,0.001726681,0.0004000947],"domain_codex":null,"domain_gemma":null,"domain_candidate":null,"domain_consensus":null,"study_design_codex":"theoretical_or_conceptual","study_design_gemma":"simulation_or_modeling","study_design_scores_codex":[0.001670299,0.0006182392,0.03611004,0.00167271,0.000233427,0.00298257,0.008198855,0.1375642,0.07920463,0.3588916,0.02214115,0.3507123],"study_design_scores_gemma":[0.0001618433,0.0003725662,0.004397925,0.0002213855,0.0001900591,0.0007325835,0.001689155,0.6446346,0.09160691,0.2183118,0.03751123,0.000169985],"study_design_candidate":"simulation_or_modeling","study_design_consensus":null,"genre_codex":"methods","genre_gemma":"empirical","genre_scores_codex":[0.1724489,0.0002333001,0.801788,0.0008829631,0.00008711761,0.0002137275,0.0005115547,0.01949522,0.00433929],"genre_scores_gemma":[0.5138955,0.0002607515,0.4754659,0.0003694702,0.00005586422,0.0002249579,0.00104805,0.004077844,0.004601541],"genre_candidate":"empirical","genre_consensus":null,"teacher_disagreement_score":0.004297529,"threshold_uncertainty_score":0.02272773,"prediction_status":"machine_predicted_unvalidated"},"machine_scores":{"provisional":true,"baseline":true,"maturity_gate_passed":false,"score_opus":0.02472228605236087,"score_gpt":0.2683616435545759,"score_spread":0.243639357502215,"validation_status":"score_only:v0-immature-baseline","note":"Baseline scores from an immature model (maturity gate not passed). Scores rank; they never assert a category."}}