编程中的文字哲学是什么?

时间:2010-09-27 23:17:40

标签: c# literals

如何解释文字?我们为什么要用C#和......等语言来使用它?

文字在C#中很常见。我想知道文学的哲学和历史。

1 个答案:

答案 0 :(得分:13)

  

文字在C#中很常见。我想知道文学的哲学和历史。

有趣的是,我现在正在公共汽车上写一篇关于那个确切主题的博客文章。在接下来的几周里看看我的博客整篇文章(假设我完成了它。)但是现在,这是一个潜行的高峰。

string 文字在编程语言中的主要哲学影响是,它们允许开发人员区分提及使用编程语言结构。例如:

string alphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
Console.WriteLine(alphabet.Length); // 26
Console.WriteLine("alphabet".Length); // 8

引号有很大的不同。它们的意思是“不要将引号中的内容视为程序的一部分,而是将仅仅作为程序的程序的文本”。

要描述使用提及区别的全部哲学影响,需要花费数百页;我建议您阅读Douglas Hofstadter的“Godel Escher Bach”;这些都是关于这些哲学探索的。

比字符串文字更有趣的是我们可能会想到的“程序文字”;这是“文字”,捕获比仅仅字符串值更复杂的结构。 C#3中的表达式树lambdas就是这样的结构(虽然它们通常不被称为“文字”,但它们在逻辑上确实如此。)lambda文字的历史可以追溯到Lisp的早期,其“引用”运算符。我将在我的博客中详细讨论这个问题,敬请期待。