编程系统的技术维度

摘要:编程需要的不仅仅是在编程语言中编写代码。通常在有状态的环境中完成,通过与系统通过图形用户界面进行交互。然而,在这个广阔的可能性空间中缺乏共同的导航结构。对编程系统的工作未能形成一体化的研究体系,使得改进过去的工作和推进技术发展变得困难。在计算机科学中,关于编程语言的比较已经有很多说法和实践,但对于编程系统却没有类似的理论。我们认为编程系统也应该有一种理论。 我们提出了一个框架,包括技术维度,这些技术维度捕捉了编程系统的基本特征,并提供了一种概念化和比较的方法。我们通过审视过去有影响力的编程系统并审查它们的设计原则、技术能力和用户交互风格来识别技术维度。技术维度捕捉了可以独立研究、比较和推进的特征。这使得我们可以以一种可以共享和建设性地争论的方式来谈论编程系统,而不仅仅依赖于个人印象。我们的框架是通过对过去编程系统的定性分析得出的。我们概述了使用我们框架的两种具体方法。首先,我们展示了它如何分析最近开发的一种新型编程系统。然后,我们使用它来确定编程系统设计空间中一个有趣的未开发点。 大量的研究工作集中在构建易于使用、对非专家开放、可塑性和/或强大的编程系统上,但这些努力是独立的。他们是非正式的,由作者的个人愿景指导,并且只能根据个人使用经验进行评估和比较。通过为更系统的研究提供基础,我们可以帮助编程系统研究人员站在巨人的肩膀上。

作者:Joel Jakubovic (University of Kent, UK), Jonathan Edwards (n.n., n.n.), Tomas Petricek (University of Kent, UK / Charles University, Czechia)

论文ID:2302.10003

分类:Programming Languages

分类简称:cs.PL

提交时间:2023-02-21

PDF 下载: 英文版 中文版pdf翻译中