V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  charles0  ›  全部回复第 1 页 / 共 1 页
回复总数  5
不建议学 Scratch ,直接从 Python 开始学就行;视频或者书本其实没那么重要,有就行了,多写点代码,弄点有趣的东西,然后不懂的去问 AI (Claude/GPT-4/DeepSeek),比如"class 是什么"这种问题都可以让 AI 回答,AI 也能解释代码怎么工作以及提供改进建议。
3 小时 5 分钟前
回复了 nnegier 创建的主题 程序员 可以讲下你看到的编程语言的美吗?
@charles0 注意这上面的缩进没了
3 小时 6 分钟前
回复了 nnegier 创建的主题 程序员 可以讲下你看到的编程语言的美吗?
一个微软研究院的编程语言[Koka]( https://github.com/koka-lang/koka),函数式强类型,用 algebraic effect 管理任意的副作用(可用来实现协程和 async/await 等等),它非常漂亮和统一,在语法和语义上都非常优雅,体现在它有一个非常小的核心语言子集,其它语言构造都可以转化成核心语言; while 只是一个普通的标准库函数;所有圆括号永远先求值而所有花括号都会后续求值零次/一次/多次(作为匿名函数);使用类似 Python 的缩进来省略 C 风格的花括号;和 Rust 一样函数块的最后一个表达式作为返回值;函数式语言标配的类型推导和模式匹配;所有 a.f 都等价于 f(a) ......
这个编程语言属于研究性质,可能对于缺少函数式编程背景的人来说有点难懂,而且资料较少,需要参考它的论文、文档、示例还有测试用例,一个例子如下:
```
// A custom generator effect (which is polymorphic)
effect yield<a>
fun yield(x: a): ()

// Traverse a list and yield the elements (which is also polymorphic) with 'yield' effect
fun traverse(xs: list<a>): yield<a> ()
match xs
Cons(x,xx) -> { yield(x); traverse(xx) }
Nil -> ()

fun main(): console ()
with fun yield(i: int) // Handles the 'yield' effect
println("yielded " ++ i.show) // Printing requires 'console' effect
[1,2,3].traverse
```
61 天前
回复了 hez2010 创建的主题 程序员 运行 100 万个异步并发任务需要多少内存
@lesismal
goroutine 按定义不是协程,Go 语言官方的文档也从未直接称其为协程
你可以直接叫它 goroutine ,不用翻译了,我相信 Go 语言设计的时候选择发明这个词是有原因的
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1994 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 13ms · UTC 12:58 · PVG 20:58 · LAX 04:58 · JFK 07:58
Developed with CodeLauncher
♥ Do have faith in what you're doing.