公共命名空间,2024年10月的笔记

首先,我国选择C++做为竞赛语言,许多人学C++,学习的结果是:看到“公共命名空间”,就幻想出一个私有命名空间,其实,公共命名空间和C++的命名空间无关!

超简源代码

已知序列v={1,2,3,4,5},找出其中的偶数,把每一个元素乘以2,并显示。

方案1:
源代码模板,修改已有的源代码,就像在做填空题,而且还有标准答案做参考。这需要IDE支持,经典源代码中的某些部分不可修改,是“只读”属性。

方案2:
序列v={1,2,3,4,5}
筛选序列[v]中的[偶数]至[w]
序列[w]的每个元素[*2]至[u]
显示[u]

方案3:
{1,2,3,4,5} & 筛选偶数 & 乘以2 & 显示

方案3最诱人。结合“上下文容器”,方案2可以更简单一点儿。

{1,2,3,4,5} | 筛选偶数
筛选[{1,2,3,4,5}]中的偶数
筛选偶数({1,2,3,4,5})
以上三行分别是前置参数、中置参数、后置参数。

调用一段源代码,不是用函数,也不是对象,而是另一段源代码。一般来说,后者比前者简单。后者的后者,可以是自然语言;前者的前者,可以是汇编语言。

假设有“阿立芬多数”代替“偶数”,上述代码的实现和形式该做怎样的修改?

注:阿立芬多数,是作者虚构出来的,只是为了测试一种情况:计算机语言定型之后,又有新事物出现,我们该怎么办?当然是修改语言啦!

C+Python的设计模式可以参考,常见的功能,用C语言实现,高效;其它的,用Python来编写,方便。兼顾便捷与效率。

复杂性

语言的复杂性来自于任务的复杂性,将这种复杂性写在公共命名空间之中,或者说,分散于其中。而计算机语言是简单的。

这一想法来自于对C++的反思,C++过于复杂,这是不对的,计算机语言应该是简单的。如此说来,公共命名空间成了复杂的任务和简单的计算机语言之间的缓冲带?

形式和实现之间的关系?传统的编译原理导致任务一复杂,形式也跟着复杂起来了。结果,编程序成了一项困难的工作。理想的计算机语言不应该是这样的。

别忘了,公共命名空间还有一个目标:让2000年后的人们能读懂今天写的源代码。

以英语为例,单词可以连成句子,但任务的复杂性导致程序的实现不能简单连接。所以,需要以句子为单位来理解源代码。

再以数学为例,一个高维空间,需要完整的坐标,才能正确描述。比如说六维空间,需要6个数字组成的向量来描述。6个数字之间没有简单关系,要把它们都写出来才行。这相当于用6个单词组成一个句子。所以,再次得出同样的结论:需要以句子为单位来理解源代码!

公共命名空间和人工智能

我对人工智能了解不多,仅有的一点儿了解,是神经元网络的梯度下降法。在梯度下降法里,定义了损失函数,这可以理解为:神经元网络的当前状态和理想状态之间的距离。

由于这个距离采用的是广义的欧几里德距离,所以,导致了神经元网络的状态空间不是四维的,(究竟是高维的还是零维的,我也说不清),它无法和公共命名空间相对接。

若不改变这一现状,公共命名空间中的所有项目(包括方言、句子、冗余项、同位素)将失去它们原有的位置关系。例如,冗余项说的是:形式不同而内容完全相同的情况,例如姥姥和外婆、将和帅、兵和卒。在损失函数看来,它们不是精确相等的。

所以,期待“四维损失函数”出现,使得人工智能和公共命名空间能更好的衔接。但是,话又说回来了,有了填充完好的公共命名空间,用精确的字符串匹配函数即可处理源代码,用不到人工智能了。

公共命名空间和人工智能里的自然语言理解,走的是不同的道路。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

uniapp position: fixed 兼容性不显示问题

position: fixed; bottom: 0;以上运行到微信小程序时正常,但是h5会出现不显示的问题。 解决方法 修改为: position: fixed; bottom: var(--window-bottom, 0);

【python】OpenCV—Tracking(10.3)—GOTURN

文章目录 1、功能描述2、模型介绍3、代码实现4、完整代码5、结果展示6、优缺点分析7、参考 1、功能描述 基于 Generic Object Tracking using Regression Networks 方法,实现单目标跟踪 2、模型介绍 (1)发表来自 Held D, Thrun S, Savarese…

如何将本地项目上传至Gitee仓库(详细教程)

前提条件 1、本地电脑安装Git客户端 2、本地已有项目 3、Gitee注册好了账户 如果没有安装Gitee 可以区菜鸟查看一下安装教程 Git教程https://www.runoob.com/git/git-tutorial.html 操作示例 前提条件已经准备好的情况下登录gitee 码云 https://gitee.com 点解右侧加号 新…

二叉树中的深搜 算法专题

二叉树中的深搜 一. 计算布尔二叉树的值 计算布尔二叉树的值 class Solution {public boolean evaluateTree(TreeNode root) {if(root.left null) return root.val 0? false: true;boolean left evaluateTree(root.left);boolean right evaluateTree(root.right);return…

静态水印+动态水印,开启超强PPT版权保护!

在保护 PPT 内容版权时,水印是一种既简单又有效的手段。无论你是为了防止内容被非法复制,还是为了在传播中标明作者身份,水印都能为你的 PPT 提供额外的安全保障。 在传统的 PPT 制作中,最常见的水印添加方法是通过「幻灯片母版」…

std.move 可以重复使用吗?普通变量不行,shared_ptr包装后可以

std.move std::move函数本身可以重复调用,但这取决于对象的状态。在C中,std::move函数用于将一个对象转换为右值引用,从而允许我们从该对象中提取所有权,而不需要创建新的对象。然而,std::move并不会改变对象的状态&am…

关于图像分解的RPCA

将矩阵分解为低秩矩阵和独立同分布的高斯矩阵是PCA 当矩阵 E0 为稀疏的噪声矩阵时,分解为一个低秩矩阵部分 A 和一个稀疏矩阵部分 E 的 矩阵的秩和 ℓ0 范数问题都可以进行凸松弛,矩阵的核范数是矩阵秩的凸包络,(1)变…

XHCI 1.2b 规范摘要(八)

系列文章目录 XHCI 1.2b 规范摘要(一) XHCI 1.2b 规范摘要(二) XHCI 1.2b 规范摘要(三) XHCI 1.2b 规范摘要(四) XHCI 1.2b 规范摘要(五) XHCI 1.2b 规范摘要…

【远程项目管理】Focalboard如何在Windows环境使用Docker快速部署

文章目录 前言1. 使用Docker本地部署Focalboard1.1 在Windows中安装 Docker1.2 使用Docker部署Focalboard 2. 安装Cpolar内网穿透工具3. 实现公网访问Focalboard4. 固定Focalboard公网地址 前言 本篇文章将介绍如何在Windows系统本地快速部署Focalboard项目管理工具&#xff0…

WebStorm EsLint报红色波浪线

如图左侧。 这个错误是由于 ESLint 和 Prettier 的配置不一致导致的。它建议你移除多余的空格。以下是一些解决方法: 安装 Prettier 插件: 确保你在 WebStorm 中安装了 Prettier 插件,并确保它配置正确。 调整 ESLint 配置: 检查…

【Flask】二、Flask 路由机制

目录 什么是路由? Flask中的路由 基本路由 动态路由 路由中的HTTP方法 路由函数返回 在Web开发中,路由是将URL映射到相应的处理函数的过程。Flask是一个轻量级的Web应用框架,提供了简单而强大的路由机制,使得开发者能够轻松…

如何用Python同时抓取多个网页:深入ThreadPoolExecutor

背景介绍 在信息化时代,数据的实时性和获取速度是其核心价值所在。对于体育赛事爱好者、数据分析师和投注行业而言,能否快速、稳定地抓取到实时比赛信息显得尤为重要。特别是在五大足球联赛中,能够在比赛进行时获得比分、控球率等实时数据&a…

深入计算机语言之C++:内存管理

🔑🔑博客主页:阿客不是客 🍓🍓系列专栏:从C语言到C语言的渐深学习 欢迎来到泊舟小课堂 😘博客制作不易欢迎各位👍点赞⭐收藏➕关注 一、 C/C的内存分布 我们先来看一段代码&#xf…

使用Vue.js和Vuex构建可维护的前端应用

使用Vue.js和Vuex构建可维护的前端应用 Vue.js简介 安装Vue.js 使用npm安装 使用CDN引入 创建Vue项目 安装Vuex 初始化Vuex Store 在Vue组件中使用Store Vuex模块化 Vuex命名空间 Vuex插件 Vuex热重载 Vuex持久化状态 Vuex调试工具 Vuex的高级用法 异步Actions 中间件 Vuex的…

云智慧完成华为原生鸿蒙系统的适配, 透视宝 APM 为用户体验保驾护航

2024 年 10 月 22 日,首个国产移动操作系统 —— 华为原生鸿蒙操作系统 HarmonyOS NEXT 正式面世,成为继 iOS 和 Android 后的全球第三大移动操作系统。HarmonyOS NEXT,从系统内核、数据库根基,到编程语言创新、AI(人工…

Metasploit(MSF)使用

目录 Metasploit简要介绍 主要功能 漏洞利用: Payload 生成: 辅助模块: 后渗透模块: 报告生成: 使用教程以及案例 基础命令使用 生成被控端 命令介绍 kali启动主控端 1.启动以及设置载荷等配置 漏洞检测…

Linux 开机自动挂载硬盘

在日常使用 Linux 系统的过程中,我们可能需要挂载一些机械硬盘或者移动硬盘来存储数据。手动挂载虽然简单,但每次重启后都需要重新操作,未免有些繁琐。那么,如何让硬盘在开机时自动挂载呢?本篇博客将详细介绍如何通过配…

GPU 学习笔记三:GPU多机多卡组网和拓扑结构分析(基于数据中心分析)

文章目录 一、概述二、数据中心(DC)2.1 数据中心简介2.2 传统数据中心的网络模型2.3 脊叶网络模型(Spine-Leaf)2.4 Facebook的Fabric网络架构 三、基于数据中心的多机多卡拓扑3.1 Spine-Leaf 架构网络规模测算方法3.2 NVIDIA多机多…

基于 GADF+Swin-CNN-GAM 的高创新扰动信号识别模型!

往期精彩内容: Python-电能质量扰动信号数据介绍与分类-CSDN博客 Python电能质量扰动信号分类(一)基于LSTM模型的一维信号分类-CSDN博客 Python电能质量扰动信号分类(二)基于CNN模型的一维信号分类-CSDN博客 Python电能质量扰动信号分类(三)基于Transformer的一…

【QNAP威联通NAS系统恢复进阶教程】如果 .conf 和 md9 无法自动组装,如何恢复 NAS?

创作立场:原创不易,拒绝搬运~ hello大家好,我是你们的老伙伴,稳重的大王~ 从本期开始,大王将在日常教程中,分享一些QNAP系统故障的排除以及解决办法,进阶教程需要具备一定的linux基础&#xf…