{"id":"https://openalex.org/W102189437","doi":"https://doi.org/10.1007/978-1-4302-0285-1_13","title":"Reactive, Asynchronous, and Concurrent Programming","display_name":"Reactive, Asynchronous, and Concurrent Programming","publication_year":2007,"publication_date":"2007-01-01","ids":{"openalex":"https://openalex.org/W102189437","doi":"https://doi.org/10.1007/978-1-4302-0285-1_13","mag":"102189437"},"language":"en","primary_location":{"id":"doi:10.1007/978-1-4302-0285-1_13","doi":"https://doi.org/10.1007/978-1-4302-0285-1_13","is_oa":false,"landing_page_url":"https://doi.org/10.1007/978-1-4302-0285-1_13","pdf_url":null,"source":{"id":"https://openalex.org/S4306462844","display_name":"Apress eBooks","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"listed_in":[],"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"ebook platform"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Expert F#","raw_type":"book-chapter"},"volume":{"id":"https://openalex.org/W4237350695","display_name":"Expert F#"},"type":"book-chapter","is_traditional":true,"indexed_in":["crossref"],"open_access":{"is_oa":false,"oa_status":"closed","oa_url":null,"any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5109030480","display_name":"Don Syme","orcid":null,"observed_orcids":[]},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Don Syme","raw_affiliation_strings":[],"raw_orcid":null,"affiliations":[]},{"author_position":"middle","author":{"id":"https://openalex.org/A5068518454","display_name":"\u00c1d\u00e1m Gr\u00e1nicz","orcid":null,"observed_orcids":[]},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Adam Granicz","raw_affiliation_strings":[],"raw_orcid":null,"affiliations":[]},{"author_position":"last","author":{"id":"https://openalex.org/A5019439932","display_name":"Antonio Cisternino","orcid":"https://orcid.org/0000-0001-5302-3335","observed_orcids":["https://orcid.org/0000-0001-5302-3335"]},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Antonio Cisternino","raw_affiliation_strings":[],"raw_orcid":null,"affiliations":[]}],"institutions":[],"countries_distinct_count":0,"institutions_distinct_count":0,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":1.3218,"has_fulltext":false,"cited_by_count":1,"citation_normalized_percentile":{"value":0.87063119,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":null,"biblio":{"volume":null,"issue":null,"first_page":"355","last_page":"392"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10126","display_name":"Logic, programming, and type systems","score":0.8144999742507935,"subfield":{"id":"https://openalex.org/subfields/1712","display_name":"Software"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},"topics":[{"id":"https://openalex.org/T10126","display_name":"Logic, programming, and type systems","score":0.8144999742507935,"subfield":{"id":"https://openalex.org/subfields/1712","display_name":"Software"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.11379999667406082,"subfield":{"id":"https://openalex.org/subfields/1708","display_name":"Hardware and Architecture"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T10772","display_name":"Distributed systems and fault tolerance","score":0.016699999570846558,"subfield":{"id":"https://openalex.org/subfields/1705","display_name":"Computer Networks and Communications"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}}],"keywords":[{"id":"https://openalex.org/keywords/reactive-programming","display_name":"reactive programming","score":0.8339999914169312},{"id":"https://openalex.org/keywords/asynchronous-programming","display_name":"asynchronous programming","score":0.9620000123977661},{"id":"https://openalex.org/keywords/concurrent-programming","display_name":"concurrent programming","score":0.9779999852180481},{"id":"https://openalex.org/keywords/parallel-programming","display_name":"parallel programming","score":0.8970000147819519},{"id":"https://openalex.org/keywords/thread-pool","display_name":"thread pool","score":0.5680000185966492},{"id":"https://openalex.org/keywords/message-queues","display_name":"message queues","score":0.7059999704360962},{"id":"https://openalex.org/keywords/pattern-matching","display_name":"pattern matching","score":0.902999997138977},{"id":"https://openalex.org/keywords/parallel-i-o","display_name":"parallel I/O","score":0.7179999947547913},{"id":"https://openalex.org/keywords/multiprocessor-systems","display_name":"multiprocessor systems","score":0.5230000019073486}],"concepts":[{"id":"https://openalex.org/C138101251","wikidata":"https://www.wikidata.org/wiki/Q213092","display_name":"Thread (computing)","level":2,"score":0.7909475564956665},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.7769703269004822},{"id":"https://openalex.org/C151319957","wikidata":"https://www.wikidata.org/wiki/Q752739","display_name":"Asynchronous communication","level":2,"score":0.7711244225502014},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.6639366745948792},{"id":"https://openalex.org/C150762246","wikidata":"https://www.wikidata.org/wiki/Q4354073","display_name":"Reactive programming","level":4,"score":0.49280622601509094},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.4474152624607086},{"id":"https://openalex.org/C48103436","wikidata":"https://www.wikidata.org/wiki/Q599031","display_name":"State (computer science)","level":2,"score":0.4332689940929413},{"id":"https://openalex.org/C34165917","wikidata":"https://www.wikidata.org/wiki/Q188267","display_name":"Programming paradigm","level":2,"score":0.23299762606620789},{"id":"https://openalex.org/C50033165","wikidata":"https://www.wikidata.org/wiki/Q15712089","display_name":"Inductive programming","level":3,"score":0.12594473361968994},{"id":"https://openalex.org/C31258907","wikidata":"https://www.wikidata.org/wiki/Q1301371","display_name":"Computer network","level":1,"score":0.050922691822052}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1007/978-1-4302-0285-1_13","doi":"https://doi.org/10.1007/978-1-4302-0285-1_13","is_oa":false,"landing_page_url":"https://doi.org/10.1007/978-1-4302-0285-1_13","pdf_url":null,"source":{"id":"https://openalex.org/S4306462844","display_name":"Apress eBooks","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"listed_in":[],"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"ebook platform"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Expert F#","raw_type":"book-chapter"}],"best_oa_location":null,"sustainable_development_goals":[],"study_designs":[],"awards":[],"funders":[],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":0,"referenced_works":[],"related_works":["https://openalex.org/W4235925019","https://openalex.org/W4247199960","https://openalex.org/W2124558927","https://openalex.org/W2902077623","https://openalex.org/W2491791038","https://openalex.org/W4296683329","https://openalex.org/W3044616265","https://openalex.org/W1587375298","https://openalex.org/W4249097460","https://openalex.org/W2416159924"],"abstract_inverted_index":{"S":[0],"o":[1],"far":[2],"in":[3,80,105,130,147],"this":[4,36,150],"book":[5],"you\u2019ve":[6,60],"seen":[7,61],"functions":[8],"and":[9,28,47,94,142,167,176,189,198,221,234,243],"objects":[10],"that":[11,158],"process":[12,148,208,240],"their":[13],"inputs":[14],"immediately":[15],"using":[16],"a":[17,81,91,106,117,183],"single":[18],"\u201cthread\u201d":[19],"of":[20,65,98,125,155],"execution":[21],"where":[22],"the":[23,66,126,156,168,190,237,244,250],"code":[24],"runs":[25],"to":[26,42,56,70,95,178,182,194,207,216,224],"completion":[27],"produces":[29],"useful":[30],"results":[31,89,180],"or":[32,109,120,134],"state":[33],"changes.":[34],"In":[35,149],"chapter,":[37,151],"you\u2019ll":[38],"turn":[39],"your":[40],"attention":[41],"concurrent,":[43],"parallel,":[44],"asynchronous":[45,187,200],",":[46],"reactive":[48,107],"programs.":[49],"These":[50,228],"each":[51],"represent":[52],"substantially":[53],"different":[54],"approaches":[55],"programming":[57],"from":[58],"those":[59],"so":[62],"far.":[63],"Some":[64],"reasons":[67],"for":[68,171],"turning":[69],"these":[71,99,162],"techniques":[72,157,220],"are":[73,146],"as":[74,249],"follows:":[75],"To":[76,86,101,111,122,137],"achieve":[77,102,112,161],"better":[78],"responsiveness":[79],"graphical":[82],"user":[83],"interface":[84],"(GUI)":[85],"report":[87,179],"progress":[88],"during":[90],"long-running":[92],"computation":[93],"support":[96],"cancellation":[97],"computations":[100,173],"greater":[103],"throughput":[104],"application":[108],"service":[110],"faster":[113],"processing":[114,139],"rates":[115],"on":[116],"multiprocessor":[118],"machine":[119,233],"cluster":[121],"take":[123],"advantage":[124],"I/O":[127,144,201],"parallelism":[128],"available":[129],"modern":[131],"disk":[132,143],"drives":[133],"network":[135,141,196],"connections":[136],"sustain":[138],"while":[140],"operations":[145,202],"we":[152],"cover":[153],"some":[154],"can":[159],"help":[160],"outcomes:":[163],"Using":[164,174,185,203,211],".NET":[165,191,213],"threads":[166],"BackgroundWorker":[169],"class":[170],"background":[172],"events":[175],"messages":[177],"back":[181],"GUI":[184],"F#":[186,204],"workflows":[188],"thread":[192],"pool":[193],"handle":[195],"requests":[197],"other":[199],"pattern":[205],"matching":[206],"message":[209],"queues":[210],"low-level":[212],"shared-memory":[214],"primitives":[215],"implement":[217],"new":[218],"concurrency":[219],"control":[222],"access":[223],"mutable":[225],"data":[226],"structures":[227],"keywords":[229,245],"were":[230],"added":[231],"by":[232,236],"not":[235],"authors.":[238],"This":[239],"is":[241],"experimental":[242],"may":[246],"be":[247],"updated":[248],"learning":[251],"algorithm":[252],"improves.":[253]},"counts_by_year":[],"updated_date":"2026-10-10T09:11:00.788812","created_date":"2016-06-24T00:00:00"}
