JVAV 编程语言介绍 🐣
JVAV — 脑波原生开发平台完全介绍喵 🐾
一个纯三剑客(HTML/CSS/JS)站点 + 一个 Python 实现的「倒序」编程语言 + 一个 GitHub 包管理器喵。
当前发行:JVAV DK 27 v6 · 状态:✅ Production Ready · Turing 完备喵。
1. 这是什么喵?
JVAV 是一门「脑波原生」编程语言喵:所有 .jvav 脚本都由 src/JvavDK27.py 里的运行时解释执行,把 Python 的内置函数整个倒过来念,让你在熟悉的语义里体验完全陌生的手感喵。
最妙的地方在于——它可不是玩具喵。DK27 v6 已经是 Turing 完备的喵:
- ✅ 160+ 倒序内置函数(覆盖标准库喵)
- ✅ 完整递归(factorial / fibonacci 都没问题喵)
- ✅ 全部控制流:
if/elif/else、try/except、for、while、嵌套喵 - ✅ 函数定义与类定义喵
- ✅ 插件系统 + 包管理器自动加载喵
- ✅ 列表 / 字典 / 集合推导式喵
- ✅ 完善 UTF-8 支持,中文输出无压力喵
- ✅ SafeEvaluator 沙箱 + AST 安全校验喵
2. 倒序命名:JVAV 的灵魂喵
规则只有一个:把名字照镜子念一遍喵。
| Python 原名 | JVAV 倒序名 | 说明 |
|---|---|---|
print |
tnirp |
输出喵 |
input |
tupni |
输入喵 |
len |
nel |
长度喵 |
range |
egnar |
范围喵 |
str |
rts |
转字符串喵 |
int |
tni |
转整数喵 |
dict |
tcid |
字典喵 |
list |
tsal |
列表喵 |
sum |
mus |
求和喵(注意是 mus,不是 nus 喵!) |
max / min |
xam / nim |
最大 / 最小喵 |
sorted |
detros |
排序喵 |
append |
dneppa |
追加喵 |
enumerate |
pocE |
枚举喵 |
map / filter |
paM / refilF |
映射 / 过滤喵 |
关键字也一并倒序喵:
| Python | JVAV |
|---|---|
if / else |
fi / esle |
for / while |
rof / elihw |
try / except |
yrt / tpecxe |
in / not / return |
ni / ton / nruter |
小贴士喵:关键字只在整词时替换,所以字符串里写
file不会被误伤喵。
3. 快速开始喵
运行一行代码喵
python src\JvavDK27.py -c "tnirp('你好,JVAV 喵')"
运行一个文件喵
python src\JvavDK27.py -f examples\two_sum.jvav
进入交互式 REPL 喵
python src\JvavDK27.py
JVAV DK27 - Turing-Complete Brainwave Programming Language
160+ Reversed Python Builtins | Full Recursion Support
jvav> def fib(n): return n if n <= 1 else fib(n-1) + fib(n-2)
jvav> fib(8)
21
自检喵
python src\JvavDK27.py info
4. 写一段真正的 JVAV 喵
# 多行条件 + for 循环 + 推导式,一次满足喵
tnirp("=== JVAV DK27 演示 ===")
number = modnartegrat(1, 10)
if number < 3:
tnirp("数字很小喵")
elif number < 7:
tnirp("数字中等喵")
else:
tnirp("数字很大喵")
numbers = tsal([1, 2, 3, 4, 5])
doubled = tsal([x * 2 for x in numbers])
tnirp("原列表:" + rts(numbers))
tnirp("翻倍后:" + rts(doubled))
tnirp("总和:" + rts(mus(numbers)))
递归也没在怕的喵:
def fact(n): return 1 if n <= 1 else n * fact(n-1)
tnirp(fact(5)) # 120 喵
5. 项目结构喵
jvav/
├── index.html # 主页喵
├── downloads/
│ ├── index.html # 下载页(含最新 exe)喵
│ ├── jvav_dk27.exe # DK27 解释器发布产物喵
│ ├── jvavpkg.exe # 包管理器发布产物喵
│ └── archive/ # 历史版本归档喵
├── versions.html # 版本中心(DK25 / DK26 / DK27)喵
├── changelog.html # 更新日志喵
├── about.html # 项目简介喵
├── help.html # 主文档 & 快速上手喵
├── help-pkg.html # 包管理器文档喵
├── help-cli.html # CLI 文档喵
├── help-protocol.html # 协议文档喵
├── help-security.html # 安全沙箱文档喵
├── assets/ # 样式与 Logo 喵
├── examples/ # 示例程序库喵
├── src/
│ ├── JvavDK27.py # 唯一在运行的解释器源码喵
│ ├── jvavpkg.py # 包管理器喵
│ ├── verify_production_status.py
│ └── report.py
├── tests/
│ ├── test_repl_function.py # 解释器自测(8 个)喵
│ └── test_jvavpkg.py # 包管理器自测(11 个)喵
├── jvav_dk27.spec # 解释器 PyInstaller 配置喵
└── jvavpkg.spec # 包管理器 PyInstaller 配置喵
⚠️ 喵提醒:
src/JvavDK25.py、src/JvavDK26.py是遗留版本,不要动喵。
6. 插件系统喵
SafeEvaluator 内置 7 个插件,其中 5 个默认加载喵:
| 插件名 | 能力 |
|---|---|
file_ops |
读 / 写 / 列目录 / 建删路径(daeRelif、etirWelif、stsilD…)喵 |
network |
HTTP GET/POST、JSON 编解码喵 |
datetime |
当前时间、时间戳、eeps(sleep)喵 |
math_ext |
开方、三角、对数、阶乘、随机数喵 |
console |
cls 清屏、put 不换行输出喵 |
system |
执行命令、切换路径喵 |
collections |
retnuoC / euqed / deredroD 等结构喵 |
REPL 里这样用喵:
jvav> plugin list
jvav> plugin load file_ops
jvav> plugin unload file_ops
更有意思的是——解释器会自动发现通过 jvavpkg 安装的 library / plugin 包(在 ~/.jvav/packages 与 ./.jvav/packages),直接 plugin load <名字> 就能把它们的 src/*.jvav 函数注入环境喵。
7. 包管理器 jvavpkg 喵
jvavpkg.exe(源码 src/jvavpkg.py)是一个基于 GitHub 仓库文件的 JVAV 包管理器喵。
设计理念喵
- 一包一仓库,Git tag 即版本喵
- 仓库文件直存,不走 Releases 喵
- 超过 100MB 的资产走
jvavpkg.links外链,强制 SHA256 校验喵 - 支持依赖解析、版本约束、循环依赖检测、版本冲突检测喵
命令一览喵
python src\jvavpkg.py info <name|owner/repo> [--version <tag>]
python src\jvavpkg.py install <name> [--version <tag>] [--local]
python src\jvavpkg.py uninstall <name> [--local]
python src\jvavpkg.py list [--local]
python src\jvavpkg.py update [name] [--local]
python src\jvavpkg.py pack [src] [--name <n>] [--version <v>] [--main <f>] [--out <p>]
安装位置喵
| 作用域 | 路径 |
|---|---|
| 全局(默认) | ~/.jvav/packages/<name>/ |
项目本地(--local) |
<cwd>/.jvav/packages/<name>/ |
版本约束支持喵
>=1.0.0、<2.0.0、==1.2.3、>=2.0.0,<3.0.0 这些都能写喵,最高兼容版本会被自动挑出来。
8. 测试与验证喵
所有测试都是纯 assert 自测,没有 pytest 依赖喵:
python tests\test_repl_function.py # 8/8 通过喵
python tests\test_jvavpkg.py # 11/11 通过喵(离线,用假 GitHub 客户端)
当前测试总数是 19 个(解释器 8 + 包管理器 11)喵。
发布前还应把示例全部跑一遍,退出码必须为 0 喵:
Get-ChildItem examples -Filter *.jvav | % { python src\JvavDK27.py -f $_.FullName }
9. 构建发布喵
支持两种打包方式,PyInstaller 是主方式,Nuitka 是试点的优化方案喵。
PyInstaller(主推)喵
python -m PyInstaller jvav_dk27.spec --clean --noconfirm
Copy-Item dist\jvav_dk27.exe downloads\jvav_dk27.exe -Force
(Get-FileHash downloads\jvav_dk27.exe -Algorithm SHA256).Hash
Nuitka(更小更快)喵
python -m nuitka --onefile --assume-yes-for-downloads `
--no-deployment-flag=self-execution `
--output-dir=nuitka_build `
--output-filename=jvav_dk27_nuitka.exe src\JvavDK27.py
Nuitka 版本体积约小 24%、启动约快 50% 喵;--no-deployment-flag=self-execution 是解释器必加的参数,否则 -c / -f 会被当成自递归拒绝喵。
发布校验值喵
- 发行:JVAV DK 27 v6
- SHA256:
1D29F00D214C8A744623BCDAA83DE1FB4997601EA351427F597095E81EFDCAFD - 功能:160+ 倒序函数、完整递归、全部控制流、REPL 交互
- 测试:8/8 解释器 · 11/11 包管理器
⚠️ 版本号 / 日期 / SHA256 / 测试数 / 文件大小散落在
README.md、src/verify_production_status.py、src/report.py和多个 HTML 页面里,发版时必须同步更新,具体清单见UPDATE_GUIDE.md喵。
10. 常用入口喵
- 🌐 官方网站:https://jvav-with-u.top
- ⬇️ 下载页:https://jvav-with-u.top/downloads/index.html
- 📖 快速上手:https://jvav-with-u.top/help.html
- 📦 包管理文档:https://jvav-with-u.top/help-pkg.html
- 📝 更新日志:https://jvav-with-u.top/changelog.html
11. 一句话总结喵
JVAV 用「倒序」这个荒诞又自洽的设定,把一个真正图灵完备、带沙箱、带插件、带包管理器的语言塞进了 .jvav 文件里喵。写 tnirp 的时候你会以为是玩笑,直到 fib(8) 算出 21 的那一刻——脑波,就接上了喵。🐾
JVAV - 脑波原生编程语言 | BR inc. 2018-2026 · 喵喵喵
评论