为什么语言惧怕方言

几乎所有的流行的语言都有方言,或者有不同的解释。

尤其是 Java 平台上,几乎所有主流的动态语言都有实现。但这些实现永远无法被广泛使用。

因为几乎所有的语法都是内置到实现当中的。再接近的实现,都有细微的差别。

只有当语言的语法成为一种独立的可配置的语言时,语言的实现才可能完全相同,就好象数据结构的对比一样,语法文件一致,语言的表现也应当相同。

Perl 6 让这个想法成为现实。

Perl 6 本身就是由一个语法文件定义的。就好象一个 XML 配置文件。修改一个参数,整个语法就变化了。

如果 Python 有一个独立的语法描述文件,所有的实现都依据这个语法文件去实现,那么不同的实现就可以进行对比了。哪些实现不完善,哪些实现有问题。这样就保证了
语言的跨实现属性。

时间: 2024-11-05 22:06:58

为什么语言惧怕方言的相关文章

读取.properties配置文件(转载)

读取.properties 文件 配置文件的一种,内容以键值对的形式存在,且每个键值对独占一行.#号作为行注释的起始标志,中文注释会自动进行unicode编码.示例: # ip and port of server socket ip=127.0.0.1 port=9999 # error message msg=I'm sorry, bye bye! 通过properties对象操作 public class Demo{ public static void main(String[] arg

前端学HTTP之字符集

前面的话 HTTP报文中可以承载以任何语言表示的内容,就像它能承载图像.影片或任何类型的媒体那样.对HTTP来说,实体主体只是二进制信息的容器而已.为了支持国际性内容,服务器需要告知客户端每个文档的字母表和语言,这样客户端才能正确地把文档中的信息解包为字符并把内容呈现给用户,而要实现这个功能,需要用到接下来要详细介绍的字符集 首部概述 服务器通过HTTP协议的Content-Type首部中的charset参数和Content-Language首部告知客户端文档的字母表和语言.这些首部描述了实体主

NSScanner知悉 (转)

http://blog.csdn.net/likendsl/article/details/7974761 NSScanner是一个类,用于在字符串中扫描指定的字符,尤其是把它们翻译/转换为数字和别的字符串.可以在创建NSScaner时指定它的string属性,然后scanner会按照你的要求从头到尾地扫描这个字符串的每个字符. 创建一个Scanner NSScanner是一个类族, NSScanner是其中公开的一类.通常,可以用scannerWithString:或localizedScan

Java 20年:转角遇到Go

1995年,横空出世的Java语言以其颠覆式的特性迅速获得了开发者的关注.跨平台.垃圾回收.面向对象,这在当时都是不可思议的事情,而Java却完美地在一门语言中实现了这一特性.可以说,Java将编程语言设计带领到一个新的高度.20年后的今天,当年的那些新特性已经不再是什么新鲜词.同时,又会有一些新的语言宣称自己有一些颠覆性的特性,其中Go语言就是新语言的一个代表,它部署简单.并发性好,在语言设计上确实优于Java.为了了解Java和Go语言的发展现状与趋势,InfoQ采访了Go语言大牛郝林. I

在HDInsight中的Hadoop介绍

在HDInsight中的Hadoop介绍 概览 Azure的HDInsight是,部署和规定的Apache?Hadoop?集群在云中,提供用于管理,分析和大数据报告软件框架中的服务. 大数据 数据被描写叙述为"大数据",以表明它被收集在以往升级卷,以越来越高的速度,并为一个扩大各种非结构化格式和可变语义语境.大数据的收集并不正确企业自身提供的价值. 对于大数据在可操作智能或洞察力的形式提供价值.不仅要正确的问题问及相关的问题,数据收集,数据必须能够訪问.清洗.分析,然后在一个实用的方式

CentOS 7.x 安装教程、硬盘分区、LVM、网络配置、软件源配置、制作USB Disk、U盘安装、网络安装

目录 一.准备安装CentOS 7 1.1CentOS简介 1.1.1介绍CentOS 7 1.1.2官方网站与文档 1.1.3CentOS软件包管理 1.1.4CentOS的正式发音 1.2获得CentOS发行版 1.2.1从镜像站点上下载ISO的镜像文件 1.2.2将ISO镜像文件制作成CD/DVD 1.2.3将ISO镜像文件制作成USB Live 1.3收集硬件信息 1.4硬盘分区方案 1.4.120GB硬盘以及1GB RAM 1.4.280GB硬盘以及1GB RAM 二.安装CentOS

JAVA魔法堂:读取.properties配置文件

一.前言 Java工程中想log4j.数据库连接等配置信息一般都写在.properties文件中,那么如何读取这些配置信息呢?下面把相关方法记录下来供以后查阅. 二..properties文件 配置文件的一种,内容以键值对的形式存在,且每个键值对独占一行.#号作为行注释的起始标志,中文注释会自动进行unicode编码.示例: # ip and port of server socket ip=127.0.0.1 port=9999 # error message msg=I'm sorry, b

RPG游戏设计(转自Gameres)

目录: 第一章 概述 第二章 场景 第三章 角色 第四章 道具 第五章 事件 第六章 对白 第七章 语音和音效 第八章 音乐 第九章 界面 第十章 规则 第十一章 命名 第一章:概述 RPG游戏即角色扮演游戏(Role Personate Game),玩家需要扮演游戏中的一位或者多位角色,在虚拟的世界中进行冒险.首先,让我们先来认识RPG游戏,从表现形式和玩法上,它可以分为以下几种: RPG:普通RPG游戏,有专门的战斗画面.战斗画面用不同的视角来表现: 采用斜45度视角,如台湾<仙剑奇侠传>

本地化和国际化测试

如果你是一个有竞争力的软件测试员,并且熟练掌握除英语之外的一门外语,你就有了很有价值的技能. 1.使文字和图片有意义 软件的国际化 除了语言,还需要考虑地域(region或locale)——用户的国家和地理位置. 使软件适应特定地域特征,照顾到语言.方言.地区习俗和文化的过程称为本地化(localization)或国际化(internationalization).测试此类软件称为本地化测试. 2.翻译问题 尽管翻译只是整个本地化工作的一部分,但是从测试角度看这是重要的一环,最明显的问题是如何测