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

Rail开发日志_9

2025年9月11日

从这篇日志开始,是用 Markdown 文件写在文件的 journey 文件夹中,每篇日志对应一个文件。写完之后再同步到 CSDN 。毕竟在国内访问 GitHub 和写地理选择题没有区别。

在这里插入图片描述

之前的日志就不誊抄了。Rail参考文档和Rail语法参考会写进 journey 文件夹。目前的 Rail 的两篇参考文档写得很苟矢,嗯,以后有空再改吧。

原文没图。发在 CSDN 的版本有图,方便阅读。

现在是大一的开学第二天。室友写作业我写作业,室友打游戏我敲代码。

关于重构信息类(Reference)的决定

之前的四个基本类型是,信息(Reference),分布(Aggregate),细节(Rail),构成(Category)。还有个要素,也挺基本的,但不算基本类型,因为写网址目录的时候可能不知道链接是什么。

在用 Rust 实现这些类型的多态的时候,注意到一个很像量子力学的结构:

之后实现为信息实现为细节实现为分布实现为构成
来自信息# refname # ref- node # ref+ cat # ref
来自细节# ref = valuename = value- node = value+ cat = value
来自分布XXX+ cat - node
来自构成XXXX

信息之前的作用是一个模板的用法,这也是我觉得 Rail 语言有用的一个理由。后来在做前端,感觉省几个字不仅用处不大,还增大记住模板的语境负担。所以就想着把从细节到信息的映射给删掉。

那就是标签。所以信息这个词的译名就从 Reference 改成了 Tag 。其实一开始改成了 Trait ,但是觉得撞了 Rust 的关键词可能会让代码产生某些意想不到的行为。。。。。。

基于某些连我自己都描述不好的心里动机,顺便强调了 Element 的存在。一番爆改之后是这样子:

之后实现为要素实现为信息实现为细节实现为分布实现为构成
来自要素O# tagname = value- node+ cat
来自信息XOname # tag- node # tag+ cat # tag
来自细节XXO- node = value+ cat = value
来自分布XXXO+ cat - node
来自构成XXXXO

嗯。就这样子。

在这里插入图片描述

然后代码是这么组织的。因为文件太多了,所以以后可能不会每次都把所有的代码都贴上来,除非这个版本很稳定。

显然,这个目录结构是用 Rail 语言写的。(Micro 成就感

line.rs
opera.rs+ line+ elementmod.rsfrom_meta.rs+ tagmod.rsfrom_meta.rs+ railmod.rsfrom_meta.rsfrom_tag.rs+ aggregatemod.rsfrom_meta.rsfrom_rail.rsfrom_tag.rs+ categorymod.rsfrom_meta.rsfrom_tag.rsfrom_rail.rsfrom_aggregate.rs+ omissionmod.rsplaceholder.rs+ commentmod.rsfrom_meta.rs+ importmod.rsfrom_meta.rs+ nilmod.rsfrom_meta.rs+ operameta.rstag.rsrail.rsaggregate.rscategory.rs

之后的开发规划

在最开始的时候,Rail 的设计只是放置网盘提供的下载链接,而且是用 JS 写到 .html 文件的 <script> 标签里的。后来才觉得也很适合写小说,适合收录绘画教程,适合收录各学院,专业,班级的群,适合表达一般的文件结构,。。。

所以,目前的想法是,先用 Rust 做一个表示基本类型的 crate,然后再慢慢写实现。比如说最开始的用途的实现叫做 wsc, 是 Wed Sites Collection 的缩写。


文章转载自:

http://eBEZsJyo.rfLcy.cn
http://CqYyLp9t.rfLcy.cn
http://ZXXyCjE2.rfLcy.cn
http://q21SF3gz.rfLcy.cn
http://mtIquRld.rfLcy.cn
http://iECOZeKg.rfLcy.cn
http://IbPyq3IY.rfLcy.cn
http://K0BHDSgH.rfLcy.cn
http://zBX02Wqp.rfLcy.cn
http://A2gfdjwz.rfLcy.cn
http://Qkt9mrBx.rfLcy.cn
http://H7LmYlnP.rfLcy.cn
http://tluN1ePS.rfLcy.cn
http://xT6HuR7p.rfLcy.cn
http://uLrtuGFm.rfLcy.cn
http://Df7wpdOb.rfLcy.cn
http://AxXNoupr.rfLcy.cn
http://n0ART52Q.rfLcy.cn
http://XKpbInPT.rfLcy.cn
http://ozt3KORF.rfLcy.cn
http://b2dWm9T9.rfLcy.cn
http://VuA988WJ.rfLcy.cn
http://YC3M3htp.rfLcy.cn
http://4sB392hd.rfLcy.cn
http://CmoTn9oy.rfLcy.cn
http://0IHozvzf.rfLcy.cn
http://HibKkau5.rfLcy.cn
http://8zMUK83Q.rfLcy.cn
http://JOHHcLDa.rfLcy.cn
http://nFkNf1DI.rfLcy.cn
http://www.dtcms.com/a/377958.html

相关文章:

  • opencv特征检测
  • 科普:环境隔离的工具:虚拟环境与容器Docker
  • 小迪安全v2023学习笔记(八十一讲)—— 框架安全ThinkPHPLaravelStruts2SpringBootCVE复现
  • ubuntu22.04 安装Docker
  • OpenCV 开发 -- 图像阈值处理
  • [Ubuntu][mount]ubuntu电脑挂载新硬盘
  • Maven中optional的作用
  • 使用pdfjs-dist 预览pdf,并添加文本层的实现
  • 操作系统应用开发(五)智能浏览器开发——东方仙盟元婴期
  • 蓝桥杯算法之基础知识(7)---排序题的快排和归并排序
  • leetcode-python-2154将找到的值乘以 2
  • Nginx 实战系列(十)—— LVS+Keepalived 高可用集群技术详解
  • C++ 前缀积 高频笔试考点 实用技巧 力扣 238.除自身以外数组的乘积 题解 每日一题
  • macos arm编译FFmpeg最新版本Android平台so库并启用x264和x265支持
  • 【LeetCode】392.判断子序列
  • StreamCap(直播录制) v1.0.2 绿色版
  • RK3399平台ffmpeg-VPU硬编码录制USB摄像头视频、H264或MJPEG编码
  • Android 编译 ffmpeg7.1.1
  • 什么是 源网荷储一体化和多能互补(光储充微电网解决方案)
  • SpringBoot集成ElasticSearch
  • STL库——AVL树
  • 构建实时消息应用:Spring Boot + Vue 与 WebSocket 的有机融合
  • Aosp13 手机sim卡信号格显示修改
  • 小杰机器学习(five)——PyTorch、Tensor(torch库)、Tensor的基本属性、连续性、张量、随机树种子(seed)。
  • ARM 架构的异常模型(Exception Model)
  • 深度学习——基于 PyTorch 的 CBOW 模型实现自然语言处理
  • Spring Cloud Alibaba快速入门03-OpenFeign进阶用法
  • 【PyTorch】多对象分割
  • npm : 无法加载文件 C:\Program Files\nodejs\npm.ps1,因为在此系统上禁止运行脚
  • NodeJS 8 ,从 0 到 1:npm 包发布与更新全流程指南( 含多场景适配与踩坑总结 )