{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2023,11,13]],"date-time":"2023-11-13T00:31:57Z","timestamp":1699835517784},"reference-count":12,"publisher":"Wiley","issue":"2","license":[{"start":{"date-parts":[[2006,10,27]],"date-time":"2006-10-27T00:00:00Z","timestamp":1161907200000},"content-version":"vor","delay-in-days":11166,"URL":"http:\/\/onlinelibrary.wiley.com\/termsAndConditions#vor"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Softw Pract Exp"],"published-print":{"date-parts":[[1976,4]]},"abstract":"<jats:title>Abstract<\/jats:title><jats:p>This paper describes a new facility in the SNOBOL4 programming language that provides the capability to associate the execution of a programmer\u2010defined function with the act of assigning a variable a value or retrieving the value of a variable. The facility, called programmer\u2010defined variable association, subsumes the existing built\u2010in associations used for input, output and value tracing and provides, at the source\u2010language level, the protection and datatype coercion mechanisms used in keywords. Several applications are described that illustrate the usefulness of this addition to the language. The facility is especially useful for program monitoring and debugging. The implementation of this facility and the effect of implementation techniques on programming language design are also discussed.<\/jats:p>","DOI":"10.1002\/spe.4380060210","type":"journal-article","created":{"date-parts":[[2006,11,17]],"date-time":"2006-11-17T12:21:58Z","timestamp":1163766118000},"page":"245-254","source":"Crossref","is-referenced-by-count":8,"title":["Variable associations in SNOBOL4"],"prefix":"10.1002","volume":"6","author":[{"given":"David R.","family":"Hanson","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"311","published-online":{"date-parts":[[2006,10,27]]},"reference":[{"key":"e_1_2_1_2_2","volume-title":"The SNOBOL4 Programming Language","author":"Griswold R. E.","year":"1971"},{"key":"e_1_2_1_3_2","volume-title":"String and List Processing in SNOBOL4: Techniques and Applications","author":"Griswold R. E.","year":"1975"},{"key":"e_1_2_1_4_2","unstructured":"D. R.Hanson Additions to the SITBOL Implementation of SNOBOL4 to Facilitate Interactive Debugging SNOBOL4 Project Document S4D51 The University of Arizona Tucson 1975."},{"key":"e_1_2_1_5_2","volume-title":"The Macro Implementation of SNOBOL4, A Case Study of Machine\u2010Independent Software Development","author":"Griswold R. E.","year":"1972"},{"key":"e_1_2_1_6_2","volume-title":"A Design for SNOBOL4 for the PDP\u201010, SNOBOL4 Project Document S4D29b","author":"Gimpel J. F.","year":"1973"},{"key":"e_1_2_1_7_2","volume-title":"SITBOL Version 3.0, SNOBOL4 Project Document S4D30b","author":"Gimpel J. F.","year":"1973"},{"key":"e_1_2_1_8_2","doi-asserted-by":"publisher","DOI":"10.1145\/953343.953344"},{"key":"e_1_2_1_9_2","volume-title":"The Design of ELFBOL\u2014A Full SNOBOL4 for the PDP\u201011, SNOBOL4 Project Document S4D34","author":"Gimpel J. F.","year":"1973"},{"key":"e_1_2_1_10_2","volume-title":"Programmer\u2010Defined Variable Associations in SNOBOL4, SNOBOL4 Project Document S4D50","author":"Hanson D. R.","year":"1975"},{"key":"e_1_2_1_11_2","volume-title":"SPITBOL Version 2.0, SNOBOL4 Project Document S4D23","author":"Dewar R. B. K.","year":"1971"},{"key":"e_1_2_1_12_2","volume-title":"FASBOL, A SNOBOL4 Compiler, Electronics Research Laboratory Memorandum No. ERL\u2010M314","author":"Santos P. J.","year":"1971"},{"key":"e_1_2_1_13_2","volume-title":"FASBOL II, A SNOBOL4 Compiler for the PDP\u201010, Electronics Research Laboratory Memorandum No. ERL\u2010M348","author":"Santos P. J.","year":"1972"}],"container-title":["Software: Practice and Experience"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/api.wiley.com\/onlinelibrary\/tdm\/v1\/articles\/10.1002%2Fspe.4380060210","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/onlinelibrary.wiley.com\/doi\/pdf\/10.1002\/spe.4380060210","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2023,11,12]],"date-time":"2023-11-12T04:30:00Z","timestamp":1699763400000},"score":1,"resource":{"primary":{"URL":"https:\/\/onlinelibrary.wiley.com\/doi\/10.1002\/spe.4380060210"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[1976,4]]},"references-count":12,"journal-issue":{"issue":"2","published-print":{"date-parts":[[1976,4]]}},"alternative-id":["10.1002\/spe.4380060210"],"URL":"https:\/\/doi.org\/10.1002\/spe.4380060210","archive":["Portico"],"relation":{},"ISSN":["0038-0644","1097-024X"],"issn-type":[{"value":"0038-0644","type":"print"},{"value":"1097-024X","type":"electronic"}],"subject":[],"published":{"date-parts":[[1976,4]]}}}