#py 周刊
#learn visualize 交互式py学习
numpy-pandas, cupy-cuDF
from rich import inspect: py版的 devtools
textual.binding UI: 手动实现命令行 ChatGPT
命令行 MSPaint
#web #ml 支持向量列的数据库
asyncio 用线程池优化文件读取
Mpire: A Python package for easier and faster multiprocessing https://github.com/sybrenjansen/mpire
#rust py异步流读取 JSON
py的元编程FFI:
jupyterSQL 教程
java
#ce CPython如何编译源代码
#learn visualize 交互式py学习
conda install -c conda-forge lpython
在使用dict时比 numba.njit 编译快一倍 . cython3 最近更新就不提了numpy-pandas, cupy-cuDF
pip install jupyter-ai
可以用 %%ai chatgpt -f math,html,.
免费访问AI,避免复制粘贴了match case:
已经可替代 elif from rich import inspect: py版的 devtools
textual.binding UI: 手动实现命令行 ChatGPT
命令行 MSPaint
#web #ml 支持向量列的数据库
asyncio 用线程池优化文件读取
Mpire: A Python package for easier and faster multiprocessing https://github.com/sybrenjansen/mpire
#rust py异步流读取 JSON
py的元编程FFI:
jupyterSQL 教程
java
from jpype import startJVM, shutdownJVM, java
startJVM(convertStrings=False)
java.lang.System.out.println("hello world")
java.util.Random().nextInt(10)
js import pythonmonkey as js; js.eval("console.log")('hello, world')
#ce CPython如何编译源代码
Telegram
Newlearnerの自留地
#Python潮流周刊 #Newsletter
👉Python 潮流周刊#14:Lpython 高性能编译器、Python 与 JavaScript 实现互通
🦄文章&教程
1、LPython:新颖、高性能、适用于多平台的 Python 编译器
2、Cython 3.0.0 的文档
(附详解历时五年的 Cython3.0 都发生了哪些变化 )
3、Python 中使用 Pandas 和 NumPy 计算变异系数
4、Jupyter 中的生成式 AI
5、Python 中的结构化模式匹配
6、使用 Rich…
👉Python 潮流周刊#14:Lpython 高性能编译器、Python 与 JavaScript 实现互通
🦄文章&教程
1、LPython:新颖、高性能、适用于多平台的 Python 编译器
2、Cython 3.0.0 的文档
(附详解历时五年的 Cython3.0 都发生了哪些变化 )
3、Python 中使用 Pandas 和 NumPy 计算变异系数
4、Jupyter 中的生成式 AI
5、Python 中的结构化模式匹配
6、使用 Rich…
duangsuse::Echo
#bing #code Hackr/2023 列出了 40 多个常见的 Android 面试问题和答案,涵盖了 Android 的构建过程、IDE工具、AIDL、Fragment(单页历史栈PJAX)、Activity GH 仓库收集了更多,如协程、Flow API、Retrofit、Room javapoint - 架构、四大组件、通知、WebView、布局、动画、广播接收器、数据存储等主题 Looper是按时间点排序的Channel<T>(任意线程add,回调pop) 触发“消息T”为Event(what…
#js #web 看到个同道也写了 makeRpc() ,直接把 jsm 全局函数暴露为各种Node HTTP接口,实现了个鉴权KV..
JSONP 跨域也是这样调用的,只是json外面多了个 callback()
tRPC – Move Fast and Break Nothing. End-to-end typesafe APIs made easy https://trpc.io/
JSONP 跨域也是这样调用的,只是json外面多了个 callback()
tRPC – Move Fast and Break Nothing. End-to-end typesafe APIs made easy https://trpc.io/
知乎专栏
神奇的 http-modular 魔法,让前端不用封装接口
最近突发奇想,研究出了一个神奇的“编程魔法”,我把这个思想封装成了一个 Node.js 库,叫做 http-modular。这个想法的核心是,将服务端的 HTTP 接口转换成符合 ESM 规范的 JavaScript 代码,然后将它直接通过浏…
duangsuse::Echo
#py 周刊 #ts Mypy: 1.5 Mypy 是 Python 的静态类型检查工具,1.5 版本主要功能有: @overrride 、更灵活的 TypedDict(字面创建的 dataclass) 创建和更新、可显示错误代码的文档、改进了泛型函数的类型推断、__slots__ 的优化、步进 Python 3.12 #ai 整理和预处理pdf文件,让GPT访问 from bot import Retriever, llm_reply #backend 用 numpy, 线程池 优化数学区间求和函数…
#cpp #bilibili std::lists 谈恋爱, BV1ak4y137vf 音源
#github #ai bot Sweep: 用提issue的方式让AI生成项目文件、添加功能
#web #security Dashy 的作者开源 🕵️ Web Check:网站信息收集器 官网
#life Little Big World, 壮观的无人机延时摄影、移轴摄影(边缘模糊)「小人国大世界」的视频网站
将地球上最美丽、最有趣的地方变成了可爱的微型模型,里面有大量的国外不同城市的这种微型模型视频,很适合欣赏。
#tool Mac: “ • 三等奖(8 名):赤友数据恢复 Mac 一年版 / 赤友右键超人 一年版 / 熊猫吃短信 2 一年版 / 优效日历 一年版 / Air Explorer Pro 一年版 / Manico 专业版
#apple 作品🏆 SixD (SwiftUI & Interaction Design)的作者开发这款App来源于他自己的一个愿景:「创造一个设计师与开发者之间的桥梁」。
1️⃣ 通过交互式指南学习 UI 设计基础:
你能扮演一个 UI 设计师,帮助开发者 Nina 来完善论坛 App。这样,也能学习到很多 UI 相关的知识,如改变背景颜色、强调颜色,如何对齐元素,改变图标,改变字体设置、层级、间距,圆角、边距。
2️⃣ 在 SwiftUI Lab 中学习每个元素(例如颜色、字体、组建布局、导航、选择器等内容)的使用和 SwiftUI 代码,
除此之外,App 还支持学习 Apple 的一些偏门 API 们的使用,例如 AR Quick Look,MapKit,PencilKit 等内容。
#github #ai bot Sweep: 用提issue的方式让AI生成项目文件、添加功能
#web #security Dashy 的作者开源 🕵️ Web Check:网站信息收集器 官网
#life Little Big World, 壮观的无人机延时摄影、移轴摄影(边缘模糊)「小人国大世界」的视频网站
将地球上最美丽、最有趣的地方变成了可爱的微型模型,里面有大量的国外不同城市的这种微型模型视频,很适合欣赏。
#tool Mac: “ • 三等奖(8 名):赤友数据恢复 Mac 一年版 / 赤友右键超人 一年版 / 熊猫吃短信 2 一年版 / 优效日历 一年版 / Air Explorer Pro 一年版 / Manico 专业版
#apple 作品🏆 SixD (SwiftUI & Interaction Design)的作者开发这款App来源于他自己的一个愿景:「创造一个设计师与开发者之间的桥梁」。
1️⃣ 通过交互式指南学习 UI 设计基础:
你能扮演一个 UI 设计师,帮助开发者 Nina 来完善论坛 App。这样,也能学习到很多 UI 相关的知识,如改变背景颜色、强调颜色,如何对齐元素,改变图标,改变字体设置、层级、间距,圆角、边距。
2️⃣ 在 SwiftUI Lab 中学习每个元素(例如颜色、字体、组建布局、导航、选择器等内容)的使用和 SwiftUI 代码,
除此之外,App 还支持学习 Apple 的一些偏门 API 们的使用,例如 AR Quick Look,MapKit,PencilKit 等内容。
YouTube
ちょっかい問題という曲を作りました。#shorts #ボカロ #音源素材
duangsuse::Echo
#dev 🤔 我正在考虑以后做 #js 技术讨论的话锋是激进,还是收敛 A. 作为一个技术人,我不维持朋友而只有“同道” ,我不想因为会“使人不悦”而故意不做批评, 我讨厌势利胜过事技术的人,无论是金钱名望还是自负而“得利” B. 但是大家都是做实事的(不管在软件供应链的哪端),不应该以自认为的好坏去 judge 别人的框架和技术栈、选型;大家成长的环境不同,AI时代就不该有信息差的优越感,用鼓励替代批评 我最近在设计单/多页/动画 的JS框架"EQ",基本把所需的元编程技术验证了,是和 JSX 届的…
#js #web 看到一些有趣的框架“合定本”
为什么感觉svelte其实才是vue3?
EQ的无组件示范比 Vue3 难看的多(禁止局部变量级的“响应性”,只允许变量间关系)
但接入新组件时,EQ的低样板和一致性都比 Svelte 好,而且兼容OOP方法
考虑到 Vue3 和 Svelte 对'onvar事件'的支持都是“黑魔法”,而 EQ 可以勉强自解释 app.it.n 的响应性,它在和ES6的协作上是十分优秀的; 希望尽早定稿
为什么感觉svelte其实才是vue3?
//Svelte 旧&新
let {n} = this.get();
this.set({
n: n + 1
});
let n=0; n+=1
//React 组件&组合
let {n}=this.state
this.setState({n:n+1}) //注意, 只 n+=1 也要把上行一块写,因此“改进”发生了..
const [n, setN] = useState(props.n)
setN(n+1) //🤮
//Vue3
let {n}=defineProps(props)
n++
//EQ 无&有组件
let app={n:0}, {n}=app.it
is.ST({n}, localStorage)
//n.onvar=say
n.v++ , app.n++
ee.main=({n=0})=>(
is.ST({n}, env.url),
button(
wOp({tap() { app.n+=1 } }), n
)
)
EQ的无组件示范比 Vue3 难看的多(禁止局部变量级的“响应性”,只允许变量间关系)
但接入新组件时,EQ的低样板和一致性都比 Svelte 好,而且兼容OOP方法
考虑到 Vue3 和 Svelte 对'onvar事件'的支持都是“黑魔法”,而 EQ 可以勉强自解释 app.it.n 的响应性,它在和ES6的协作上是十分优秀的; 希望尽早定稿
Zhihu
为什么感觉svelte其实才是vue3? - 知乎
作为后起之秀,Svelte到底是怎么俘获大批开发者的呢?我们先从它的特性开始说起。Svelte特性 简洁的语法…
duangsuse::Echo
#py #math 《优雅不是奢侈品》 “如何才能让编程者们相信,简单性和清晰性——简而言之:数学家所说的“优雅”——不是可有可无的奢侈品,而是决定成功与失败的关键因素?” ― Edsger W. Dijkstra,“计算机著作精选:个人观点”,第 347 页。 简单明了的代码就是优雅的代码。这些都是代码中非常理想的属性。Dijkstra 又补充道: “……在软件不可靠性的情况下,最大的成本因素是复杂。 一个可靠的(因此简单的)程序的开发和使用成本,比一个(复杂的因此)不可靠的程序要廉价。” 人们…
#py 周刊
- 《优雅不是奢侈品》
- nogil 最新情报
- #web Django ORM 最佳实践
- Django 自带的JWT 路径验证和登录页
- #ts 阮一峰 入门, 纯JS入门
- #linux #rust Nush: 不是 Powershell
- #js npm依赖图
- #ai #tool realsizer4x 超分辨
- #rust
- #ui Toga: 跨平台的 TkGUI
- #ml Viberary: 开源书籍检索引擎
- Khan 为何从Py2移植到 kt,go
- #parallel 用asyncio分享查询,防止缓存失效时并发卡爆
- #plt Rust vs Idris,Zig: 渐强类型的解药 #1
单进程 cron:
- 奇怪的for赋值, 魔术方法
实现 lazy load:
⭐️
#code 修改语法
#ts
#1为什么静态类型的C,Go,C++ 不是弱检查 就是太复杂
代码练习: 不需要
int[10] 的实质、 #Kt 类型推导的原理
- 《优雅不是奢侈品》
- nogil 最新情报
- #web Django ORM 最佳实践
- Django 自带的JWT 路径验证和登录页
- #ts 阮一峰 入门, 纯JS入门
- #linux #rust Nush: 不是 Powershell
- #js npm依赖图
- #ai #tool realsizer4x 超分辨
- #rust
pixi add cowpy
强化pip- #ui Toga: 跨平台的 TkGUI
- #ml Viberary: 开源书籍检索引擎
- Khan 为何从Py2移植到 kt,go
- #parallel 用asyncio分享查询,防止缓存失效时并发卡爆
- #plt Rust vs Idris,Zig: 渐强类型的解药 #1
单进程 cron:
from apscheduler.schedulers.background import BackgroundScheduler并行 multiprocessing: #2
cron = BackgroundScheduler(jobstores=sqlite)
.add_job(print, 'interval', seconds=5)
.start()
with mpire.WorkerPool(n_jobs=5) as pool:- 修改语法ASDL,实现
results = pool.map(getFiles, range(10), progress_bar=True)
map( (x)=>x*x, [1])
[Parser/Python.asdl] [30行实现]- 奇怪的for赋值, 魔术方法
from xx import*
的明确化:设置好 xx.__all__ = [exports
]实现 lazy load:
importlib.import_module
⭐️
import pyforest
自动导入np,pd 等变量#code 修改语法
__import__('cv2')
- from lazy import cv2— 仅供学习,import 语句本可以是局部。 (GPT怎么变蠢了
import types,sys
class lazy(types.ModuleType):
def __getattr__(self, mod):
import importlib.util as _
if None==(r:=sys.modules.get(mod)):
id = _.find_spec(mod)
# get it inserted into sys.modules.
_.LazyLoader(id.loader).exec_module(r:=_.module_from_spec(id))
return r
sys.modules['lazy']=lazy('-L imports')
#ts
#1为什么静态类型的C,Go,C++ 不是弱检查 就是太复杂
代码练习: 不需要
type WTF<> =
就可以检查 htmlTag, funcPipe, nthArg, printf("\d") 等调用的类型 int[10] 的实质、 #Kt 类型推导的原理
Telegram
Newlearnerの自留地
#Python潮流周刊 #Newsletter
Python 潮流周刊#16:优雅重要么?如何写出 Pythonic 的代码?
🦄文章&教程
1、写代码时,优雅有意义吗?
2、Python Asyncio实践--高并发下如何防止缓存击穿
3、高效定时任务处理:深入学习 Python 中 APScheduler 库的奥秘
4、CPython 开发实战:魔改 lambda 函数
5、CPython 是如何实现引用计数的?
6、使用 Importlib 实现 Python 延迟加载
7、使用 Python…
Python 潮流周刊#16:优雅重要么?如何写出 Pythonic 的代码?
🦄文章&教程
1、写代码时,优雅有意义吗?
2、Python Asyncio实践--高并发下如何防止缓存击穿
3、高效定时任务处理:深入学习 Python 中 APScheduler 库的奥秘
4、CPython 开发实战:魔改 lambda 函数
5、CPython 是如何实现引用计数的?
6、使用 Importlib 实现 Python 延迟加载
7、使用 Python…
duangsuse::Echo
现在得出个理论,我直接跪了😨 obj.to({k:v1}).as(_=>k) 两词就能概括EQ的“响应式系统”,这两个词也适用于 x, 和 [x] 即遍历与map wOp 事件只会导致 wSty,wKV 变量的两类结果: - cnt(x=>x+1), dialog(q=>$Y) 'to赋值' - fmt.as(x=>`Hello ${x}`), html`text ${var}`, Eq.at({sliders},_=>) 返回 {ref:}.it 'as映射' 也就是所谓的 State-onhandle…
#math #web 看来想完成EqvJS的设计,还要简化自己之前的许多作品里的技术 (图: easing 曲线, Svelte
ease-out 代表先快后慢
#apple #tool Epic Easing
- easings.net
- animejs.com
#dalao https://lisyarus.github.io/blog/programming/2023/02/21/exponential-smoothing.html#:~:text=speeds%20up%20naturally%20if%20you%20click%20fast
PID 自然弹性动画
后来想了下,觉得这“CSS函数工坊” 是可以保留。 -ease =先慢后快, ease() =inout, ease(ball) 先弹跳
ease-out 代表先快后慢
#apple #tool Epic Easing
- easings.net
- animejs.com
#dalao https://lisyarus.github.io/blog/programming/2023/02/21/exponential-smoothing.html#:~:text=speeds%20up%20naturally%20if%20you%20click%20fast
PID 自然弹性动画
后来想了下,觉得这“CSS函数工坊” 是可以保留。 -ease =先慢后快, ease() =inout, ease(ball) 先弹跳
duangsuse::Echo
#sql #ts Prolog 牛逼! 正确的关系式搜索+ 同时实现 parse 和 toStr 😱 #zhihu 灵感来源 e(E) -->{E = [I,Ea,Eb]}, %重写规则, 'eX'为优先级 %利用 链|e1(E) 括住内"*/" e1(Ea), op(I,"+-"), e(Eb); e1(E). e1(E) -->{E = [I,Ea,Eb]}, e2(Ea), op(I," */"), e1(Eb); e2(E). e2(X) --> number(X); ("(",…
添加个上文:组件 比如是
😑感觉有点不真实…… 解析器 parser 的技术跑到网页数据绑定上了
之前我想要这种“真正的双向绑定”,但是一直没想好列表和分支节点的API ,各种特判魔法
没想到,最后是以递归下降法,简化前端编程、提升节点复用
🤪有点扯。但看起来挺自然且简洁
仔细想想,HTML自定义节点,不就是语法的“非终结符”吗…… 被append remove啥的骗了那么久
没想到和被IDE更新的代码编辑模型是同一种,因为 #PLT 不重视单次解析后的“更改” ,把这两大类问题都搞复杂了
#statement #web
有点哭笑不得,我就是讨厌PLT才玩前端, 结果找到的最优解,仍然是关于变量关系、递归下降,而且还是顺“响应式”Vue它们的潮流
编程界发展了一圈 回到可变量和递归解构...
感情是FP和Prolog的前辈太死板,才留了UI,UX给前端界造魔法.. 但是,我希望,到今年为止了。
给大脑腾出点空间,别把精力浪费在尖括号和隐形的“优化”上
ee.Count=({n=0}, inc=x=>x+1)=>
div( p(n),
button(wOp({tap:n(inc)}), n,"+1"))
😑感觉有点不真实…… 解析器 parser 的技术跑到网页数据绑定上了
之前我想要这种“真正的双向绑定”,但是一直没想好列表和分支节点的API ,各种特判魔法
没想到,最后是以递归下降法,简化前端编程、提升节点复用
🤪有点扯。但看起来挺自然且简洁
仔细想想,HTML自定义节点,不就是语法的“非终结符”吗…… 被append remove啥的骗了那么久
没想到和被IDE更新的代码编辑模型是同一种,因为 #PLT 不重视单次解析后的“更改” ,把这两大类问题都搞复杂了
#statement #web
有点哭笑不得,我就是讨厌PLT才玩前端, 结果找到的最优解,仍然是关于变量关系、递归下降,而且还是顺“响应式”Vue它们的潮流
编程界发展了一圈 回到可变量和递归解构...
感情是FP和Prolog的前辈太死板,才留了UI,UX给前端界造魔法.. 但是,我希望,到今年为止了。
给大脑腾出点空间,别把精力浪费在尖括号和隐形的“优化”上
duangsuse::Echo
复制别人的技巧并不难。但没有魔法,就是最终极的魔法呀。 前端界只关心HTML 的人太多了,我的框架可不会只在UI上有用。 前端界被XML也框得太深了,而且明知道React难看还去抄hooks 真的聪明到 一点都不懂设计 React hydrate 无非就是对节点的那一侧做Memo,但包含“协调”在内,它引入了太多步骤,而 Svelte 又太魔法;它们也不过是对DOM和[{}] 做着“合一”,只是它们对JS侧太轻视了,很多技巧放JS里是独立的术语也不会有的。 他们一开始就没想好DOM模板各种用途下的本…
一些有意思的 #web 跑分
当然,这些只是用来反思对“黑科技”的过度迷信,因为JS根本不属于瓶颈—哪怕慢100倍都是 <1ms
[].join 对正常的示例都比+=更快,偏偏许多JSer把
V8 甚至为此修复了 React number preventExtensions 时的性能断层
Firefox 不能实现跨页 transfer(Blob )
强类型
Scroll listener 比 IntersectionObserver 慢一倍
当然,这些只是用来反思对“黑科技”的过度迷信,因为JS根本不属于瓶颈—哪怕慢100倍都是 <1ms
[].join 对正常的示例都比+=更快,偏偏许多JSer把
str``
的情况拿来跑分Object.create(原型=null)
比{} 还慢, Set Map 更慢const,let
一样 ,箭头和function一样, Object.freeze()
慢百倍-但只seal() 时就一样。不要低估编译器V8 甚至为此修复了 React number preventExtensions 时的性能断层
Proxy 比 defineProperty
慢十倍createDocumentFragment()
更慢 - “减少 repaint” 正是VDOM的一个“特性”node.remove()
等于[hidden]。仍然可以重新appendFirefox 不能实现跨页 transfer(Blob )
强类型
CSS.px
更慢 ,似乎内核更接受字符串样式content="width=device-width"
或者说 touch-action: manipulation
的来历 Scroll listener 比 IntersectionObserver 慢一倍
Stack Overflow
Why is string concatenation faster than array join?
Today, I read this thread about the speed of string concatenation.
Surprisingly, string concatenation was the winner:
http://jsben.ch/#/OJ3vo
The result was opposite of what I thought. Besides, t...
Surprisingly, string concatenation was the winner:
http://jsben.ch/#/OJ3vo
The result was opposite of what I thought. Besides, t...
duangsuse::Echo
#py 周刊 #recommend #tool 带有 "Android 子系统", taskmgr,... 的网页版Win12 demo 🎨 #algorithm Hello Algo 多语言实例 #tool EasySpider +可视化编程 #android 高级包管理器 js: await using fp = openFile() Flask 深入探索: 请求上文、会话、CORS fastapi-users:开箱即用的 FastAPI 用户管理库 Django 发送带有验证链接的电子邮件…
#web 前端真的是需要新血液了…… 连个绝对定位和drag,resize 都那么稀罕
https://zhuanlan.zhihu.com/p/654984542
htmx 也是魔怔了,React(SSR组件)确实烂,但把烂代码放在node侧,那也是一样的,而是是反直觉的。 Vue都算最良心的了
htmx 在Django, Streamlit 之类爆火可能取决于前后端谁主场的问题, 反正我会站JS,py和直连DOM比谁更成熟不用说的
Van 支持 hydrate 了,好吧…… 好像只+1行代码 ,看起来就是纯replace
本来我想去建议Tao加个
后来觉得算了,只支持“选中”也怪割裂的,何况它的列表模板还在用map 甚至不支持真正的hydrate,可以遇见到它以后也很难支持:低抽象度这时是缺点。Van和Eqv差得太多了
https://zhuanlan.zhihu.com/p/654984542
htmx 也是魔怔了,React(SSR组件)确实烂,但把烂代码放在node侧,那也是一样的,而是是反直觉的。 Vue都算最良心的了
htmx 在Django, Streamlit 之类爆火可能取决于前后端谁主场的问题, 反正我会站JS,py和直连DOM比谁更成熟不用说的
Van 支持 hydrate 了,好吧…… 好像只+1行代码 ,看起来就是纯replace
init: Number(dom.getAttribute("data-counter")),
再看到 interface Props {
和 const{} = van.tags
我有点失望,不过 link({rel: "icon", href: "logo.svg"})
确实比 link(wKV({}))
好看,也更一致…… 很多接口要定型了。😐本来我想去建议Tao加个
state(0)(x=>x+1)
的用法,因为只有非JSX非模板的框架,能用好这种写法后来觉得算了,只支持“选中”也怪割裂的,何况它的列表模板还在用map 甚至不支持真正的hydrate,可以遇见到它以后也很难支持:低抽象度这时是缺点。Van和Eqv差得太多了
知乎专栏
看完这位小哥的GitHub,我沉默了
就在昨天,一个名为win12的开源项目一度冲上了GitHub的Trending热榜。 而且最近项目的Star量也在飙升,目前已经获得了2.2k+的Star标星。 出于好奇,点进去看了看。好家伙,项目README里写道这是一个14岁的初中生所…