• 自动机理论中,嵌套堆栈自动机是可以利用持有作为附加栈的数据的栈的有限自动机嵌套堆栈自动机除了压入和弹出外还可以读它的栈。嵌套堆栈自动机有能力识别附标语言。 自动机 Aho, Alfred. Nested stack automata. Journal of the ACM. 1969, 16...
    1 KB (104 words) - 06:46, 10 February 2021
  • 附标语言是 Alfred Aho 发现的一类形式语言 ;它们用附标文法描述并由嵌套堆栈自动机识别 。 附标语言是上下文有关语言的真子集和适度上下文有关语言和上下文无关语言的真子集;它们在并集、串接(concatenation)和Kleene星号下闭合,但在交集和补集下不闭合。Gerald Gazdar...
    4 KB (368 words) - 12:17, 30 March 2022
  • 自动机编程(英語:Automata-based programming)是編程範式中的一種,是指程式或其中的部份是以有限狀態(FSM)為模型的程式,有些程式則會用其他型式(也更複雜)的動機為其模型。 有限狀態編程(英語:FSM-based programming)大致上等同於自动机...
    19 KB (2,697 words) - 04:32, 6 July 2025
  • 变量;另一方面,许多类ALGOL语言允许任意多层的嵌套函数,各自拥有私有变量、函数、常量和类型。 大多数程序设计语言中,局部变量是直接存储在调用堆栈上的自动变量。即递归函数调用自己时,局部变量的每一份实例都在不同的地址空间中。于是在当前作用域对变量的声明、写入、读取都不会在其被声明的函数外产生副作用。...
    2 KB (311 words) - 07:24, 5 July 2025
  • 级功能通过辅助库来提供,它们很大程度上构成预处理器宏,用以帮助做复杂的表格操作。 Lua C API是基于堆栈的。Lua提供压入和弹出最简单C数据类型(整数、浮点数等)进入和离开堆栈的函数,还有通过堆栈操作表格的函数。Lua堆栈稍微不同于传统堆栈,例如堆栈可以直接的被索引。负数索引指示从栈顶开始往...
    49 KB (5,527 words) - 22:33, 13 May 2025
  • 中的每个模块都对应nn.模块。 神经网络本身是由其他模块(层)组成的模块。这种嵌套结构允许使用者轻松构建并管理复杂的架构。神经网络中的许多层都是参数化的,即具有相关的权重以及在训练期间优化的偏差。自动子类化跟踪模型对象中定义的所有字段,并生成所有参数可使用模型或方法访问。 import torch...
    15 KB (1,550 words) - 03:16, 8 June 2025
  • 面向堆栈(stack-oriented)编程,或基于堆栈编程,是依赖于堆栈机器模型来操纵数据和传递参数的编程范型。一些编程语言适合这种描述,著名的有Forth、RPL(英语:RPL (programming language))、 PostScript、BibTeX样式设计语言和很多汇编语言。...
    11 KB (1,501 words) - 03:13, 6 May 2025
  • weekend project」,但一些專家認為這用在專業情境下會有風險,在這些情境下,對程式碼的深入理解,對於軟體调试、維護以及计算安全都非常的重要。《Ars Technica》引用Simon Willison所述的「用Vibe coding進行量產codebase的開發,很明顯...
    11 KB (1,141 words) - 04:13, 18 July 2025
  • 直到2003年,很多最流行的编程语言,包括C语言和它的后继者,都未在语言内或其标准库中直接支持协程。这在很大程度上是受基于堆栈的子例程实现的限制。C++的Boost.Context库是个例外,它是Boost C++库的一部分,它在POSIX、Mac OS...
    41 KB (4,748 words) - 00:57, 10 July 2025
  • 嵌套函数与高阶函数作为参数,但不允许函数作为返回值(除了Algol 68)。因为当时还不清楚如何处理内函数作为返回值时的非局部变量问题(Algol 68对此会产生运行期错误)。 C族系允许函数作为参数与函数作为返回值,但由于不支持嵌套函数而避开了相关问题。因为返回嵌套...
    21 KB (2,021 words) - 13:22, 10 February 2024
  • 巨集 (redirect from 宏 (计算科学))
    巨集(英語:Macro),是一種批量處理的稱謂。 计算科学裡的宏是一种抽象(Abstraction),它根据一系列预定义的规则替换一定的文本模式。解释器或编译器在遇到宏时会自动进行这一模式替换。对于编译语言,宏展开在编译时发生,进行宏展开的工具常被称为宏展开器。宏这一术语也常常被用于许多类似的环境...
    6 KB (1,015 words) - 18:08, 3 July 2025
  • 子类型(也叫做子类型多态或包含多态):一个名字指称很多不同的类的实例,这些类有某个共同的超类。 在1967年,英国计算科学家克里斯托弗·斯特雷奇在他的讲义合集《编程语言中的基础概念(英语:Fundamental Concepts in Programming...
    11 KB (1,566 words) - 11:30, 4 July 2025
  • ,但是即使名字选取存在重复,也难以在不经意间介入一个缺陷。在基于S-表达式的语言中,经常见到大量的嵌套圆括号,故而其代码必须采用良好的缩进。 在一些语言中,变量可以声明为有函数作用域即使它位于函数的内块之中。例如在JavaScript中,变量应当总是在使用之前被声明,它曾经允许赋值到未声明变量,会...
    21 KB (2,868 words) - 01:21, 12 May 2025
  • 成了所有面向对象的基类(object)。 OOP理论,及与之同名的OOP实践相结合创造出了新的一个编程架构;OOP思想被广泛认为是非常有用的,以致一新的编程范型被创造了出来。(其它的编程范型例如函数式编程或过程式编程专注于程序运行的过程,而逻辑编程专注于引发程序代码执行的断言)。对面向模拟系统的语言(如:SIMULA...
    27 KB (3,763 words) - 00:39, 21 February 2025
  • 在计算学中,反射式编程(英語:reflective programming)或反射(英語:reflection),是指计算程序在运行时(runtime)可以访问、检测和修改它本身状态或行为的一种能力。用比喻来说,反射就是程序在运行的时候能够“观察”并且修改自己的行为。 要注意术语“反射”和“内省”(type...
    10 KB (1,253 words) - 05:20, 3 July 2025
  • 宣告式編程(英語:Declarative programming)或译为声明式编程,是對與指令式編程不同的編程範型的一種合稱。它们建造计算程序的结构和元素,表达计算的逻辑而不用描述它的控制流程。 常見的宣告式語言包括:資料庫查詢語言如SQL的查询子集和XQuery(英语:XQuery),正则表达...
    7 KB (756 words) - 15:14, 3 July 2025
  • 元编程 (category 2018年12月扩充中的条目)
    元編程(英語:Metaprogramming),又譯超編程,是指某类计算程序的编写,这类计算程序编写或者操纵其它程序(或者自身)作为它们的資料,或者在编译时完成部分本应在运行时完成的工作。多数情况下,与手工编写全部代码相比,程序员可以获得更高的工作效率,或者给与程序更大的灵活度去处理新的情形而无需重新编译。...
    6 KB (849 words) - 07:23, 11 February 2025
  • 在计算科学中,实化(英語:reification)是把抽象的想法(idea)转化为明确的数据模型或程序设计语言创建的其他对象的过程。通过实化,以前是隐式的、未表示的、可能是不可表示的被显式形成可概念(逻辑或计算)操作的。非正式地,实化也常被称作在特定系统范围内把某些东西变为“头等公民”即物件化。...
    5 KB (673 words) - 13:45, 10 February 2024
  • 生成器(Generator),是计算科学中特殊的子程序。实际上,所有生成器都是迭代器。生成器非常类似于返回数组的函数,都是具有参数、可被调用、产生一系列的值。但是生成器不是构造出数组包含所有的值并一次性返回,而是每次产生一个值,因此生成器看起来像函数,但行为像迭代器。...
    15 KB (1,901 words) - 08:01, 24 March 2025
  • 在计算科学中,元对象(metaobject)是操纵、创建、描述或实现对象(包括自身)的对象。适用于元对象的对象叫做基础对象。元对象可以定义的一些信息包括:基础对象的类型、接口、类、方法、特性、解析树等。元对象是计算科学反射概念的例子,这里的系统(通常在运行时间)能访问它自己的内部结构。反射在根本...
    12 KB (1,369 words) - 01:15, 23 July 2025
  • 结构化编程 (category 2015年6月需补充来源的条目)
    結構化程式設計(英語:Structured programming),一種編程典範。它採用子程序、块结构、for迴圈以及while迴圈等結構,來取代傳統的 goto。希望藉此來改善计算程序的明晰性、品質以及開發時間,並且避免寫出麵條式代碼。 結構化程式設計在1960年代開始發展,科拉多·伯姆(英语:Corrado Böhm)及朱塞佩·賈可皮尼(Giuseppe...
    9 KB (1,412 words) - 13:24, 5 July 2025
  • 在计算和计算编程领域中,例外處理(exception handling,也意译为异常处理,需注意“异常”一般对应英文abnormality),是对出现的例外的响应处理,在程序执行(英语:Execution (computing))期间,异常或例外情况需要特殊处理。一般而言,例外打断正常的执行流程...
    34 KB (3,903 words) - 12:43, 4 July 2025
  • 面向切面的程序设计 (category 2018年5月带有失效链接的条目)
    面向方面编程(Aspect-oriented programming,AOP,又译作面向方面程序设计、面向切面程序设计、剖面导向程序设计),是计算科学中的一种编程范型,旨在将交叉切入关注与作为业务主体的核心关注进行分离,以提高程序代码的模块化程度。“方面”(aspect)通过规定叫做“点切入”(...
    34 KB (3,362 words) - 02:50, 24 July 2025
  • 格拉斯哥Haskell编译器,拥有一个扩展叫作“并行列表推导式”(也叫做拉链推导式),它允许在列表推导式语法中,有多个独立分支的限定符<-。用逗号,分隔的限定符,是依赖的(“嵌套的”);而用管道符号|分隔的限定符,是并行求值的(这不涉及任何形式的多线程性,这只意味着这些分支是被拉链(英语:Convolution (computer...
    15 KB (1,823 words) - 21:45, 15 September 2024
  • 依赖类型 (category 计算逻辑)
    在计算科学和逻辑中,依赖类型(或依值类型,dependent type)是指依赖于值的类型,其理论同时包含了数学基础中的类型论和计算编程中用以减少程序错误的类型系统两方面。在 Per Martin-Löf 的直觉类型论中,依赖类型可对应于谓词逻辑中的全称量词和存在量词;在依赖类型函数式编程语言如ATS(英语:ATS...
    14 KB (1,540 words) - 15:06, 24 February 2024
  • 在计算科学中,模式匹配是检查给定记号序列中,是否存在某种模式的组成部分的行为。与模式识别相反,匹配通常必须是精确的。模式通常具有序列或树状结构的形式。模式匹配的用途包括:输出一个模式在一个记号序列中的位置(如果有的话),输出匹配模式的一些组成部份,以及用一些其他的记号序列替换匹配模式(即搜索和替换)。...
    19 KB (2,181 words) - 00:30, 9 July 2025
  • 模板元編程 (category 计算编程)
    模板超編程的語法通常與一般的程式語法迥異,他有其實際的用途。一些使用模板超編程的共同理由是為了實現泛型編程(generic programming)或是展現自動編譯期最佳化,像是只要在編譯期做某些事一次就好,而無需每次程式執行時去做。 以下將展示究竟何謂"編譯期程式設計"。階乘是一個不錯的例子,在此之前我們...
    11 KB (1,564 words) - 06:26, 4 July 2025
  • 元类 (category 类 (计算科学))
    继承层级中的子类,它是所有元类的抽象超类,它描述这些类的一般性质,继而最终可上溯至Object。 四个类提供描述新类的设施,下面是它们的继承层级(起Object),和它们提供的主要设施: Object,对象类是所有类的基础类,它为所有对象提供公共的方法,即公共的缺省行为。至少包括了:测试对象的功...
    30 KB (3,728 words) - 07:00, 23 July 2025
  • 遞迴式方法可以被用於解決很多的電腦科學問題,因此它是電腦科學中十分重要的一個概念。 絕大多數程式語言支援函式的呼叫,在這些語言中函式可以通過呼叫自身來進行遞迴。計算理論可以證明遞迴的作用可以完全取代迴圈,因此有很多在函數程式語言(如Scheme)中用递归来取代循环的例子。...
    7 KB (850 words) - 13:17, 10 February 2024
  • 运算符重载 (category 计算编程)
    在计算程序设计中,运算符重载(英語:operator overloading)是多态的一种。这里,运算符(比如+,=或==)被当作多态函数,它们的行为随着其参数类型的不同而不同。运算符并不一定总是符号。 运算符重载通常只是一种语法糖。它可以简单地通过函数调用来模拟: a + b * c...
    16 KB (976 words) - 07:36, 6 December 2024
  • 在计算科学中,闭包(英語:Closure),又稱词法闭包(Lexical Closure)或函數閉包(function closures),是在支持头等函数的编程语言中实现词法绑定的一种技术。闭包在实现上是一个结构体,它存储了一个函数(通常是其入口地址)和一个关联的环境(相当于一个符号查找表)。...
    16 KB (2,371 words) - 02:31, 11 February 2024