终身为国是什么生肖| 不来事是什么原因| 潜质是什么意思| 肚子经常胀气是什么原因| 什么叫走读生| 随餐服用是什么时候吃| 胃溃疡不能吃什么食物| 男性脾大是什么原因| 脚后跟疼是什么原因| 腹部b超能检查出什么| 前列腺液是什么样子| 男人练臀桥有什么用| 宛字五行属什么| 花枝鼠吃什么| 夏天摆摊适合卖什么| 最大的海是什么海| 甲亢和甲状腺有什么区别| 吃什么可以软化血管| 什么什么各异| 蛋黄吃多了有什么坏处| 月经颜色发黑是什么原因| 见多识广什么意思| 男人的精子对女人有什么好处| 两个人可以玩什么游戏| 周吴郑王是什么意思| 无为而治是什么意思| 赭色是什么颜色| 什么的小手| 梦见鳄鱼是什么预兆| 电子商务有限公司是做什么的| 1970年属什么生肖| 能力很强的动物是什么| 三伏天吃什么好| 爱华仕是什么档次| 71年出生属什么生肖| 风热感冒用什么药| 梦见生了个孩子是什么意思| 子宫内膜炎症有什么症状| 抗生素是什么意思| 为什么会长斑| 做脑电图挂什么科| 什么是香港脚| 施教区是什么意思| 血脂高有什么表现| 地铁是什么| lll是什么意思| 老夫是什么意思| 气节是什么意思| 电风扇不转是什么原因| 摔伤挂什么科| 尼维达手表什么档次| 烂嘴唇是什么原因引起的| 怀孕初期分泌物是什么样的| 奶粉可以做什么美食| 处女膜什么样子| 大校军衔相当于什么官| 尿味道很重是什么原因| 高危妊娠监督什么意思| 徽音是什么意思| 犹太人割礼是什么意思| k9什么意思| 光合作用是什么| 胃胀吃点什么药| 动物的尾巴有什么用处| 武则天是什么星座的| 有机什么意思| cj是什么意思| 癌变是什么意思| 耳朵痒痒是什么原因| 医生会诊是什么意思| 全运会是什么| 牙龈萎缩吃什么药见效快| 脂肪瘤看什么科| 满载而归的载是什么意思| 波立维什么时间吃最好| 胳膊脱臼是什么症状| 口干舌燥吃点什么药| 四十不惑是什么意思| 高血压属于什么科| 腿毛长的男人代表什么| 吕布的马叫什么| 翊字是什么意思| 小肚鸡肠是什么意思| 头晕挂什么科比较好| 九月十七日是什么星座| 晒太阳对身体有什么好处| 马蜂吃什么| 发瘟是什么意思| 减脂期吃什么| 肝昏迷是什么症状| 男大女6岁有什么说法| 汗管瘤什么原因造成| 军衔是什么意思| 来大姨妈喝酒有什么影响| 高的部首是什么| 聚宝盆什么意思| 妥投是什么意思| 8.11是什么星座| 吾日三省吾身是什么意思| 心跳过缓吃什么药| 大大是什么意思| 脸上长痘痘去医院挂什么科| 黄豆芽炒什么好吃| fsw是什么意思| 口腔溃疡缺少什么维生素| 人体缺甲是什么症状| 榴莲与什么食物相克| 杨八妹属什么生肖| 肺结核吃什么好| 人工荨麻疹是什么原因引起的| 211是什么| 梦见蛇和老鼠是什么意思| 星标朋友是什么意思| 强痛定又叫什么| 科甲是什么意思| 肿瘤标志物cA724高说明什么| 熹是什么意思| 女生发个wink什么意思| 凤尾菜又叫什么菜| 图什么| er是什么意思| 吃维生素b6有什么好处和副作用| 上嘴唇发黑是什么原因| 尿血什么原因| 扁桃体肥大吃什么药好得快| 月经不停吃什么药| 糖尿病人适合喝什么茶| 误区是什么意思| 熠熠生辉什么意思| 豁口是什么意思| 叶酸对人体有什么好处| 女人吃什么最好| 刘彻是刘邦的什么人| 双性是什么意思| 慢性咽喉炎吃什么药好| 森林里有什么| 软组织挫伤用什么药| 吃什么能降血压| 药剂科是干什么的| 婴儿口水多是什么原因| 抗酸杆菌是什么| 女生什么时候最容易怀孕| 万马奔腾是什么意思| 暖宫贴贴在什么位置| 睡觉起来眼睛肿是什么原因| 四月十八是什么星座| 生姜泡醋有什么功效| 物上代位性是什么意思| 42岁属什么| 右肩膀疼痛预示什么病| 万花筒是什么| 男人额头凹陷预示什么| 防空警报是什么| 制冰机不制冰是什么原因| 思伤脾是什么意思| whan是什么意思| 墨菲定律什么意思| 舌头发苦是什么原因造成的| 第一次要注意什么| 频繁小便是什么原因| 脑疝是什么意思| 羊水是什么| 答非所问是什么意思| 什么样的梅花| 什么是正骨| 6.25是什么日子| 画代表什么生肖| 为什么会经常流鼻血| 菠菜不能和什么食物一起吃| 5月10日什么星座| 蘑菇不能和什么一起吃| 闹心是什么意思啊| 心肌缺血吃什么食物好| 特发性震颤是什么病| 瑞舒伐他汀什么时候吃最好| atc是什么意思| 河汉是什么意思| 苏轼是什么派诗人| oa期刊是什么意思| 国家为什么不承认鬼神| 透骨草治什么病最有效| 老年人晚上夜尿多是什么原因| 决堤什么意思| 什么多腔| 书签是什么| 异国风情是什么意思| 人什么什么什么| 强调是什么意思| fujixerox是什么牌子| 大德是什么意思| 孕早期吃什么有利于胎心胎芽发育| 耳聋是什么原因引起的| 阴部潮湿是什么原因| 子宫内膜不均匀是什么意思| 小确幸什么意思| 煞气是什么意思| 奔豚是什么意思| 六月十一是什么星座| 这是什么皮肤病| 什么是干眼症| 肝肾亏虚吃什么中成药| 宫颈醋酸白色上皮是什么病变| 天蝎座和什么星座最不配| 什么的爱| 肺结节挂什么科| od值是什么| 大蒜味是什么中毒| c罗穿什么足球鞋| 活检是什么检查| 白带增多是什么原因| 氟哌酸又叫什么名字| 男性婚检都检查什么项目| 右侧疼痛是什么原因| lemon是什么意思| 什么上树全靠一张嘴| ecl是什么意思| un读什么| cpi是什么意思啊| 足踝外科主要看什么| 这些是什么| 兔女郎是什么| 捐精有什么要求| 卒中什么意思| 孕囊是什么样的图片| 哈尔滨有什么特产| 女生做彩超是检查什么| 八字桃花是什么意思| 五步蛇为什么叫五步蛇| 960万平方千米是指我国的什么| 1211是什么星座| 拔牙为什么要验血| 吃什么对肾好| 胆囊炎吃什么食物好| 打嗝和嗳气有什么区别| pvt是什么意思| 近视眼睛什么牌子好| 老登是什么意思| 陪产假什么时候开始休| bm是什么牌子| 跑步后头晕是什么原因| 报单什么意思| 基数是什么意思| 孕囊是什么意思| 失眠吃什么中药调理效果快| 微调是什么意思| 菠菜是什么意思| 什么减肥药有效果| 高血糖吃什么药| 血便是什么颜色| 抱窝是什么意思| 恋爱是什么| 脚肿什么病| 静养是什么意思| 来例假能吃什么水果| 南通有什么特产| 梗是什么意思| 头胀痛什么原因| 子宫内膜厚是什么原因造成的| 手发抖是什么病的先兆| 为什么鼻子无缘无故流鼻血| pu是什么| 长寿菜是什么菜| 遗精什么意思| 智齿为什么会长出来| 百度

第十二届黄帝文化国际论坛4月16日开幕

(Redirected from 4GL)
百度 已有多项国内外研究发现,ED可能是心脏病的早期信号,可发生于冠心病前23年。

A fourth-generation programming language (4GL) is a high-level computer programming language that belongs to a class of languages envisioned as an advancement upon third-generation programming languages (3GL). Each of the programming language generations aims to provide a higher level of abstraction of the internal computer hardware details, making the language more programmer-friendly, powerful, and versatile. While the definition of 4GL has changed over time, it can be typified by operating more with large collections of information at once rather than focusing on just bits and bytes. Languages claimed to be 4GL may include support for database management, report generation, mathematical optimization, graphical user interface (GUI) development, or web development. Some researchers state that 4GLs are a subset of domain-specific languages.[1][2]

The concept of 4GL was developed from the 1970s through the 1990s, overlapping most of the development of 3GL, with 4GLs identified as "non-procedural" or "program-generating" languages, contrasted with 3GLs being algorithmic or procedural languages. While 3GLs like C, C++, C#, Java, and JavaScript remain popular for a wide variety of uses, 4GLs as originally defined found uses focused on databases, reports, and websites.[3] Some advanced 3GLs like Python, Ruby, and Perl combine some 4GL abilities within a general-purpose 3GL environment,[4] and libraries with 4GL-like features have been developed as add-ons for most popular 3GLs, producing languages that are a mix of 3GL and 4GL, blurring the distinction.[5]

In the 1980s and 1990s, there were efforts to develop fifth-generation programming languages (5GL).

History

edit

Though used earlier in papers and discussions, the term 4GL was first used formally by James Martin in his 1981 book Application Development Without Programmers[6] to refer to non-procedural, high-level specification languages. In some primitive way, early 4GLs were included in the Informatics MARK-IV (1967) product and Sperry's MAPPER (1969 internal use, 1979 release).

The motivations for the '4GL' inception and continued interest are several. The term can apply to a large set of software products. It can also apply to an approach that looks for greater semantic properties and implementation power. Just as the 3GL offered greater power to the programmer, so too did the 4GL open up the development environment to a wider population.

The early input scheme for the 4GL supported entry of data within the 72-character limit of the punched card (8 bytes used for sequencing) where a card's tag would identify the type or function. With judicious use of a few cards, the 4GL deck could offer a wide variety of processing and reporting capability whereas the equivalent functionality coded in a 3GL could subsume, perhaps, a whole box or more of cards.[7]

The 72-character format continued for a while as hardware progressed to larger memory and terminal interfaces. Even with its limitations, this approach supported highly sophisticated applications.

As interfaces improved and allowed longer statement lengths and grammar-driven input handling, greater power ensued. An example of this is illustrated by Nicholas Rawlings in his comments for the Computer History Museum about NCSS.[8] He reports that James Martin asked Rawlings for a NOMAD solution to a standard problem Martin called the Engineer's Problem: "give 6% raises to engineers whose job ratings had an average of 7 or better." Martin provided a "dozen pages of COBOL, and then just a page or two of Mark IV, from Informatics." Rawlings offered a single statement, performing a set-at-a-time operation.

The development of the 4GL was influenced by several factors, with the hardware and operating system constraints having a large weight. When the 4GL was first introduced, a disparate mix of hardware and operating systems mandated custom application development support that was specific to the system in order to ensure sales. One example is the MAPPER system developed by Sperry. Though it has roots back to the beginning, the system has proven successful in many applications and has been ported to modern platforms. The latest variant is embedded in the BIS[9] offering of Unisys. MARK-IV is now known as VISION:BUILDER and is offered by Computer Associates.

The Santa Fe railroad used MAPPER to develop a system in a project that was an early example of 4GL, rapid prototyping, and programming by users.[10] The idea was that it was easier to teach railroad experts to use MAPPER than to teach programmers the "intricacies of railroad operations".[11]

One of the early (and portable) languages that had 4GL properties was RAMIS developed by Gerald C. Cohen at Mathematica, a mathematical software company. Cohen left Mathematica and founded Information Builders to create a similar reporting-oriented 4GL, called FOCUS.

Later 4GL types are tied to a database system and are far different from the earlier types in their use of techniques and resources that have resulted from the general improvement of computing with time.

An interesting twist to the 4GL scene is realization that graphical interfaces and the related reasoning done by the user form a 'language' that is poorly understood.

Types

edit

A number of different types of 4GLs exist:

  • Table-driven (codeless) programming, usually running with a runtime framework and libraries. Instead of using code, the developer defines their logic by selecting an operation in a pre-defined list of memory or data table manipulation commands. In other words, instead of coding, the developer uses table-driven algorithm programming (see also control tables that can be used for this purpose). These types of tools can be used for business application development usually consisting in a package allowing for both business data manipulation and reporting, therefore they come with GUI screens and report editors. They usually offer integration with one or more lower level dynamic-link library (DLL), generated from a typical 3GL for when the need arises for more hardware/OS specific operations.
  • Report generator programming languages take a description of the data format and the report to generate and from that they either generate the required report directly or they generate a program to generate the report (see also RPG).
  • Similarly, screen generators (also called forms generators) manage online interactions with the application system users or generate programs to do so.
  • More ambitious 4GLs (sometimes termed fourth generation environments) attempt to automatically generate whole systems from the outputs of computer-aided software engineering (CASE) tools, specifications of screens and reports, and possibly also the specification of some additional processing logic.
  • Data management 4GLs such as SAS, SPSS, and Stata provide sophisticated coding commands for data manipulation, file reshaping, case selection, and data documentation in the preparation of data for statistical analysis and reporting.
  • So-called "XTalk" languages, developed initially with Apple's Hypercard in 1987. Hypercard was the progenitor of more modern and powerful programs such as SuperCard, Toolbook and LiveCode.

Some 4GLs have integrated tools that allow for the easy specification of all the required information:

Low code environments

edit

In the twenty-first century, 4GL systems have emerged as "low code" environments or platforms for the problem of rapid application development in short periods of time. Vendors often provide sample systems such as CRM, contract management, bug tracking from which development can occur with little programming.[12]

Examples

edit

General use / versatile

edit

Report generators

edit

Extract data from files or database to create reports in a wide range of formats is done by the report generator tools.

Data manipulation, analysis, and reporting languages

edit

Mathematical optimization

edit

Database-driven GUI application development

edit

Low-code / No-code development platforms

edit

Source:[13][14]

Screen painters and generators

edit

Web development languages

edit

Music Programming language

edit

See also

edit

References

edit
  1. ^ 35th Hawaii International Conference on System Sciences - 1002 Domain-Specific Languages for Software Engineering Archived May 16, 2011, at the Wayback Machine
  2. ^ Arie van Deursen; Paul Klint; Joost Visser (1998). "Domain-Specific witness Languages:An Annotated Bibliography". Archived from the original on 2025-08-14. Retrieved 2025-08-14.
  3. ^ MacDonell, Stephen (November 1993). "Software development, CASE tools and 4GLs—A survey of New Zealand usage. Part 1". 750 New Zealand organisations. hdl:10523/928.
  4. ^ "Roger Clarke's Software Generations".
  5. ^ "Definition of fourth-generation language". PCMAG. Retrieved 7 May 2020.
  6. ^ Martin, James. Application Development Without Programmers. Prentice-Hall, 1981. ISBN?0-13-038943-9.
  7. ^ "IBM Punch Cards". www.columbia.edu. Archived from the original on 2025-08-14. Retrieved 2025-08-14.
  8. ^ "RAMIS and NOMAD?: National Computer Software Systems, Inc. (NCSS) conference call (transcript)". Computer History Museum. 2025-08-14. Retrieved 2025-08-14.
  9. ^ "Data Mining Software, Data Analysis, and More: Unisys Business Information Server Features". Unisys. 2025-08-14. Archived from the original on 2025-08-14. Retrieved 2025-08-14.
  10. ^ Louis Schlueter (1988). User-Designed Computing: The Next Generation. [book on report generator and MAPPER systems]
  11. ^ Barbara Canning McNurlin; Ralph H. Sprague (2004). "Ch. 9". Information Systems Management in Practice (PDF). Pearson/Prentice Hall. ISBN?978-0-13-101139-7.[permanent dead link]
  12. ^ Forrest, Conner. "How Salesforce is using low-code orchestration to save 'floundering IoT projects'". ZDNet.
  13. ^ Marvin, Rob (August 10, 2018). "The Best Low-Code Development Platforms for 2019". PCMAG.
  14. ^ Sayer, Martin Heller and Peter (6 April 2018). "25 simple tools for building mobile apps fast". InfoWorld. Archived from the original on 18 November 2017. Retrieved 17 November 2017.
  15. ^ "DronaHQ. Build apps without coding". www.dronahq.com. Archived from the original on 2025-08-14. Retrieved 2025-08-14.
目字旁与什么有关 人乳头瘤病毒16型阳性是什么意思 貔貅是什么生肖 胎停是什么原因造成的 什么网名好
什么水果寒凉性 浅蓝色裙子配什么颜色上衣好看 如何知道自己适合什么发型 女人吃桃子有什么好处 腿困是什么原因
漂流是什么 小孩咳嗽喝什么药 眼屎多什么原因 谷丙转氨酶是检查什么 高大的动物是什么生肖
双清是什么意思 1949年是什么年 什么是疣 三次元是什么 古代广东叫什么
再生纤维素纤维是什么面料hcv9jop2ns2r.cn 为什么有白带hcv7jop9ns4r.cn 变色龙吃什么食物adwl56.com 为什么月经期有性冲动hcv9jop8ns3r.cn 看食道挂什么科室creativexi.com
黑指甲是什么症状图片hcv8jop4ns2r.cn 银渐层是什么品种hcv9jop5ns9r.cn 狗狗流眼泪是什么原因dayuxmw.com 淋巴结肿大是什么引起的hcv8jop5ns9r.cn 什么是气胸有什么症状hcv8jop6ns2r.cn
落花生为什么叫落花生hcv8jop1ns2r.cn 不然呢是什么意思hcv8jop5ns4r.cn 黄体功能不全是什么意思hcv8jop4ns3r.cn 小孩肚子疼吃什么药hcv9jop5ns1r.cn 什么是焦虑症sanhestory.com
甲醛中毒挂什么科hcv9jop2ns2r.cn 排卵期身体有什么症状表现吗shenchushe.com 般若波罗蜜是什么意思hcv9jop6ns0r.cn 卡介苗是预防什么的hcv9jop4ns5r.cn 老是口渴是什么原因hcv9jop0ns6r.cn
百度