V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  yazinnnn0  ›  全部回复第 1 页 / 共 21 页
回复总数  411
1  2  3  4  5  6  7  8  9  10 ... 21  
@zhonghanwen #15 哥, 你要是说有技术上产品上的交流, 好歹把 v2 当成简中版 hacker news 用, 别把 v2 当成抖音用
https://i.imgur.com/kuBosOu.png
有点幽默, 6 块钱的套壳费?
1 天前
回复了 wnpllrzodiac 创建的主题 问与答 10 岁小男孩 生日礼物推荐
RG34XX
没必要转成视频, 静态图就用-c:v mjpeg 编码成图片就行, 除非你要把歌词/字幕硬编码到图像里

比如

ffmpeg -i 封面图.jpg -i 2.主人笑的话我也开心.mp3 -i ./2.主人笑的话我也开心.mp3.vtt -c:v mjpeg -vf scale=1280:-1 -c:a libopus -b:a 192k -to 665.600000 -disposition:a:0 default -disposition:s:0 default 2.主人笑的话我也开心.mkv
12 天前
回复了 Sajo 创建的主题 汽车 24 岁,不是学生,预算 30 买车决赛圈
抢首发 yu7, 这车搞不好你开两年可以原价打 9 折卖出去
带着你爹去试车呀, 很多油车老顽固都是试了新能源之后立马真香的

多试试总归吃不了亏
arch+i3wm?
我在用 manjaro+kde, 感觉挺重的, 4G 内存感觉吃紧

要不你把交换文件设置到 8G 以上试试
15 天前
回复了 fire2y 创建的主题 汽车 我的情况需要买车么
别换, 经济好时国人爱面子, 经济不好时国人爱里子

此时此刻别因为面子原因乱花钱
Promise 借鉴了 Monad 的一些设计思想, 用 CPS 变换优化实现链式组合异步操作(解决异步的回调地狱)
async await 是类似于 Monad Comprehensions 的语法糖实现, 不过运行机制不一样, async await 依赖 javascript 运行时模型


原有的异步调用代码
asyncOp1((result1) => {
asyncOp2(result1, (result2) => {
asyncOp3(result2, (result3) => { /* ... */ });
});
});

Promise 优化之后的代码
asyncOp1()
.then((result1) => asyncOp2(result1))
.then((result2) => asyncOp3(result2))
.then((result3) => { /* ... */ });

使用 Monad Comprehensions 语法糖将中间变量从回调中取出来
result1 = await asyncOp1()
result2 = await asyncOp2(result1)
result3 = await asyncOp3(result2)


题外话, promise 不是标准的 monad, 但是有很多 monad 的特性, 比如统一的异常处理 (async await 之后就可以异步 try catch 了), 不然的话你想想每个回调都传一个 reject 参数来处理异常 (人肉 if err != nil 是吧)

所以说那些 go boy 用 if err != nil 来嘲笑 try catch 就挺逆天的, 学术界用几十年的时间来消除 errcode, 然后这玩意儿在 go boy 嘴里成最优雅的语言了😅

题外话 2, 其他语言的 Monad Comprehensions 语法糖举例
haskell
compute :: Maybe Int
compute = do
x <- Just 3
y <- Just 5
return (x + y) -- 结果为 Just 8

csharp
var query = from x in new[] { 1, 2 }
from y in new[] { 3, 4 }
select x + y; // 结果为 { 4, 5, 5, 6 }

fsharp
let asyncExample = async {
let! x = async { return 3 }
let! y = async { return 5 }
return x + y
}

scala
val compute: Option[Int] = for {
x <- Some(3)
y <- Some(5)
} yield x + y

swift
func compute() async -> Int {
let x = await fetchData()
let y = await processData(x)
return y
}

kotlin
suspend fun compute(): Int {
val x = async { fetchData() }
val y = async { processData(x.await()) }
return y.await()
}

java
没有😅

go
没有😅

rust
没有语法糖, 有个?(操作符)可以模拟类似功能(result option)

基本上后来兴起的工程向的语言都给异步相关的 api 实现了 monad comprehension, 一部分语言(fsharp kotlin 啥的)可以自定义语法

题外话 3
貌似一些 lisp people 极度反感 monad (和 go boy 殊途同归了属于是), clojure 社区里贴大字报明确反对标准库里添加 monad 实现, 吵了好几十条😅
17 天前
回复了 liudewa 创建的主题 汽车 雷车,为什么能把价格打下来
说实话苹果的造车项目不选择中国的供应链这件事我有点理解不了

bba 保时捷在燃油车行业叱诧风云百十年, 苹果造车项目刚启动就想骑在这些豪门头上拉粑粑, 结果把豪门得罪干净, 只能找日韩的二线供应商

另外厨子本身就跟中国政府的关系良好, 几乎年年来北京开会, 却担心政治风险不敢用中国供应链, 美帝不是商业帝国吗, 你世界第一市值的大公司游说不了一些国会议员? 马一龙危急关头投靠上海, 解救了特斯拉, 还和小强建立了友好的合作关系, 随着小强升任总理, 马一龙的产业在国内稳的一批(结合当前德国烧特斯拉有感), 而现在马一龙又是懂王身前的大红人, 中美政府通吃....

不懂厨子为啥投鼠忌器
20 天前
回复了 Liuman 创建的主题 汽车 买车决赛圈,新款宝马 X3 和理想 L8
教你咋说服爹妈

别说现在国产新势力有多么多么好, 你就说现在买 BBA 都落伍了, 都是土老帽才买
刚刚搜了一下, 现在日语常说的オナニー(紫薇)居然是德语词....
20 天前
回复了 afkool 创建的主题 程序员 如果 go、node、c#学一个推荐哪个?
没需求纯玩的话建议 scheme/racket, clojure, fsharp

排名有先后

clojure 和 fsharp 是很硬的工程向语言, 分别可以用 jvm 系和.net 系生态, 兴趣转职业也没问题

scheme/racket 是纯学术研究向, 用来开阔眼界
@JavasBoy
某 java 前沿框架 quarkus 里啥风格的代码都有, 现在 quarkus 支持的最低版本是 17, 源码里还有一对 java 7 风格的代码(匿名内部类), 也用人提交偏 fp 风格的(var 类型推到, final 局部变量)

https://i.imgur.com/8qiSHSO.png
https://i.imgur.com/jNynfWS.png

匿名内部类和 var 出现在同一段代码里, 风格是不是很分裂?

话说回来, quarkus 本来就衍生自 vertx, 而 vertx 有很强的 fp 思想, 能熟练编写 vertx 代码的 quarkus 贡献者为啥要手写匿名内部类, 这件事很奇怪
嗨, 说白了还是撅醒人和老古董的冲突

问几个问题
1. 一般声明局部变量的时候, 要不要声明为 final
2. 如果需要闭包的效果, 你要咋实现(1. 包成数组, 2. 包成原子引用 AtomicReference, 3. 新建个类)


作为 kotlin 撅醒人现在干活写 java 实在是太痛苦了
https://i.imgur.com/HKzp8cL.jpeg
有一说一, 有时候业务复杂度就到这种程度了, 不用 var/val 推断, 标明了具体类型就有可读性了吗?

要是有人能光看类型就才出来这玩意儿是干啥的, 那你就是这个👍
26 天前
回复了 zhangkai1024 创建的主题 生活 高中取消早晚自习老师激动得睡不着
@L4Linux #27
别说, china irl 上真有不少人认为李有那么大影响力

我的建议是, 如果李有那么大能耐, 不如直接去国务院做内参, 还发什么币啊
28 天前
回复了 mythace 创建的主题 职场话题 太抽象了,绷不住了
想明白一点, 大多数领导岗位都不需要专业技能, 他们负责揽活背锅, 你只是打工而已, 背锅的事让大人物去干
1  2  3  4  5  6  7  8  9  10 ... 21  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1122 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 45ms · UTC 18:38 · PVG 02:38 · LAX 11:38 · JFK 14:38
Developed with CodeLauncher
♥ Do have faith in what you're doing.