我开发了FlowCode,这是一个基于浏览器的编程逻辑教学工具。您可以拖动流程图块,连接它们,并且:
- 流程图逐步执行
- 变量在监视窗口中实时更新
- 自动生成Python代码
- 自动检测循环(for / while)和条件语句(if / elif / else)
- 可以以JSON格式保存和加载
- 无需后端 — 一切在客户端运行
演示链接: [https://southernadd-cmyk.github.io/flowCode/](https://southernadd-cmyk.github.io/flowCode/)
该工具的目标用户包括:
- 计算机科学教师
- 学习顺序和控制流的学生
- 习惯于首先用图表思考的任何人
目前支持的一些功能包括:
- 开始/结束、处理、变量、决策、输入、输出节点
- 实时执行高亮
- 变量跟踪表
- 画布缩放/平移
- 导入/导出示例图表
- 循环模式检测(包括基本的for推断)
我非常希望能收到以下方面的反馈:
- 学生使用时界面的清晰度
- 执行语义是否直观
- 您期望的缺失模块(可能很快会增加函数和数组)
- 在处理较大图表时的浏览器性能
- 任何令人困惑或明显错误的地方
我特别感兴趣的是教师在课堂上使用该工具的看法。
这是一个纯HTML/JS项目 — 无需账户,无追踪,无广告。
返回首页
最新
我正在准备将一些代码开源,但我明确不希望它被用于以任何方式训练人工智能。有没有什么开源许可证可以禁止这种使用?
受最近来自 dosaygo-studio 的投稿启发的 AI 预测实验 <a href="https://news.ycombinator.com/from?site=dosaygo-studio">https://news.ycombinator.com/from?site=dosaygo-studio</a>
嘿,HN,
GitHub上有数百个壁纸仓库,里面有成千上万的图片,但浏览这些图片的过程非常痛苦。要么你需要将几GB的文件克隆到本地,要么就只能一个一个地通过文件浏览器点击查看。
因此,我创建了WALL·E Gallery。你可以使用现有的集合,或者粘贴一个仓库的URL→即可获得即时画廊。
它是如何工作的:
- 通过GitHub获取仓库树(无需克隆)
- 代理缩略图(约50KB,而不是10MB的原图)
- 也支持私有仓库(需要GitHub令牌)
无限滚动、搜索、黑暗模式、移动设备友好、自托管。
无需账户,无需追踪。
在线地址: [https://walle.theblank.club](https://walle.theblank.club)
源代码: [https://github.com/amitray007/wall-e](https://github.com/amitray007/wall-e)
欢迎分享你的建议和反馈。
另外,我确实是从这里找到了我的桌面壁纸。
我想分享一个我维护了两年的项目:一个强大的Word插件,名为Word-GPT-Plus。它将现代人工智能和代理功能直接集成到您的文档工作流程中。
我最近对这个项目进行了全面重写,采用了现代化的用户界面,并新增了“代理模式”,用于处理Word中的复杂多步骤任务,以及可以被大型语言模型(LLM)使用的网页获取/搜索和文档操作等多个工具。
欢迎任何反馈和批评!
<p>代码库:<a href="https://github.com/Kuingsmile/word-GPT-Plus" rel="nofollow">https://github.com/Kuingsmile/word-GPT-Plus</a>
我编写了一个类型检查器(minfern - <a href="https://github.com/sinelaw/minfern" rel="nofollow">https://github.com/sinelaw/minfern</a>),用于一个不需要转译的 JavaScript 子集。它接受有效的 JavaScript 作为输入,并允许一部分 JavaScript 代码通过检查。无需转译或编译,输入的代码可以直接运行。
<p>在线试用:<a href="https://sinelaw.github.io/minfern/" rel="nofollow">https://sinelaw.github.io/minfern/</a></p>
它可以用于检查针对普通 JavaScript 运行时或像 mquickjs 这样的运行时的代码(尽管 infern 更严格,但也允许像 'const' 这样的用法,而 mquickjs 不允许)。minfern 基于我在 2015 年编写的 Infernu 的类型系统,但实现上更简洁,结构更清晰。
<p>非常简单的示例:</p>
<pre><code> function calculateTotal(product, quantity) {
return product.price * quantity;
}
var item = {
name: "无线鼠标",
cost: 25 // 注意属性名是 'cost',而不是 'price'
};
console.log(calculateTotal(item, 2));
</code></pre>
输出:
<pre><code> 错误:在类型 {cost: Number, name: String} 中未找到属性 'price'
╭─[ tests/example_error.js:11:13 ]
│
11 │ console.log(calculateTotal(item, 2));
│ ───────────┬───────────
│ ╰───────────── 在类型 {cost: Number, name: String} 中未找到属性 'price'
────╯
</code></pre>
类型系统特性:
<p>- 完整的类型推断和原则类型,支持类型注解</p>
<p>- 参数多态(即“泛型函数”)</p>
<p>- 结构类型与行类型多态</p>
<p>- 对象方法类型与等递归类型(用于 self/“this”)</p>
<p>- 多态对象方法(仍被视为等级-1)</p>
<p>- 基本约束“Plus a”和“Indexable a”,允许 + 和 [] 应用于不同类型,如数字、字符串、数组。</p>
这允许检查一部分 JavaScript 表达式。
<p>一些 JavaScript 习惯用法在此系统中不被允许:</p>
<p>- 不支持联合类型(设计选择) - 返回值、变量、数组等必须具有单一类型。目前也不支持返回 null/undefined,未来可以通过添加 Optional 作为类型来解决,但会使原则类型变得更复杂。</p>
<p>- 不支持和类型(尚未) - 这解释了我为什么没有添加 Optional<T>,我认为和类型将适合类型系统,并且是可行的。一旦添加,枚举也可以被表达。</p>
<p>- 值限制禁止在声明后重新赋值给多态变量(ML 风格)。</p>
<p>- 由于上述原因 - 不能像某些人在 JavaScript 中那样使用 && / || 运算符。这些运算符要求两侧具有相同的类型(不允许一侧为“undefined”)。</p>
<p>- 不进行类型强制转换,将数字转换为字符串(例如)需要使用 String() 构造函数。</p>
<p>- 可能还有其他限制,人们可能会将其视为类型系统的限制而非特性。</p>
免责声明:此类型检查器不提供任何保证。我不是语言专家。我没有证明其健全性,希望有专家能对此进行审查。尽管如此,在我尝试的所有测试中,它看起来都是正确的。它基于 HMF 和其他已发布的类型系统,但以不同的方式组合了这些内容。
<p>GitHub: <a href="https://github.com/sinelaw/minfern" rel="nofollow">https://github.com/sinelaw/minfern</a></p>