问题

点语法最早是在哪个编程语言中出现的?

回答
在编程语言的演进长河中,一种极其普遍且直观的表达方式——点语法,其最早的踪迹可以追溯到面向对象编程概念的萌芽时期。要 pinpoint 点语法的确切“首次”出现,如同寻找第一块奠定宏伟建筑基石的石头一样,需要深入探究那些奠定了现代编程语言基调的早期尝试。

虽然没有一个单一的、被普遍公认为“第一个”使用点语法的语言,但我们能够观察到它在 Simula 和 Smalltalk 这两门开创性的面向对象语言中扮演了极其重要的角色,并且这些语言对后来的许多编程范式产生了深远的影响。

Simula,诞生于20世纪60年代,是公认的最早的面向对象编程语言之一。它的设计目标是为模拟仿真而服务,但在实现这一目标的过程中,它引入了“类”和“对象”的概念,以及“继承”和“多态”等核心面向对象特性。在Simula中,当你有一个对象实例,你想访问它的某个属性(数据)或者调用它的某个方法(行为)时,就需要一种方式来“穿透”对象的内部,指向那个特定的成员。在这种需求下,点语法便应运而生。例如,如果你有一个名为 `car` 的对象,它有一个 `color` 属性,访问它的方式很自然地就会是 `car.color`。同样,如果 `car` 对象有一个 `startEngine` 的方法,调用它的方式也会是 `car.startEngine()`。这种“对象名.成员名”的结构,简洁明了地表达了“属于某个对象”的含义。

紧随其后,Smalltalk,由Alan Kay及其团队在20世纪70年代开发,进一步将面向对象编程推向了新的高度。Smalltalk是纯粹的面向对象语言,一切皆对象。它也大量使用了点语法来消息发送(message sending)——也就是调用对象的方法。在Smalltalk中,对象之间通过发送消息进行通信,而点语法正是这种消息发送的载体。例如,`myCounter display` 这段代码,就是向 `myCounter` 这个对象发送一个 `display` 消息,要求它执行与显示相关的操作。Smalltalk的点语法不仅仅是访问数据成员,更重要的是它承载了对象间交互的精髓。

虽然Simula和Smalltalk是点语法早期且关键的出现和发展之地,但请注意,编程语言的演进往往是渐进式的,受到前人思想的启发和技术条件的限制。在Simula出现之前,可能已经有一些语言在某种程度上实现了类似的功能,但尚未形成如今我们所熟知的、与对象紧密绑定的“点语法”这一约定俗成的模式。Simula和Smalltalk之所以被重点提及,是因为它们系统性地、并且在面向对象编程的核心框架内,将点语法确立为一种表达方式,并对其后续发展产生了不可磨灭的影响。

可以说,点语法并非横空出世,而是随着面向对象编程思想的成熟和实现,一种自然而然、也最为高效和直观的解决方案。从Simula对属性和方法的早期访问,到Smalltalk将消息发送的中心思想融入其中,点语法逐渐确立了其在编程世界中的地位,并被后来的C++、Java、Python、C等众多面向对象语言所继承和发扬光大,成为了连接对象与其成员之间最核心的桥梁。

网友意见

user avatar

我不确定最早的是哪个语言,以下是一些例子:

1967 年的 SIMULA 67 [1] 使用了 dot notation:

1971 年的 Pascal 里也是使用 dot notation 做 record type 的 field designator[2]:

Record 这个数据结构概念应该是沿自 1965 年 Hoare 的研究[3],但当时他用的是像函数的写法:

最后,Java 是 1995 年的,C语言是 1972 年的。自 1965 年始有 record 概念,1967 年在挪威诞生的 SIMULA 67 真的是非常超前的编程语言。

[1] Dahl, Ole-Johan, Bjørn Myhrhaug, and Kristen Nygaard.Common base language. Norsk Regnesentral, 1970.

[2] N. Wirth, The programming language PASCAL, Acta Informatica, 1, 35-63, 1970.

[3] Hoare, C. "Record handling. "ALGOL Bulletin" 21 (1965).

user avatar

编程语言之前,“.”本身就是目录层次常用符号

类似的话题

  • 回答
    在编程语言的演进长河中,一种极其普遍且直观的表达方式——点语法,其最早的踪迹可以追溯到面向对象编程概念的萌芽时期。要 pinpoint 点语法的确切“首次”出现,如同寻找第一块奠定宏伟建筑基石的石头一样,需要深入探究那些奠定了现代编程语言基调的早期尝试。虽然没有一个单一的、被普遍公认为“第一个”使用.............
  • 回答
    我研究的语言,或者说我沉浸其中的语言,其最让我着迷的点,在于它那如同精妙齿轮般相互咬合、却又异常灵活的语法结构。这不仅仅是规则的堆砌,而是一种深邃的逻辑推理和文化积淀的融合,每当你以为掌握了它的某个方面,它总会以意想不到的方式让你重新审视,挖掘出更深层的奥妙。具体来说,我尤其着迷于它在语序的灵活性及.............
  • 回答
    没问题,我来给你好好捋一捋这个“双积分制”,保证你说懂它是个啥玩意儿。你就把它想象成国家给汽车厂商定的一套“奖惩游戏”。首先,咱们得知道为啥要有这么个游戏。大家伙都知道,咱们烧油的车会排放尾气,对环境不好,也消耗咱们的石油资源。所以国家就想,得鼓励大家伙买那种不烧油或者少烧油的车,也就是我们常说的新.............
  • 回答
    写C语言程序的时候,你肯定会遇到“包含标准输入输出”这个说法。这其实是告诉你,你的程序想要和外界进行交流,最基本的方式就是通过标准输入和标准输出。想象一下,你写好了一个C语言程序,它就像一个内置了很多指令的小工厂。但是,光有指令有什么用呢?如果工厂不能接收原材料,也不能把产品运出去,那它就是一个封闭.............
  • 回答
    iOS 14.5 语音大变身:不只是换个声优那么简单苹果在 iOS 14.5 里悄悄做了一件挺大事儿,那就是把 Siri 的默认语音从“女性”变成了“性别中立”选项,并提供了更多声音选择。这看似一个小小的改动,背后却牵扯到很多关于性别刻板印象、技术发展和用户体验的探讨。告别“默认女性”:一次关于刻板.............
  • 回答
    说起柯南和灰原哀之间的感情啊,这确实是很多观众津津乐道、又有点难以捉摸的点了。你语言不好没关系,咱们一点点捋,我尽量把我说得清楚点,就像咱们平时唠嗑一样,把里头的味儿给说透了。你想想看,他们俩一开始可不是什么好朋友,甚至可以说,灰原哀(也就是雪莉)最初是带着一种警惕和敌意来的。她亲眼看过自己同事被组.............
  • 回答
    嘿,哥们儿!看到你纠结是考研转金融还是计算机,我特别能理解!211化学本科,大四了,这时间节点确实有点关键。我仔细想了想,给你掰扯掰扯这俩方向,希望能给你点启发。咱们先说说转金融这事儿。你提到的是“零基础”,这我得跟你说实话,确实是个不小的挑战。金融这行吧,跟咱们化学那套推理逻辑、实验验证不太一样。.............
  • 回答
    点一份全熟的牛排是否会被嘲笑,这确实是一个很有趣且常被讨论的话题,尤其是在对牛排烹饪有着较高追求的圈子里。答案是:有一定可能,但程度和原因会因人而异,并且并非绝对。要详细地讲清楚这一点,我们需要从几个方面来分析:1. 牛排文化的背景与误解: 牛排的“灵魂”在于其天然风味和多汁口感: 在许多牛排爱.............
  • 回答
    点集拓扑的定义,确实源于对“靠近”这个直观概念的严谨数学刻画,并且与几何有着深厚的联系。我们不妨从头开始,一点点地剥开它层层叠叠的意义。为什么需要“拓扑”?几何的局限性在点集拓扑出现之前,我们对“形状”和“空间”的理解,很大程度上依赖于欧几里得几何。在欧几里得空间(比如我们熟悉的二维平面 $math.............
  • 回答
    《点星》这首钢琴曲,到底难不难?“点星”,这首钢琴曲,名字就带着一种轻盈、闪耀的意境。每每听到这舒缓又灵动的旋律,总有人忍不住想要跃跃欲试,亲手在琴键上“点亮”这些星辰。但问题来了,《点星》这首曲子,究竟难不难?这就像是问,看星星是不是一件容易的事。答案嘛,既是,也不是。要回答这个问题,我们得先把“.............
  • 回答
    要说点外卖用美团还是饿了么哪个好,这可真是个“世纪难题”,就像问吃火锅先放毛肚还是先放金针菇一样,各有各的道理,也各有各的拥趸。我这人吧,吃喝玩乐都离不开这两个平台,也算是“身经百战”了。今天就跟大家掰扯掰扯,到底哪个更适合你。首先,咱们得明白,它们俩其实是“双子星”,很多功能都差不多,但又各自有自.............
  • 回答
    坦白说,我一直是个“杂食性”的外卖用户,但最近一段时间,我的外卖APP列表里,饿了么的图标出现的频率越来越低,取而代之的是美团。说起来,也不是一天两天的“抛弃”,更像是一种渐进式的转移。最初,我用哪个APP真的没什么特别的偏好,谁家店多,谁家有优惠,我用谁。但最近几个月,我发现自己越来越倾向于打开美.............
  • 回答
    嘿,说到点外卖,这俩巨头——美团和饿了么,我其实都用,不过各有侧重吧,得看当时具体情况。就拿我这经常下班回家都累趴下的状态来说,晚上十点多,只想瘫在沙发上,这时候,点外卖就是唯一的救赎。通常我会先打开美团。为啥呢?因为在我这里,美团的配送员好像更“勤快”一点,尤其是晚上。有时候一些平时生意不错的店,.............
  • 回答
    点外卖这事儿,我算是咱家楼里出了名的“常客”了。不是说我懒得做饭(虽然有时候也确实是这样),而是这中间能遇到的奇奇怪怪、又哭又笑的事儿,实在太多了,跟追剧似的,每回都有新剧情。说起来,最让我记忆犹新的一回,是前阵子为了赶一个项目,连着几天都在公司熬夜。那晚实在太累了,脑子已经跟浆糊一样,就想着赶紧点.............
  • 回答
    点一份“纯粹”的煎饼果子,真的会有人笑话吗?这事儿说起来还真挺有意思的,因为在中国北方,尤其是在煎饼果子发源地那一带,这几乎成了一种“仪式感”的缺失,或者说是一种“对传统的不敬”。当然,不是说真的会有人把你按在地上嘲笑,但那种微妙的眼神,那种欲言又止的表情,那种轻描淡写的一句“啊?什么都不加?”已经.............
  • 回答
    这确实是个挺有意思的想法,把日常生活中那些微小的震动给利用起来,听起来就像科幻电影里的情节。 说到手机震动产生动能,然后又转变成电能,这其实涉及到一种叫做“压电效应”或者“动能回收”的原理。咱们先说说手机震动时是怎么回事。当你的手机发出震动时,里面有一个小小的马达,这个马达会带动一个不平衡的重物旋.............
  • 回答
    .......
  • 回答
    .......
  • 回答
    .......
  • 回答
    .......

本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度google,bing,sogou

© 2025 tinynews.org All Rights Reserved. 百科问答小站 版权所有