显示标签为“language”的博文。显示所有博文
显示标签为“language”的博文。显示所有博文

2020-01-23

Languages-used-on-the-Internet

Languages-used-on-the-Internet
1. 互联网上使用的语言
  1.1 网站内容语言
  1.2 按语言互联网用户
  1.3 维基百科文章统计
2. 综合以上表格数据出图表(2019数据)
  2.1 前10种语言的网页内容数量
  2.2 前10大语言的维基百科文章数量

1. 互联网上使用的语言

https://en.wikipedia.org/wiki/Languages_used_on_the_Internet
万维网上访问最多的网站的网页中,略有一半以上是英文的,并提供了许多其他语言的各种信息。
据W3Techs称,其他主要语言是俄语,德语,西班牙语,法语,日语,葡萄牙语,意大利语和波斯语。
在现有的7,000多种语言中,只有几百种被认为是用于万维网上的网页的。

1.1 网站内容语言

截至2019年12月,W3Techs估计使用各种内容语言的万维网上排名前1000万的网站所占的百分比:
https://en.wikipedia.org/wiki/Languages_used_on_the_Internet#Content_languages_for_websites
https://w3techs.com/technologies/history_overview/content_language

1.2 按语言互联网用户

截至2019年4月30日,InternetWorldStats按语言对互联网用户数量的估计:
https://en.wikipedia.org/wiki/Languages_used_on_the_Internet#Internet_users_by_language
https://www.internetworldstats.com/stats7.htm

1.3 维基百科文章统计

https://meta.wikimedia.org/wiki/List_of_Wikipedias

2. 综合以上表格数据出图表(2019数据)

统计前10种语言的互联网用户数量与互联网内容的关系
TOP TEN LANGUAGES IN THE INTERNET Internet Users % of World (Participation) content languages for websites Wiki Articles (万篇) 语言
English 25.20% 56.00% 600 英语
Russian 2.50% 7.30% 159 俄语
Spanish 7.90% 4.70% 157 西班牙语
German 2.10% 4.50% 239 德语
French 3.30% 3.40% 217 法文
Japanese 2.70% 3.10% 119 日本
Portuguese 3.90% 2.60% 102 葡萄牙语
Chinese 19.30% 1.50% 109 中文
Arabic 5.20% 0.70% 103 阿拉伯语
Indonesian 3.90% 0.50% 52 印尼文
(Other) 24.00% 15.70%
(其他)

2.1 前10种语言的网页内容数量

2.2 前10大语言的维基百科文章数量



2020-01-09

Locale


1. Locale 概述
2. Windows 区域设置
3 Linux Locale
 3.1 Linux Locale 语言环境名称格式
 3.2 常用区域描述(简写)日期习惯
 3.3 日期显示格式
 3.4 locale相关(环境)变量生效的优先顺序:
4 Linux Locale 操作(左边查看a,右边设置b)
 4.1a 查看已开启的语言环境
     4.1b 生成语言环境
 4.2a 查看Linux系统编码
     4.2b 设置系统区域设置
 4.3a 列出系统当前使用的字符集
5 更多链接

1. Locale 概述

https://en.wikipedia.org/wiki/Locale_(computer_software)
在计算中,语言环境是一组参数,用于定义用户的语言,区域以及用户希望在其用户界面中看到的任何特殊的变体首选项。
通常,语言环境标识符至少由语言代码和国家/地区代码组成。

https://zh.wikipedia.org/wiki/区域设置
区域设置(locale),也称作“本地化策略集”、“本地环境”,是表达程序用户地区方面的软件设定。
不同系统、平台、与软件有不同的区域设置处理方式和不同的设置范围,但是一般区域设置最少也会包括语言和地区。
操作系统的区域设置通常比较复杂。区域设置的内容包括:数据格式、货币金额格式、小数点符号、千分位符号、度量衡单位、通货符号、日期写法、日历类型、文字排序、姓名格式、地址等等。

https://zh.wikipedia.org/wiki/国际化与本地化
在信息技术领域,国际化与本地化(英文:internationalization and localization)是指修改软件使之能适应目标市场的语言、地区差异以及技术需要。
基于他们的英文单字长度过长,常被分别简称成i18n(18意味着在“internationalization”这个单字中,i和n之间有18个字母)及L10n。使用大写的L以利区分i18n中的i和易于分辨小写l与1。

Localisation Guide  相关资料的汇整...
http://docs.translatehouse.org/projects/localization-guide/en/latest/guide/start.html?id=guide/start#locales

2. Windows 区域设置

Windows 系统的每个区域设置(locale)是一个“语言”及一个排序规则。
  • Windows XP支持超过150个区域设置(locale);
  • Windows Vista支持超过200个区域设置(locale);
  • Windows 7支持至少365个区域设置(locale)。
[控制面板]下找到区域设置...选择适合的区域即可。

3 Linux Locale

https://wiki.archlinux.org/index.php/Locale
区域设置是使用glibc的渲染文本,正确地显示区域货币值,时间和日期格式,字符排列方式和其他一些本地化的特定标准和其他区域设置的程序或库。

3.1 Linux Locale 语言环境名称格式

language[_territory][.codeset][@modifier]
  • language 是ISO 639-1标准中定义的双字母的语言代码,
  • territory 是ISO 3166-1标准中定义的双字母的国家和地区代码,
  • codeset 是字符集的名称 (如 UTF-8等),
  • modifier 是某些 locale 变体的修正符。
参见: setlocale https://jlk.fjfi.cvut.cz/arch/manpages/man/setlocale.3

3.2 常用区域描述(简写)日期习惯

中文-中国大陆 zh-CN Y M D
英语-英国 en-GB D M Y
英语-美国 en-US M D Y

3.3 日期显示格式

$ LC_TIME=en_US.UTF-8 date
Thu 09 Jan 2020 07:52:05 PM CST
$ LC_TIME=en_GB.UTF-8 date
Thu Jan  9 19:52:26 CST 2020

3.4 locale相关(环境)变量生效的优先顺序:

  1. LANGUAGE 指定个人对语言环境值的主次偏好,例如zh_CN:en_US:en
  2. LC_ALL 这不是一个环境变量,是一个可被C语言库函数setlocale设置的宏,其值可覆盖所有其他的locale设定。因此缺省时此值为空
  3. LC_xxx 可设定locale各方面(category)的值,可以覆盖LANG的值。
  4. LANG 指定默认使用的locale值

4 Linux Locale 操作(左边查看a,右边设置b)

查看命令 a 设置命令 b
4.1a 查看已开启的语言环境 4.1b Generating locales 生成语言环境
$ locale 列出当前采用的各项本地策略,这些由LC_*环境变量定义
$ locale -a 列出系统中已经安装的所有locale
$ localedef --list-archive 列出已生成的可用语言环境, 或者

$ localectl list-locales
en_US.UTF-8
zh_CN.UTF-8

查看可开启的所有语言环境
$ cat /etc/locale.gen |wc -l
511 // 除去前面的注释文字,下面可开启的有486个(其中UTF-8的有312个;ISO-8859系的有153个;还有一些国家专用的如GB18030等)。
1.1 修改locale.gen, 取消en_US.UTF-8 UTF-8和其他必要的语言前面的注释符号
$ sudo vi /etc/locale.gen
en_US.UTF-8 UTF-8
zh_CN.GB18030 GB18030
zh_CN.GBK GBK
zh_CN.UTF-8 UTF-8
zh_CN GB2312

编辑完成后 :wq 保存退出.
1.2 生成(generate)语言环境
$ sudo locale-gen
Generating locales...
en_US.UTF-8... done
zh_CN.GB18030... done
zh_CN.GB2312... done
zh_CN.GBK... done
zh_CN.UTF-8... done
Generation complete.


4.2a 查看Linux/Unix操作系统编码: 4.2b 设置系统区域设置
$ echo $LANG
en_US.UTF-8
$ cat /etc/locale.conf
LANG=en_US.UTF-8
$ printenv 查看环境变量

4.3a 列出系统当前使用的字符集
$ locale charmap
UTF-8
查看系统已经安装的所有字符集
$ locale -m |wc -l 236 // 当前系统有236个
编辑: /etc/locale.conf, 写入LANG,比如: LANG=en_US.UTF-8 变量值在先前生成的语言环境中选择。

$ sudo vi /etc/locale.conf
LANG=en_US.UTF-8

或者运行

# localectl set-locale LANG = zh_CN.UTF-8

5 更多链接

https://wiki.archlinux.org/index.php/Localization/Simplified_Chinese_(简体中文)
要正确显示中文,必需设置正确的locale并安装合适的中文字体。

https://docs.oracle.com/cd/E19683-01/816-3981/overview-46/index.html
Documentation Home  > 国际语言环境指南  > 第 1 章 Solaris 国际化概述  > 使用语言环境种类进行本地化  > 日期格式 >
国际语言环境指南 > 日期格式 (下表显示在世界各地使用的一些日期格式。 请注意,即使在一个国家/地区内部,日期格式可能也有所不同)

https://www.ibm.com/support/knowledgecenter/zh/SSEPGG_10.5.0/com.ibm.db2.luw.admin.nls.doc/doc/r0004572.html
主页 > DB2 for Linux UNIX and Windows 10.5.0 > 开发用于访问和管理数据的代码 > 多文化支持 > 应用程序开发注意事项 >
基于地域代码的日期和时间格式

https://zh.wikipedia.org/wiki/各地日期和时间表示法

2019-07-21

Program-Language


1. 主流编程语言
2. 编程语言分类
    2.1 编译or解释
    2.2 按照客观系统的描述可分为两类
    2.3 按照编程范型可分为
3. 语言范式 Paradigm
4. 计算机语言历史
5. 编程语言排名
6. 编程语言影响关系
7. 更多信息:

1. 主流编程语言

Language 2019 Top Languages Influenced Influenced by
Java 1 2015 39 17
C 2 2017 54 10
Python 3 2018 30 9
C++ 4 2003 36 6
Lisp 32
60 1
C# 6
17 8
JavaScript 7 2014 12 7
PHP 8 2004 2 8
SQL 9 2013 7 1
Objective-C 10 2012 11 2
Ruby 12 2006 17 10
Perl 17
19 10
go 18 2016
7
列描述:
  • 2019: 截止2019年7月排名
  • Top: 登录过首位的年份
  • Languages Influenced: 影响多少个编程语言
  • Influenced by: 被多少个编程语言影响

2. 编程语言分类

  • 机器语言 (二进制代码)
  • 汇编语言 (面向机器的程序设计语言)
  • 高级语言 (...)

2.1 编译or解释

  • 解释性语言:Java、JavaScript、Perl、Python、Ruby、MATLAB 等。
  • 编译性语言: C/C++、Pascal/Object Pascal(Delphi)
  • 脚本语言(一种解释性语言):Python、JavaScript,ASP,PHP,Perl等

2.2 按照客观系统的描述可分为两类

  • 面向过程语言(C);
  • 面向对象语言(C++, Objective-C)

2.3 按照编程范型可分为

  • 命令式语言;  (Fortran、ALGOL、COBOL、C、Ada、Pascal)
  • 函数式语言;  (Lisp、Haskell、ML、Scheme 、F#)
  • 逻辑式语言;  (Prolog)
  • 纯面向对象语言  (Smalltalk)

3. 语言范式 Paradigm

sn 语言范式 Paradigm 比如: 描述 count
1 面向对象的编程
Object-oriented
Lisp, Java, Python, C++, Ruby, Perl, Smalltalk 使用由数据字段和方法组成的数据结构及其交互(对象)来设计程序 188
2 功能编程 Functional Lisp,Python, C++, Ruby, JavaScript, C# 使用数学函数的评估并避免状态和可变数据 130
3 命令式编程 Imperative C, Java, Python, JavaScript, Pascal, Ruby, Perl 改变程序状态的显式语句 118
4 逻辑编程 Logic Prolog 使用显式数学逻辑进行编程 20
5 声明性编程 Declarative Haskell 描述应该执行的计算,而不指定详细的状态变化c.f.命令式编程(功能和逻辑编程是声明性编程的主要子组) 15
6 通用编程 Generic Java, C++, Perl, C# 使用根据待指定的后续类型编写的算法,然后根据需要对作为参数提供的特定类型进行实例化 10
7 反思性编程 Reflective Ruby, JavaScript 元编程方法,其中程序修改或扩展自身 5
8 数据流编程 Dataflow SISAL 数据值发生变化时强制重新计算公式(例如电子表格) 3
9 管道编程 Pipeline
一个简单的语法更改,用于添加语法以将函数调用嵌套到最初使用none设计的语言 2
10 分布式编程 Distributed
支持通过计算机网络进行通信的多台自治计算机 1
11 多范式编程语言 Python, C++, Perl, Ruby, C# Multi-paradigm programming language 94
12 程序编程 Lisp, C, Python, C++, Perl Procedural programming 89
13 结构化编程 C, Java, Pascal, Ruby Structured programming 65
14 并发计算 C# Concurrent computing 26
15 基于原型的编程 JavaScript Prototype-based programming 24
16 面向堆栈的编程语言 Forth Stack-oriented programming language 17
17 并行计算 ALGOL 68 Parallel computing 16
18 数组编程 APL Array programming 13
19 知识表示语言 KPL Knowledge Representation Language 9
20 连接编程语言 Forth Concatenative programming language 9
21 口译语言 Lisp, Python, Ruby Interpreted language 8
22 动态编程语言 Perl, Ruby Dynamic programming language 7
23 数据库编程 SQL Database programming 7
24 教育编程语言 Logo Educational programming language 6
25 数学 Lisp, Haskell, APL Mathematics 4
26 懒惰的评价 Haskell Lazy evaluation 4
27 编译语言 Haskell Compiled language 4
28 强打字 Haskell, Java Strong typing 3
29 可视化编程语言
Visual programming language 3
30 按合同设计 Eiffel Design by contract 3
31 模块化编程 Modula, Mesa Modular programming 3
32 类型推断 Haskell, ML Type inference 3
33 功能级编程 FP Function-level programming 3
34 标记语言 Curl Markup language 2
35 依赖类型
Dependent type 2
36 演员模特
Actor model 2
37 框架语言
Frame language 2
38 自修改代码
Self-modifying code 2
39 事件驱动的编程
Event-driven programming 2
40 组合逻辑
Combinatory logic 2
41 细胞为主
Cell-based 2
42 虚拟机
Virtual machine 1
43 一次编写, 随处运行
Write once, run anywhere 1
44 多代理系统
Multi-agent system 1
45 基于表达式
Expression-based 1
46 基于知识的系统
Knowledge-based systems 1
47 面向组件的编程
Component oriented programming 1
48 封装
Encapsulation 1
49 阿贾克斯
Ajax 1
50 操作者
Operator 1
51 示例中心编程
Example Centric Programming 1
52 二维
Two dimensional 1
 注: [count]列内的数字,表示该范式包含多少种编程语言,数据来源: https://exploring-data.com/vis/programming-languages-influence-network/

4. 计算机语言历史

lang.pdf (1954-2018)
https://www.levenez.com/lang/lang.pdf

5. 编程语言排名

https://www.tiobe.com/tiobe-index/

6. 编程语言影响关系

https://exploring-data.com/vis/programming-languages-influence-network/
编程语言影响关系图↑及相关说明↓
https://exploring-data.com/info/programming-languages-influence-network/

7. 更多信息:

https://en.wikipedia.org/wiki/Programming_paradigm
编程范式是一种根据编程语言的特性对编程语言进行分类的方法。语言可以分为多种范例。
https://upload.wikimedia.org/wikipedia/commons/f/f7/Programming_paradigms.svg
根据Peter Van Roy的各种编程范例概述(svg图)

多范式编程语言的比较
https://en.wikipedia.org/wiki/Comparison_of_multi-paradigm_programming_languages

https://en.wikipedia.org/wiki/Comparison_of_programming_languages

https://en.wikipedia.org/wiki/Categorical_list_of_programming_languages
编程语言的分类列表



Diode

导航 (返回顶部) 1. Diode 1.1 Diode 概述 1.2 肖克利二极管方程 1.3 缩写 Abbreviations 2. 主要功能 2.1 单向电流 (Unidirectional current flow) 2.2 阈值电压 (Threshold...