当前位置: 首页 > news >正文

公共命名空间:上下文容器

公共命名空间,是供程序员讨论的空间,大家在这里讨论计算机语言应该是什么样子的,然后,由语言的制作者实现计算机语言。
准确地说,上下文容器不属于公共命名空间,它更像是公共命名空间中的某个方言的特性。
上下文容器的想法来自于Perl语言的“老地方变量”。

$_="hello";
print;

这句不带任何参数的print使用了老地方变量,用上下文容器实现同样的效果:

输入一个整数
输出

第一行的一般格式为:输入整数至[n]。这里没写至哪里,就至上下文容器。第一行执行完毕后,上下文容器里有了一个整数。第二行执行时,还缺一个参数,从上下文容器中找,找到了这个整数。

上下文容器有可能会“亏欠”:

输出
输入一个整数

执行第一行时,亏欠一个,就提前执行下文。第二行贡献一个,补上了亏欠。
在IDE(集成开发环境)中,应该有上下文容器的显示。
语言中,还应该有清空、推送、提取、备份、恢复上下文容器的句子。

清空上下文容器
推送[x]至上下文容器
从上下文容器提取至[x]
备份上下文容器为[x],并清空
从[x]恢复上下文容器

使用上下文容器,是为了简化源代码,但不要以增加错误为代价。
另一个例子:

[i]从[1]到[n]
获取整数[n]
循环:显示[i]

第一行向上下文容器中推入一个迭代器i,并亏欠一个整数n。
第二行弥补整数n。
第三行使用迭代器i。
至此,上下文容器为空,不推送,也不亏欠。
具体来说,"输入一个整数"和"输入一个整数至[n]"是两个函数,这两个函数很像,唯一的区别在于是否向上下文容器推送变量。

重复[6]次:输入一个整数
输出它们[6]个

上述程序若能运行,需要哪些条件?其中,第二行向上下文容器推送了6个变量。
另外,“重复[6]次”、“重复[6]遍”,意思是一样的,在公共命名空间中,这是一组冗余项。
现在看来,上下文容器是一个先入先出的队列。

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 【云原生】高可用集群KEEPALIVED(理论篇)
  • 小程序使用this.animate实现3维动画切换
  • c语言 图片.bmp读写示例
  • 自动化数据采集:Lua爬虫与JSON解析的深度整合
  • 头狼择校小程序
  • PythonStudio 控件使用常用方式(二十一)TTrayIcon
  • 生物制药及化工行业ERP解决方案
  • 汽车免拆诊断案例 | 2010款劳斯莱斯古斯特车中央信息显示屏提示传动系统故障
  • 电动自行车出海黑马Avento独立站拆解(上)丨出海笔记
  • 2024.8.12
  • vue2前端阿里云oss服务端签名直传
  • 非线性RCD负载:电力系统的智能管理
  • 19116 丑数
  • 数据结构与算法 - B树
  • Django基础知识
  • [译] 理解数组在 PHP 内部的实现(给PHP开发者的PHP源码-第四部分)
  • Bootstrap JS插件Alert源码分析
  • docker-consul
  • Docker入门(二) - Dockerfile
  • Git初体验
  • Javascript Math对象和Date对象常用方法详解
  • mysql 数据库四种事务隔离级别
  • MYSQL如何对数据进行自动化升级--以如果某数据表存在并且某字段不存在时则执行更新操作为例...
  • Puppeteer:浏览器控制器
  • Python_OOP
  • ReactNative开发常用的三方模块
  • vue从创建到完整的饿了么(18)购物车详细信息的展示与删除
  • Webpack 4x 之路 ( 四 )
  • webpack+react项目初体验——记录我的webpack环境配置
  • 初识MongoDB分片
  • 前端 CSS : 5# 纯 CSS 实现24小时超市
  • 如何打造100亿SDK累计覆盖量的大数据系统
  • 山寨一个 Promise
  • 使用 @font-face
  • 使用Gradle第一次构建Java程序
  • 使用iElevator.js模拟segmentfault的文章标题导航
  • 适配mpvue平台的的微信小程序日历组件mpvue-calendar
  • 思考 CSS 架构
  • 体验javascript之美-第五课 匿名函数自执行和闭包是一回事儿吗?
  • 阿里云服务器购买完整流程
  • ​LeetCode解法汇总2304. 网格中的最小路径代价
  • ​探讨元宇宙和VR虚拟现实之间的区别​
  • ###C语言程序设计-----C语言学习(6)#
  • (PWM呼吸灯)合泰开发板HT66F2390-----点灯大师
  • (附源码)springboot学生选课系统 毕业设计 612555
  • (附源码)计算机毕业设计ssm电影分享网站
  • (学习日记)2024.01.09
  • (轉)JSON.stringify 语法实例讲解
  • (自用)learnOpenGL学习总结-高级OpenGL-抗锯齿
  • *_zh_CN.properties 国际化资源文件 struts 防乱码等
  • .NET BackgroundWorker
  • .NET Core IdentityServer4实战-开篇介绍与规划
  • .Net 执行Linux下多行shell命令方法
  • .NET/C# 解压 Zip 文件时出现异常:System.IO.InvalidDataException: 找不到中央目录结尾记录。
  • .NET程序集编辑器/调试器 dnSpy 使用介绍