编程语言需要哪些功能?

Dar*_*ian 1 compiler-construction language-features programming-languages language-design compilation

最近我的大学为本科生设置了大型项目.其中一个项目是创建一种新的编程语言,其中包含其他语言的所有最理想的部分.现在,我知道很多事情对我来说是非常不可行的(或者甚至是密切的) - 例如,使语言非常接近自然语言.

有一些很好的功能,如高阶函数和交换两个变量值的运算符.然而,我很难想到很多,所以一些建议将非常感激 - 最好的建议被标记为答案.我只是在这里寻找想法,而不是如何实现它们的方法.

Fru*_*ner 5

我喜欢的功能:

  • 关联数组,所以我可以做的事情 price["apple"] := 0.99
  • for-each循环所以我不必担心索引集合中不存在的元素
  • :=分配的运算符,而不是=;)
  • 允许除数值之外的事物的switch-case语句,例如:case "apple": price := 0.99.
  • 数字/日期范围作为有效数据类型.
  • 具有命名参数和默认值的函数
  • 对正则表达式操作的本机支持(如Perl)

  • :=似乎是一个好的,因为赋值的=运算符似乎与我们提出理解的平等概念相矛盾. (2认同)