徽标
联盟百科
通讯
下载应用,请到 Google Play
新! 在您的Android™设备上下载联盟百科!
下载
比浏览器更快的访问!
 

S-表达式

指数 S-表达式

所谓“S-表达式/運算式”(S-expression)或“sexp”(其中“S”代表“符号的”),是指一种以人类可读的文本形式表达半结构化数据的约定。S-表达式可能以其在Lisp家族的编程语言中的使用而为人所知。其他应用则见于由Lisp衍生的语言,如,以及如IMAP之类通信协议中作为标记出现和约翰·麦卡锡的。语法细节和所支持的数据类型虽因语言而异,但这些语言间最通用的特性则是使用S-表达式作为括号化的前缀表示法(有时亦作剑桥波兰表示法)。.

17 关系: 十六进制字节列表構造函數Base64Common Lisp约翰·麦卡锡罗纳德·李维斯特C標準函式庫表示式语法糖自由软件Internet Message Access ProtocolLISPRFCSchemeXML波兰表示法

十六进制

十六进制(简写为hex或下標16)在数学中是一种逢16进1的进位制。一般用数字0到9和字母A到F(或a~f)表示,其中:A~F表示10~15,这些称作十六进制数字。 例如十进制數57,在二进制寫作111001,在16进制寫作39。 在历史上,中国曾经在重量单位上使用过16进制,比如,规定16两为一斤。 现在的16进制则普遍应用在计算机领域,这是因為將4個位元(Bit)化成單獨的16进制數字不太困難。1字節可以表示成2個連續的16进制數字。可是,這種混合表示法容易令人混淆,因此需要一些字首、字尾或下標來顯示。.

新!!: S-表达式和十六进制 · 查看更多 »

字节

,通常用作计算机信息计量单位,不分数据类型。 一個字节代表八個。是程序设计语言不可缺少的基本数据类型——整數。 字节是现代计算机中连续的、固定数量的比特(二進制),即八個位元為一字节。 八个二进位经常在规范中被称为Octet(八位组),例如在一些工业标准、网络及电信技术裡。 Byte(字节)可缩写成B,例如MB表示Megabyte;Bit(位元)可缩写成b(小写),例如Mb表示。.

新!!: S-表达式和字节 · 查看更多 »

列表構造函數

列表構造函數是用來構造列表的基本函數,在大多數 LISP 體系的計算機編程語言中,使用的函數名稱是cons。 cons構成了存放兩個變量與其指針的記憶體物件,這個物件被稱為(cons)單元、非原子的 S 表達式或(cons 對)。LISP 編程中表達要把 x 加入 y 的語法:(cons x y),構造了一個新物件。產生的結果具備了左半部,稱為car(第一元素或暫存器位址的內容);以及右半部稱為cdr(其餘元素或遞減暫存器的內容)。 以上約略地和物件導向的構造器概念相關,即產生一個給定參數的新物件,而其與代數數據類型系統的構造函數,有更密切相關。“cons”和諸如“cons onto”的詞句,也是函數編程的通用術語。有時運算子有類似作用,特別是在列表處理的情況下,被讀作“CONS”。(例如 ML,Scala,F#和 Elm 編程的::運算符,或 Haskell 編程的:運算符,都是向列表的開頭添加一個元素。).

新!!: S-表达式和列表構造函數 · 查看更多 »

Base64

Base64是一种基于64个可打印字符来表示二进制数据的表示方法。由于2 ^ 6.

新!!: S-表达式和Base64 · 查看更多 »

Common Lisp

Common Lisp,縮寫為CL(不是組合邏輯的縮寫)是Lisp編程語言的一種方言,由ANSI INCITS 226-1994(R2004)(前身為ANSI X3.226-1994(R1999)),所定義的語言規範標準。Common Lisp HyperSpec是源自於ANSI Common Lisp標準的網頁超連結版本。 CL語言是為標準化和改良Maclisp而開發的後繼者。到20世紀80年代初,幾個工作群組已經在設計MacLisp各種後繼者,例如:Lisp Machine Lisp(又名 ZetaLisp),Spice Lisp,NIL和S-1 Lisp。CL是為了標準化和擴展此前眾多的MacLisp分支而開發,它本身並非具體的實作,而是對語言設立標準的規範。有數個實作符合Common Lisp規範,其中包括自由和開源軟件,以及商業化產品。CL支援了結構化、函數式和物件導向編程等範式。相对于各种嵌入在特定产品中的语言,如Emacs Lisp和AutoLISP,Common Lisp是一種用途廣泛的编程语言。不同於很多早期Lisp,Common Lisp如同Scheme,其中的變量是預設為詞法作用域的。 身為一種動態編程語言,它有助於進化和增量的軟件開發,並將其迭代編譯成高效的執行程序。這種增量開發通常是互動持續地改善,而不需中斷執行中的應用程序。它還支援在後期的分析和優化階段添加可選的型別註記與轉型,使編譯器產生更有效率的代碼。例如在硬體和實作的支援範圍內,fixnum能保存一個未封裝整數,允許比大整數或任意精度類型更高效率的運算。同樣地,在每個模組或函數的基礎上可聲明優化,指示編譯器要編譯成哪一類型的安全級別。 CL包含了支援多分派和方法組合的物件系統,縮寫為CLOS,它通常以元物件(Metaobject)協定來實現。 CL藉由標準功能進行擴展,例如Lisp宏(编译时期程序自身完成的代码重排(compile-time code rearrangement accomplished by the program itself))和阅读器宏(赋予用户自定义的語法以扩展具特殊意义的符号(extension of syntax to give special meaning to characters reserved for users for this purpose))。 CL為Maclisp和约翰·麦卡锡的原創Lisp提供了一些向後兼容性。這允許較舊的Lisp軟件移植到Common Lisp之上。.

新!!: S-表达式和Common Lisp · 查看更多 »

约翰·麦卡锡

约翰·麦卡锡(John McCarthy,),生于美国马萨诸塞州波士顿,计算机科学家。他因在人工智能领域的贡献而在1971年获得图灵奖。实际上,正是他在1956年的达特矛斯会议上提出了“人工智能”这个概念。.

新!!: S-表达式和约翰·麦卡锡 · 查看更多 »

罗纳德·李维斯特

罗纳德·林納·李维斯特 (Ronald Linn Rivest,)是一名美国密码学家。他是麻省理工学院电子工程和计算机科学部门 (EECS)计算机科学的一名教授 和麻省理工学院之 (CSAIL)的成员。他与阿迪·萨莫尔和伦纳德·阿德曼共同发明了RSA加密演算法;以及在密码学和计算机科学等领域做出许多杰出贡献而知名。RSA被广泛使用在计算机安全应用上,包括https。2002年,他与阿迪·萨莫尔和伦纳德·阿德曼一起因在公钥密码学RSA加密演算法取得的杰出贡献而获得图灵奖。.

新!!: S-表达式和罗纳德·李维斯特 · 查看更多 »

C標準函式庫

C 標準函式庫(C standard library,缩写:libc)是在C語言程式設計中,所有符合標準的头文件(head file)的集合,以及常用的函式庫實作程序(如 I/O 輸入輸出和字串控制)。不像 COBOL、Fortran 和 PL/I等程式語言,在 C 語言的工作任務裡不會包含嵌入的關鍵字,所以幾乎所有的 C 語言程式都是由標準函式庫的函式來建立的。.

新!!: S-表达式和C標準函式庫 · 查看更多 »

表示式

表示式亦称表達式、運算式或數學表達式,在數學領域中是一些符號依據上下文的規則,有限而定義良好的組合。數學符號可用於標定數字(常量)、變量、操作、函數、括號、標點符號和分組,幫助確定操作順序以及有其它考量的邏輯語法。.

新!!: S-表达式和表示式 · 查看更多 »

语法糖

语法糖(Syntactic sugar),也译为糖衣语法,是由英国计算机科学家彼得·蘭丁发明的一个术语,指计算机语言中添加的某种语法,这种语法对语言的功能没有影响,但是更方便程序员使用。语法糖让程序更加简洁,有更高的可读性。 举例来说,许多程序语言提供专门的语法来对数组中的元素进行引用和更新。从理论上来讲,一个数组元素的引用涉及到两个参数:数组和下标向量,比如这样的表达式,get_array(Array, vector(i, j))。然而,许多语言支持这样直接引用 Array。同理,数组元素的更新涉及到三个参数,set_array(Array, vector(i, j), value),但是很多语言提供这样直接赋值,Array.

新!!: S-表达式和语法糖 · 查看更多 »

自由软件

自由軟體(free software),根據自由軟體基金會对其的定義,是一类可以不受限制地自由使用、複製、研究、修改和分發的,尊重使用者自由的軟體。這方面的不受限制正是自由軟體最重要的本質,與自由軟體相對的是专有软件(proprietary software),或被稱為私有軟體、封閉軟體(其定義與是否收取費用無關──自由軟體不一定是免費軟體)。自由軟體受到選定的「自由軟體授權協議」保護而發佈(或是放置在公有領域),其發布以原始碼為主,二進制檔案可有可無。自由軟體許可證的類型主要有GPL许可证和BSD许可证兩種。.

新!!: S-表达式和自由软件 · 查看更多 »

Internet Message Access Protocol

#重定向 因特网信息访问协议.

新!!: S-表达式和Internet Message Access Protocol · 查看更多 »

LISP

LISP是具有悠久歷史的計算機編程語言家族,有獨特和完全括號的前綴符號表示法。起源於西元1958年,是現今第二悠久而仍廣泛使用的高階編程語言。只有FORTRAN編程語言比它更早一年。LISP編程語族已經演變出許多種方言。現代最著名的通用編程語種是Common Lisp和Scheme。 LISP最初創建時受到阿隆佐·邱奇的lambda演算的影響,用來作為計算機程序實用的數學表達。因為是早期的高階編程語言之一,它很快成為人工智能研究中最受歡迎的編程語言。在計算機科學領域,LISP開創了許多先驅概念,包括:.

新!!: S-表达式和LISP · 查看更多 »

RFC

徵求意見稿(Request For Comments,縮寫為RFC),是由互联网工程任务组(IETF)发布的一系列備忘錄。文件收集了有關網際網路相關資訊,以及UNIX和網際網路社群的軟體文件,以編號排定。目前RFC文件是由網際網路協會(ISOC)贊助發行。 RFC始于1969年,由當時就讀加州大学洛杉矶分校(UCLA)的斯蒂芬·克罗克(Stephen D. Crocker)用来记录有关ARPANET开发的非正式文档,他是第一份RFC文档的撰寫者。最终演变为用来记录互联网规范、协议、过程等的标准文件。基本的網際網路通訊協定都有在RFC文件內詳細說明。RFC文件還額外加入許多的論題在標準內,例如對於網際網路新開發的協定及發展中所有的記錄。.

新!!: S-表达式和RFC · 查看更多 »

Scheme

Scheme是一种函数式编程语言,是Lisp的两种主要方言之一(另一种为Common Lisp)。不同于Common Lisp,Scheme遵循極簡主義哲学,以一个小型语言核心作为标准,加上各种强力语言工具(语法糖)来扩展语言本身。 麻省理工學院與其他院校曾采用Scheme教授计算机科学入門課程。著名的入門教材《-zh-hans:计算机程序的构造和解释;zh-hant:電腦程式的構造和解釋-》(SICP)利用Scheme來解釋程序設計 。Scheme的廣泛受眾被視為一個主要優勢,然而不同實現之間的差異成為了它的一個劣勢。 Scheme最早由麻省理工學院的蓋伊·史提爾二世與傑拉德·傑伊·薩斯曼在1970年代發展出來,並由兩人發表的「λ論文集」推廣開來。 Scheme語言與λ演算關係十分密切。小寫字母「λ」是Scheme語言的標誌。 Scheme的哲学是:设计计算机语言不应该进行功能的堆砌,而应该尽可能减少弱点和限制,使剩下的功能显得必要。Scheme是第一個使用靜態作用域的Lisp方言,也是第一个引入“干净宏”和第一类续延的编程语言。.

新!!: S-表达式和Scheme · 查看更多 »

XML

可扩展标记语言(Extensible Markup Language,简称:XML),是一种标记语言。标记指计算机所能理解的信息符号,通过此种标记,计算机之间可以处理包含各种信息的文章等。如何定义这些标记,既可以选择国际通用的标记语言,比如HTML,也可以使用像XML这样由相关人士自由决定的标记语言,这就是语言的可扩展性。XML是从标准通用标记语言(SGML)中简化修改出来的。它主要用到的有可扩展标记语言、可扩展样式语言(XSL)、XBRL和XPath等。.

新!!: S-表达式和XML · 查看更多 »

波兰表示法

波兰表示法(Polish notation,或波兰记法),是一种逻辑、算术和代数表示方法,其特点是操作符置于操作数的前面,因此也称做前缀表示法。如果操作符的元数(arity)是固定的,则语法上不需要括号仍然能被无歧义地解析。波兰记法是波兰数学家扬·武卡谢维奇1920年代引入的,用于简化命题逻辑。 扬·武卡谢维奇本人提到: 阿隆佐·邱奇在他的经典著作《数理逻辑》中提出该表达方法是一种值得被关注的记法系统,甚至将它与阿弗烈·諾夫·懷海德和伯特兰·罗素在《数学原理》中的逻辑表达式相提并论。.

新!!: S-表达式和波兰表示法 · 查看更多 »

重定向到这里:

S表示式

传出传入
嘿!我们在Facebook上吧! »