填充公共命名空间的例子

公共命名空间简述

制作计算机语言分两步走:填充公共命名空间、研究新编译原理。其中,公共命名空间用于确定语言是什么样子的,新编译原理用于实现语言。

简单来说,公共命名空间包括所有方言的所有句子。C语言、Java语言是方言,汉语、英语也是方言。不同方言的hello world程序,应该位于表格的同一行,而不同的列表示不同的方言。

把汉语和英语也视为方言,是为了接近自然语言编程。同时,也是为了提供一个对计算机语言进行说明的地方。例如:汉语方言A用于编程,汉语方言B用汉语解释每一行的句子都是什么功能。

每个人都能创建方言。由于公共命名空间仅负责确定语言是什么样子的,并不实现语言,所以,语言的使用者可以在这里畅所欲言,把自己对计算机语言的设想说出来,交给语言的制作者去衡量,并实现。

以下是一些填充公共命名空间的例子。

例1

字符串采用Python格式,由单引号、双引号、三个单引号、三个双引号标识。并且,在raw-string和f-string的基础上,再添加t-string, c-string, n-string。

name='zhao'
f'My name is {name}.'

r-string(raw-string)用于路径或正则表达式:

r'd:\text\1.txt'
r'\d{4,7}'

t-string(text-string)用于从文本文件中读入,它的字面值是一个路径,所以,也是r-string。

a=t'd:\text\1.txt'

执行后,a的值等于1.txt的内容。

c-string(cmd-string),启动一串命令行。

result=c'ls -l'

执行ls命令,并获取执行的结果。
在Perl语言中,用的是反单引号,

`dir`

n-string(note-string),就是注释,被编译器忽略的部分。单行注释可以用井号,多行注释就用n-string。

n'''这是一组
多行注释
有许多行组成。'''

例2

同位素用反斜线加小括号表示。同位素的概念取自化学中的元素周期表,互为同位素的语句,具有相似的功能,但却略有不同。print语句加不加换行就是一对儿典型的同位素。表示如下:

print('hello')\(换行)
print('hello')\(不换行)

使用专用的源代码浏览器,它可以显示或隐藏同位素。可以预见,公共命名空间中的句子都比较长,算上同位素以后就更长了,隐藏功能就成了必须的。

总结

公共命名空间是一项全新的技术,它用于确定计算机语言是什么样子的,它是由全世界的程序员共同填充的,每个人都可以创建自己的方言,并且把对计算机语言的设想记录在公共命名空间之中。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/4246.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C++ 动态链接库DLL创建及使用

一、动态链接库DLL创建 使用VS2022 创建 1、创建新解决方案 创建即可 2、创建动态链接库新项目 右键解决方案 语言选择C,选择动态链接库 填入项目名称,勾选:将解决方案和项目放在同一目录中 点击创建 3、创建后,显示dllmai…

详解centos8 搭建使用Tor 创建匿名服务和匿名网站(.onion)

1 Tor运行原理: 请求方需要使用:洋葱浏览器(Tor Browser)或者Google浏览器来对暗,网网站进行访问 响应放需要使用:Tor协议的的Hidden_service 2 好戏来了 搭建步骤: 1.更新yum源 rpm -Uvh h…

鸿蒙内核源码分析(任务调度篇) | 任务是内核调度的单元

任务即线程 在鸿蒙内核中,广义上可理解为一个任务就是一个线程 官方是怎么描述线程的 基本概念 从系统的角度看,线程是竞争系统资源的最小运行单元。线程可以使用或等待CPU、使用内存空间等系统资源,并独立于其它线程运行。 鸿蒙内核每个…

python绘制热点图

在Python中,我们通常使用seaborn或matplotlib库来绘制热点图(也称为热图,Heatmap)。下面是一个使用seaborn库来绘制热点图的简单示例: 首先,确保你已经安装了seaborn和matplotlib库。如果没有,…

细致讲解——不同类型LSA是作用以及相互之间的联系

目录 一.常见的LSA类型 二.OSPF特殊区域 1.区域类型 2.stub区域和totally stub区域 (1)stub区域 (2)totally stub区域 3.nssa区域和totally nssa区域 (1)nssa区域 (2)totall…

【java数据结构之八大排序(上)-直接插入排序,希尔排序,选择排序,堆排序,向下调整(大根堆,小根堆)等知识详解】

🌈个人主页:努力学编程’ ⛅个人推荐:基于java提供的ArrayList实现的扑克牌游戏 |C贪吃蛇详解 ⚡学好数据结构,刷题刻不容缓:点击一起刷题 🌙心灵鸡汤:总有人要赢,为什么不能是我呢 …

微信小程序使用echarts实现条形统计图功能

微信小程序使用echarts组件实现条形统计图功能 使用echarts实现在微信小程序中统计图的功能,其实很简单,只需要简单的两步就可以实现啦,具体思路如下: 引入echarts组件调用相应的函数方法 由于需要引入echarts组件,代…

SpringCloudStream 3.x rabbit 使用

1. 前言 今天带来的是SpringCloudStream 3.x 的新玩法,通过四大函数式接口的方式进行数据的发送和监听。本文将通过 rabbitMQ 的方式进行演示 3.x版本后是 可以看到 StreamListener 和 EnableBinding 都打上了Deprecated 注解。后续的版本更新中会逐渐替换成函数式…

2024年第十七届 认证杯 网络挑战赛 (B题)| 神经外科手术的定位与导航 | 有限元方法 泊松分布 |数学建模完整代码+建模过程全解全析

人的大脑结构非常复杂,内部交织密布着神经和血管,所以在大脑内做手术具有非常高的精细和复杂程度。例如神经外科的肿瘤切除手术或血肿清除手术,通常需要将颅骨打开一个(或几个)圆形窗口,将病变部位暴露在术野中。但当病变部位较深时,就必须将上方的脑组织进行一定程度的…

【Kotlin】Channel简介

1 前言 Channel 是一个并发安全的阻塞队列,可以通过 send 函数往队列中塞入数据,通过 receive 函数从队列中取出数据。 当队列被塞满时,send 函数将被挂起,直到队列有空闲缓存;当队列空闲时,receive 函数将…

电脑的无用设置功能(建议关闭)

目录 1、传递优化 ​2、常规​ 3、电源 1、传递优化 2、常规3、电源

UNIXUNIX

RTC的核心部分如图所示,最左边是RTCCLK时钟来源,需要在RCC里边配置,3个时钟选择一个当做RTCCLK,之后先通过预分频器对时钟进行分频;余数寄存器是一个自减计数器,存储当前的计数值,重装计数器是计…

数据结构七:线性表之链式栈的设计

在上篇博客,学习了用数组实现链的顺序存储结构,那是否存在用单链表实现栈的链式存储结构,答案是当然的,相比于顺序栈,用数组实现的栈效率很高,但若同时使用多个栈,顺序栈将浪费很多空间。用单链…

ThinkPHP Lang多语言本地文件包含漏洞(QVD-2022-46174)漏洞复现

1 漏洞描述 ThinkPHP是一个在中国使用较多的PHP框架。在其6.0.13版本及以前,存在一处本地文件包含漏洞。当ThinkPHP开启了多语言功能时,攻击者可以通过lang参数和目录穿越实现文件包含,当存在其他扩展模块如 pear 扩展时,攻击者可…

高级IO|从封装epoll服务器到实现Reactor服务器|Part1

从封装epoll_server到实现reactor服务器(part1) 项目复习:从封装epoll_server到实现reactor服务器(part1)EPOLL模式服务器初步 select, poll, epoll的优缺点epoll的几个细节封装epoll_server基本框架先写好创建监听套接字和创建epoll模型可以Accept了吗&#xff1f…

使用rust学习基本算法(四)

使用rust学习基本算法(四) 二叉堆 二叉堆是一种特殊的完全二叉树,它可以分为最大堆和最小堆。在最大堆中,每个节点的值都大于或等于其子节点的值;而在最小堆中,每个节点的值都小于或等于其子节点的值。这种…

《架构风清扬-Java面试系列第25讲》聊聊ArrayBlockingQueue的特点及使用场景

ArrayBlockingQueue是BlockingQueue接口的一个实现类之一 这个属于基础性问题,老规矩,我们将从使用场景和代码示例来进行讲解 来,思考片刻,给出你的答案 1,使用场景 实现:基于数组实现的有界阻塞队列&…

Stability AI 推出稳定音频 2.0:为创作者提供先进的 AI 生成音频 - Circle 阅读助手

概述 Stability AI 的发布再次突破了创新的界限。这一尖端模型以其前身的成功为基础,引入了一系列突破性的功能,有望彻底改变艺术家和音乐家创建和操作音频内容的方式。 Stable Audio 2.0 代表了人工智能生成音频发展的一个重要里程碑,为质量…

ChatGPT-税收支持新质生产力

Prompt: 税收发展助力新质生产力 Response: 是的,税收发展可以促进新质生产力的发展。通过税收政策的调整和优化,政府可以提供更好的创新环境,激发企业投资研发,推动新技术、新产品的出现,从而推动经济结构升级和新…

mysql UNION 联合查询

mysql UNION 联合查询 业务需要拉数据,这里需要对查询不同格式的数据进行组装,此处采用联合查询 注意1:null as 设备关爱 ,结果为null,表头为设备关爱 注意2: UNION 或者 UNION ALL 联合查询自行选用 注意3…