{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,10,30]],"date-time":"2026-10-30T22:01:52Z","timestamp":1793397712560,"version":"4.5.0"},"reference-count":77,"publisher":"Association for Computing Machinery (ACM)","issue":"1","license":[{"start":{"date-parts":[[2010,9,27]],"date-time":"2010-09-27T00:00:00Z","timestamp":1285545600000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["SIGMOD Rec."],"published-print":{"date-parts":[[2010,9,27]]},"abstract":"<jats:p>The rise of multicore processors and cloud computing is putting enormous pressure on the software community to find solutions to the difficulty of parallel and distributed programming. At the same time, there is more--and more varied--interest in data-centric programming languages than at any time in computing history, in part because these languages parallelize naturally. This juxtaposition raises the possibility that the theory of declarative database query languages can provide a foundation for the next generation of parallel and distributed programming languages.<\/jats:p>\n                  <jats:p>In this paper I reflect on my group's experience over seven years using Datalog extensions to build networking protocols and distributed systems. Based on that experience, I present a number of theoretical conjectures that may both interest the database community, and clarify important practical issues in distributed computing. Most importantly, I make a case for database researchers to take a leadership role in addressing the impending programming crisis.<\/jats:p>\n                  <jats:p>This is an extended version of an invited lecture at the ACM PODS 2010 conference [32].<\/jats:p>","DOI":"10.1145\/1860702.1860704","type":"journal-article","created":{"date-parts":[[2010,9,22]],"date-time":"2010-09-22T07:55:58Z","timestamp":1285142158000},"page":"5-19","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":95,"title":["The declarative imperative"],"prefix":"10.1145","volume":"39","author":[{"given":"Joseph M.","family":"Hellerstein","sequence":"first","affiliation":[{"name":"University of California, Berkeley, CA, USA"}],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"320","published-online":{"date-parts":[[2010,9,27]]},"reference":[{"key":"e_1_2_1_1_1","doi-asserted-by":"publisher","DOI":"10.1145\/1065167.1065214"},{"key":"e_1_2_1_2_1","doi-asserted-by":"publisher","DOI":"10.1145\/1739041.1739056"},{"key":"e_1_2_1_3_1","volume-title":"Eurosys","author":"Alvaro P.","year":"2010"},{"key":"e_1_2_1_4_1","doi-asserted-by":"publisher","DOI":"10.1145\/1713254.1713261"},{"issue":"0","key":"e_1_2_1_6_1","first-page":"g20","article-title":"Datalog for enterprise applications: from industrial applications to research","volume":"2","author":"Aref M.","year":"2010","journal-title":"Datalog"},{"key":"e_1_2_1_7_1","doi-asserted-by":"publisher","DOI":"10.1109\/IROS.2007.4399480"},{"key":"e_1_2_1_8_1","volume-title":"University of California","author":"Atul A.","year":"2009"},{"key":"e_1_2_1_9_1","doi-asserted-by":"publisher","DOI":"10.1145\/1556154.1556172"},{"key":"e_1_2_1_10_1","volume-title":"Labyrinths: Selected Stories and Other Writings. New Directions Publishing","author":"Borges J. L.","year":"1964"},{"key":"e_1_2_1_11_1","doi-asserted-by":"publisher","DOI":"10.1016\/0022-0000(82)90012-5"},{"key":"e_1_2_1_12_1","doi-asserted-by":"publisher","DOI":"10.14778\/1687627.1687655"},{"key":"e_1_2_1_13_1","volume-title":"VLDB","author":"Chaudhuri S.","year":"1993"},{"key":"e_1_2_1_14_1","volume-title":"Eighth International Conference on Information Processing in Sensor Networks (IPSN)","author":"Chu D.","year":"2009"},{"key":"e_1_2_1_15_1","doi-asserted-by":"publisher","DOI":"10.1145\/1322263.1322281"},{"key":"e_1_2_1_16_1","volume-title":"University of California","author":"Chu D. C.","year":"2009"},{"key":"e_1_2_1_17_1","doi-asserted-by":"publisher","DOI":"10.14778\/1453856.1453978"},{"key":"e_1_2_1_18_1","volume-title":"University of California","author":"Cooper O.","year":"2004"},{"key":"e_1_2_1_19_1","doi-asserted-by":"publisher","DOI":"10.1145\/1323293.1294281"},{"key":"e_1_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.5555\/959088.959095"},{"key":"e_1_2_1_21_1","doi-asserted-by":"publisher","DOI":"10.3115\/1219044.1219076"},{"key":"e_1_2_1_22_1","doi-asserted-by":"crossref","unstructured":"}}P. F. Felzenszwalb and D. A. McAllester. The generalized A* architecture. J. Artif. Intell. Res. (JAIR) 29:153--190 2007.   }}P. F. Felzenszwalb and D. A. McAllester. The generalized A* architecture. J. Artif. Intell. Res. (JAIR) 29:153--190 2007.","DOI":"10.1613\/jair.2187"},{"key":"e_1_2_1_23_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.tcs.2008.09.052"},{"key":"e_1_2_1_24_1","volume-title":"Commentary and Notes. Schocken Books","author":"Fox E.","year":"1995"},{"key":"e_1_2_1_25_1","doi-asserted-by":"publisher","DOI":"10.1145\/342009.335422"},{"key":"e_1_2_1_26_1","doi-asserted-by":"publisher","DOI":"10.1145\/602382.602401"},{"key":"e_1_2_1_27_1","unstructured":"}}S. Greco and C. Zaniolo. Greedy algorithms in Datalog with choice and negation 1998.  }}S. Greco and C. Zaniolo. Greedy algorithms in Datalog with choice and negation 1998."},{"key":"e_1_2_1_28_1","doi-asserted-by":"publisher","DOI":"10.1145\/1094855.1094884"},{"key":"e_1_2_1_29_1","volume-title":"VLDB","author":"Hasan W.","year":"1995"},{"key":"e_1_2_1_30_1","volume-title":"CIDR","author":"Helland P.","year":"2009"},{"key":"e_1_2_1_31_1","doi-asserted-by":"publisher","DOI":"10.1145\/945721.945730"},{"key":"e_1_2_1_32_1","doi-asserted-by":"publisher","DOI":"10.1145\/1807085.1807087"},{"key":"e_1_2_1_33_1","doi-asserted-by":"publisher","DOI":"10.1145\/253260.253291"},{"key":"e_1_2_1_34_1","volume-title":"Third Edition. Morgan Kaufmann","author":"Hellerstein J. M.","year":"1998"},{"key":"e_1_2_1_35_1","doi-asserted-by":"publisher","DOI":"10.1145\/1147518.1147528"},{"key":"e_1_2_1_36_1","volume-title":"VLDB","author":"Jain N.","year":"2007"},{"key":"e_1_2_1_37_1","doi-asserted-by":"publisher","DOI":"10.5555\/882495.884431"},{"key":"e_1_2_1_38_1","doi-asserted-by":"publisher","DOI":"10.5555\/1873601.1873677"},{"key":"e_1_2_1_39_1","doi-asserted-by":"publisher","DOI":"10.1145\/359545.359563"},{"key":"e_1_2_1_40_1","doi-asserted-by":"publisher","DOI":"10.1145\/602382.602404"},{"key":"e_1_2_1_41_1","doi-asserted-by":"publisher","DOI":"10.1145\/850657.850658"},{"key":"e_1_2_1_42_1","doi-asserted-by":"publisher","DOI":"10.1007\/BFb0055496"},{"key":"e_1_2_1_43_1","doi-asserted-by":"publisher","DOI":"10.1145\/996841.996861"},{"key":"e_1_2_1_44_1","doi-asserted-by":"publisher","DOI":"10.1145\/971701.50204"},{"key":"e_1_2_1_45_1","volume-title":"University of California","author":"Loo B. T.","year":"2006"},{"key":"e_1_2_1_46_1","doi-asserted-by":"publisher","DOI":"10.1145\/1592761.1592785"},{"key":"e_1_2_1_47_1","doi-asserted-by":"publisher","DOI":"10.1145\/1142473.1142485"},{"key":"e_1_2_1_48_1","doi-asserted-by":"publisher","DOI":"10.1145\/1095810.1095818"},{"key":"e_1_2_1_49_1","doi-asserted-by":"publisher","DOI":"10.5555\/1316689.1316728"},{"key":"e_1_2_1_50_1","doi-asserted-by":"publisher","DOI":"10.1145\/1080091.1080126"},{"key":"e_1_2_1_51_1","doi-asserted-by":"publisher","DOI":"10.5555\/645815.668874"},{"key":"e_1_2_1_52_1","doi-asserted-by":"publisher","DOI":"10.1145\/844128.844142"},{"key":"e_1_2_1_53_1","first-page":"127","volume-title":"In Proceedings of the 4th USENIX Symposium on Internet Technologies and Systems","author":"Manku G. S.","year":"2003"},{"key":"e_1_2_1_54_1","doi-asserted-by":"publisher","DOI":"10.1145\/1713254.1713260"},{"key":"e_1_2_1_55_1","doi-asserted-by":"publisher","DOI":"10.1145\/1297027.1297078"},{"key":"e_1_2_1_56_1","doi-asserted-by":"publisher","DOI":"10.1145\/308386.308419"},{"key":"e_1_2_1_57_1","doi-asserted-by":"publisher","DOI":"10.1145\/1340771.1340773"},{"key":"e_1_2_1_58_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-540-92995-6_6"},{"key":"e_1_2_1_59_1","unstructured":"}}O. O'Malley and A. Murthy. Hadoop sorts a petabyte in 16.25 hours and a terabyte in 62 seconds 2009. http:\/\/developer.yahoo.net\/blogs\/hadoop\/2009\/05\/hadoop_sorts_a_petabyte_in_162.html.  }}O. O'Malley and A. Murthy. Hadoop sorts a petabyte in 16.25 hours and a terabyte in 62 seconds 2009. http:\/\/developer.yahoo.net\/blogs\/hadoop\/2009\/05\/hadoop_sorts_a_petabyte_in_162.html."},{"key":"e_1_2_1_60_1","doi-asserted-by":"publisher","DOI":"10.1145\/211542.211547"},{"key":"e_1_2_1_61_1","first-page":"49","article-title":"The myth of Daedalus","volume":"10","author":"Perez-Gomez A.","year":"1985","journal-title":"Architectural Association Files"},{"key":"e_1_2_1_62_1","doi-asserted-by":"publisher","DOI":"10.1016\/B978-0-934613-40-8.50009-9"},{"key":"e_1_2_1_63_1","volume-title":"ICDE","author":"Raman V.","year":"2003"},{"key":"e_1_2_1_64_1","volume-title":"ILPS","author":"Ross K. A.","year":"1994"},{"key":"e_1_2_1_65_1","unstructured":"}}T. Urhan and M. J. Franklin. XJoin: A reactively-scheduled pipelines join operator. Bulletin of the Technical Committee on Data Engineering 23(2) 2000.  }}T. Urhan and M. J. Franklin. XJoin: A reactively-scheduled pipelines join operator. Bulletin of the Technical Committee on Data Engineering 23(2) 2000."},{"key":"e_1_2_1_66_1","doi-asserted-by":"publisher","DOI":"10.1145\/762483.762485"},{"key":"e_1_2_1_67_1","doi-asserted-by":"publisher","DOI":"10.1145\/800070.802186"},{"key":"e_1_2_1_68_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-0-387-39940-9_1243"},{"key":"e_1_2_1_69_1","doi-asserted-by":"publisher","DOI":"10.1145\/945445.945471"},{"key":"e_1_2_1_70_1","volume-title":"VLDB","author":"Wang D. Z.","year":"2010"},{"key":"e_1_2_1_71_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICDE.2010.5447844"},{"key":"e_1_2_1_72_1","doi-asserted-by":"publisher","DOI":"10.1145\/502059.502057"},{"key":"e_1_2_1_73_1","doi-asserted-by":"publisher","DOI":"10.1145\/996893.996859"},{"key":"e_1_2_1_74_1","doi-asserted-by":"publisher","DOI":"10.1145\/1401843.1401847"},{"key":"e_1_2_1_75_1","unstructured":"}}Wikipedia. Eating one's own dog food 2010. http:\/\/en.wikipedia.org\/wiki\/Eating_ one's_own_dog_food.  }}Wikipedia. Eating one's own dog food 2010. http:\/\/en.wikipedia.org\/wiki\/Eating_ one's_own_dog_food."},{"key":"e_1_2_1_76_1","doi-asserted-by":"publisher","DOI":"10.5555\/382009.383658"},{"key":"e_1_2_1_78_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-60085-2_18"},{"key":"e_1_2_1_79_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICDE.2009.58"}],"container-title":["ACM SIGMOD Record"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/1860702.1860704","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/1860702.1860704","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T08:08:26Z","timestamp":1750234106000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/1860702.1860704"}},"subtitle":["experiences and conjectures in distributed logic"],"short-title":[],"issued":{"date-parts":[[2010,9,27]]},"references-count":77,"journal-issue":{"issue":"1","published-print":{"date-parts":[[2010,9,27]]}},"alternative-id":["10.1145\/1860702.1860704"],"URL":"https:\/\/doi.org\/10.1145\/1860702.1860704","relation":{},"ISSN":["0163-5808"],"issn-type":[{"value":"0163-5808","type":"print"}],"subject":[],"published":{"date-parts":[[2010,9,27]]},"assertion":[{"value":"2010-09-27","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}