Naturalistic Programming: Model and Implementation

Naturalistic programming is defined as a programming technique that uses abstractions whose expressiveness is close to natural languages. The objective is preserving as much as possible the needs of the client in their language, while the text of these needs is simultaneously the requirements specif...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:Revista IEEE América Latina 2020-07, Vol.18 (7), p.1230-1237
Hauptverfasser: Pulido Prieto, Oscar, Juarez Martinez, Ulises
Format: Artikel
Sprache:eng
Schlagworte:
Online-Zugang:Volltext bestellen
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
container_end_page 1237
container_issue 7
container_start_page 1230
container_title Revista IEEE América Latina
container_volume 18
creator Pulido Prieto, Oscar
Juarez Martinez, Ulises
description Naturalistic programming is defined as a programming technique that uses abstractions whose expressiveness is close to natural languages. The objective is preserving as much as possible the needs of the client in their language, while the text of these needs is simultaneously the requirements specification and the program source code. Consequently, the goal of the naturalistic paradigm is reducing the gap between problem domain and solution domain. In the literature, two main approaches are reported, one focuses on transforming controlled natural languages into high level code, such as Java and Python; in the other approach the requirements description is at the same time the program source code. While the translators employed in the first approach do not offer a new paradigm, the few naturalistic languages reported have utility in specific domains. In the absence of a naturalistic framework, this article presents the minimum elements for defining a naturalistic model that allows the creation of general-purpose languages and at the same time, the SN language is introduced as a proof-of-concept, which is a prototype language for naturalistic programming.
doi_str_mv 10.1109/TLA.2020.9099764
format Article
fullrecord <record><control><sourceid>proquest_RIE</sourceid><recordid>TN_cdi_ieee_primary_9099764</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><ieee_id>9099764</ieee_id><sourcerecordid>2407042858</sourcerecordid><originalsourceid>FETCH-LOGICAL-c174t-6590fe091e4ed383758f752cd417615e0132c65a9224e0d9a32a68bc55cbe11c3</originalsourceid><addsrcrecordid>eNpNkMtLw0AQhxdRsFbvgpeA58TZV7LrrRSrhfg41POy3UxKSl7upgf_e1NSxdPMMN9vBj5CbikklIJ-2OSLhAGDRIPWWSrOyIxKoeJxYuf_-ktyFcIegKtU8Rlhb3Y4eFtXYahc9OG7nbdNU7W7x-i1K7CObFtE66avscF2sEPVtdfkorR1wJtTnZPP1dNm-RLn78_r5SKPHc3EEKdSQ4mgKQosuOKZVGUmmSsEzVIqEShnLpVWMyYQCm05s6naOindFil1fE7up7u9774OGAaz7w6-HV8aJiADwZRUIwUT5XwXgsfS9L5qrP82FMzRjBnNmKMZczIzRu6mSIWIf_jv9gdLjV2H</addsrcrecordid><sourcetype>Aggregation Database</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype><pqid>2407042858</pqid></control><display><type>article</type><title>Naturalistic Programming: Model and Implementation</title><source>IEEE Electronic Library (IEL)</source><creator>Pulido Prieto, Oscar ; Juarez Martinez, Ulises</creator><creatorcontrib>Pulido Prieto, Oscar ; Juarez Martinez, Ulises</creatorcontrib><description>Naturalistic programming is defined as a programming technique that uses abstractions whose expressiveness is close to natural languages. The objective is preserving as much as possible the needs of the client in their language, while the text of these needs is simultaneously the requirements specification and the program source code. Consequently, the goal of the naturalistic paradigm is reducing the gap between problem domain and solution domain. In the literature, two main approaches are reported, one focuses on transforming controlled natural languages into high level code, such as Java and Python; in the other approach the requirements description is at the same time the program source code. While the translators employed in the first approach do not offer a new paradigm, the few naturalistic languages reported have utility in specific domains. In the absence of a naturalistic framework, this article presents the minimum elements for defining a naturalistic model that allows the creation of general-purpose languages and at the same time, the SN language is introduced as a proof-of-concept, which is a prototype language for naturalistic programming.</description><identifier>ISSN: 1548-0992</identifier><identifier>EISSN: 1548-0992</identifier><identifier>DOI: 10.1109/TLA.2020.9099764</identifier><language>eng</language><publisher>Los Alamitos: IEEE</publisher><subject>Automatic Source Code Generation ; Controlled Natural English ; Domains ; Expressiveness ; IEEE transactions ; Java ; Languages ; Multiuser detection ; Natural languages ; Naturalistic Programming ; Programming ; Python ; Requirements specifications ; Source code ; Translators</subject><ispartof>Revista IEEE América Latina, 2020-07, Vol.18 (7), p.1230-1237</ispartof><rights>Copyright The Institute of Electrical and Electronics Engineers, Inc. (IEEE) 2020</rights><woscitedreferencessubscribed>false</woscitedreferencessubscribed><orcidid>0000-0002-2356-3418 ; 0000-0002-5911-3136</orcidid></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><linktohtml>$$Uhttps://ieeexplore.ieee.org/document/9099764$$EHTML$$P50$$Gieee$$H</linktohtml><link.rule.ids>314,777,781,793,27905,27906,54739</link.rule.ids><linktorsrc>$$Uhttps://ieeexplore.ieee.org/document/9099764$$EView_record_in_IEEE$$FView_record_in_$$GIEEE</linktorsrc></links><search><creatorcontrib>Pulido Prieto, Oscar</creatorcontrib><creatorcontrib>Juarez Martinez, Ulises</creatorcontrib><title>Naturalistic Programming: Model and Implementation</title><title>Revista IEEE América Latina</title><addtitle>T-LA</addtitle><description>Naturalistic programming is defined as a programming technique that uses abstractions whose expressiveness is close to natural languages. The objective is preserving as much as possible the needs of the client in their language, while the text of these needs is simultaneously the requirements specification and the program source code. Consequently, the goal of the naturalistic paradigm is reducing the gap between problem domain and solution domain. In the literature, two main approaches are reported, one focuses on transforming controlled natural languages into high level code, such as Java and Python; in the other approach the requirements description is at the same time the program source code. While the translators employed in the first approach do not offer a new paradigm, the few naturalistic languages reported have utility in specific domains. In the absence of a naturalistic framework, this article presents the minimum elements for defining a naturalistic model that allows the creation of general-purpose languages and at the same time, the SN language is introduced as a proof-of-concept, which is a prototype language for naturalistic programming.</description><subject>Automatic Source Code Generation</subject><subject>Controlled Natural English</subject><subject>Domains</subject><subject>Expressiveness</subject><subject>IEEE transactions</subject><subject>Java</subject><subject>Languages</subject><subject>Multiuser detection</subject><subject>Natural languages</subject><subject>Naturalistic Programming</subject><subject>Programming</subject><subject>Python</subject><subject>Requirements specifications</subject><subject>Source code</subject><subject>Translators</subject><issn>1548-0992</issn><issn>1548-0992</issn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2020</creationdate><recordtype>article</recordtype><sourceid>RIE</sourceid><recordid>eNpNkMtLw0AQhxdRsFbvgpeA58TZV7LrrRSrhfg41POy3UxKSl7upgf_e1NSxdPMMN9vBj5CbikklIJ-2OSLhAGDRIPWWSrOyIxKoeJxYuf_-ktyFcIegKtU8Rlhb3Y4eFtXYahc9OG7nbdNU7W7x-i1K7CObFtE66avscF2sEPVtdfkorR1wJtTnZPP1dNm-RLn78_r5SKPHc3EEKdSQ4mgKQosuOKZVGUmmSsEzVIqEShnLpVWMyYQCm05s6naOindFil1fE7up7u9774OGAaz7w6-HV8aJiADwZRUIwUT5XwXgsfS9L5qrP82FMzRjBnNmKMZczIzRu6mSIWIf_jv9gdLjV2H</recordid><startdate>20200701</startdate><enddate>20200701</enddate><creator>Pulido Prieto, Oscar</creator><creator>Juarez Martinez, Ulises</creator><general>IEEE</general><general>The Institute of Electrical and Electronics Engineers, Inc. (IEEE)</general><scope>97E</scope><scope>RIA</scope><scope>RIE</scope><scope>AAYXX</scope><scope>CITATION</scope><scope>7SC</scope><scope>7SP</scope><scope>8FD</scope><scope>JQ2</scope><scope>L7M</scope><scope>L~C</scope><scope>L~D</scope><orcidid>https://orcid.org/0000-0002-2356-3418</orcidid><orcidid>https://orcid.org/0000-0002-5911-3136</orcidid></search><sort><creationdate>20200701</creationdate><title>Naturalistic Programming: Model and Implementation</title><author>Pulido Prieto, Oscar ; Juarez Martinez, Ulises</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-c174t-6590fe091e4ed383758f752cd417615e0132c65a9224e0d9a32a68bc55cbe11c3</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2020</creationdate><topic>Automatic Source Code Generation</topic><topic>Controlled Natural English</topic><topic>Domains</topic><topic>Expressiveness</topic><topic>IEEE transactions</topic><topic>Java</topic><topic>Languages</topic><topic>Multiuser detection</topic><topic>Natural languages</topic><topic>Naturalistic Programming</topic><topic>Programming</topic><topic>Python</topic><topic>Requirements specifications</topic><topic>Source code</topic><topic>Translators</topic><toplevel>online_resources</toplevel><creatorcontrib>Pulido Prieto, Oscar</creatorcontrib><creatorcontrib>Juarez Martinez, Ulises</creatorcontrib><collection>IEEE All-Society Periodicals Package (ASPP) 2005-present</collection><collection>IEEE All-Society Periodicals Package (ASPP) 1998-Present</collection><collection>IEEE Electronic Library (IEL)</collection><collection>CrossRef</collection><collection>Computer and Information Systems Abstracts</collection><collection>Electronics &amp; Communications Abstracts</collection><collection>Technology Research Database</collection><collection>ProQuest Computer Science Collection</collection><collection>Advanced Technologies Database with Aerospace</collection><collection>Computer and Information Systems Abstracts – Academic</collection><collection>Computer and Information Systems Abstracts Professional</collection><jtitle>Revista IEEE América Latina</jtitle></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext_linktorsrc</fulltext></delivery><addata><au>Pulido Prieto, Oscar</au><au>Juarez Martinez, Ulises</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>Naturalistic Programming: Model and Implementation</atitle><jtitle>Revista IEEE América Latina</jtitle><stitle>T-LA</stitle><date>2020-07-01</date><risdate>2020</risdate><volume>18</volume><issue>7</issue><spage>1230</spage><epage>1237</epage><pages>1230-1237</pages><issn>1548-0992</issn><eissn>1548-0992</eissn><abstract>Naturalistic programming is defined as a programming technique that uses abstractions whose expressiveness is close to natural languages. The objective is preserving as much as possible the needs of the client in their language, while the text of these needs is simultaneously the requirements specification and the program source code. Consequently, the goal of the naturalistic paradigm is reducing the gap between problem domain and solution domain. In the literature, two main approaches are reported, one focuses on transforming controlled natural languages into high level code, such as Java and Python; in the other approach the requirements description is at the same time the program source code. While the translators employed in the first approach do not offer a new paradigm, the few naturalistic languages reported have utility in specific domains. In the absence of a naturalistic framework, this article presents the minimum elements for defining a naturalistic model that allows the creation of general-purpose languages and at the same time, the SN language is introduced as a proof-of-concept, which is a prototype language for naturalistic programming.</abstract><cop>Los Alamitos</cop><pub>IEEE</pub><doi>10.1109/TLA.2020.9099764</doi><tpages>8</tpages><orcidid>https://orcid.org/0000-0002-2356-3418</orcidid><orcidid>https://orcid.org/0000-0002-5911-3136</orcidid></addata></record>
fulltext fulltext_linktorsrc
identifier ISSN: 1548-0992
ispartof Revista IEEE América Latina, 2020-07, Vol.18 (7), p.1230-1237
issn 1548-0992
1548-0992
language eng
recordid cdi_ieee_primary_9099764
source IEEE Electronic Library (IEL)
subjects Automatic Source Code Generation
Controlled Natural English
Domains
Expressiveness
IEEE transactions
Java
Languages
Multiuser detection
Natural languages
Naturalistic Programming
Programming
Python
Requirements specifications
Source code
Translators
title Naturalistic Programming: Model and Implementation
url https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-01-20T17%3A12%3A56IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-proquest_RIE&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.genre=article&rft.atitle=Naturalistic%20Programming:%20Model%20and%20Implementation&rft.jtitle=Revista%20IEEE%20Am%C3%A9rica%20Latina&rft.au=Pulido%20Prieto,%20Oscar&rft.date=2020-07-01&rft.volume=18&rft.issue=7&rft.spage=1230&rft.epage=1237&rft.pages=1230-1237&rft.issn=1548-0992&rft.eissn=1548-0992&rft_id=info:doi/10.1109/TLA.2020.9099764&rft_dat=%3Cproquest_RIE%3E2407042858%3C/proquest_RIE%3E%3Curl%3E%3C/url%3E&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_pqid=2407042858&rft_id=info:pmid/&rft_ieee_id=9099764&rfr_iscdi=true