消逝于上海的市场和商店

柳林路服装市场

1980年10月19日,柳林路开设经营服装为主的小商品市场。

起初的柳林市场,卖节约领、尼龙包和玩具等。翌年,增成人服装、童装童袜和皮革制品等,达七十多个品种;从零售为主拓至批量销售。

1985年,柳林路成为上海第一个有活动摊房的专业服装市场。路两侧建PVC型塑料封闭式摊房,沿路破墙或改建开店,遂为全国闻名的服装市场。

……

flexbox 实现自适应图片九宫格布局

「九宫格」的布局是指:在一个正方形的容器中,以 3x3 排列共九个正方形的元素。当容器大小发生变化时,容器内部的九个元素尺寸也能随着容器大小而缩放,并保持正方形的外形。当容器内元素不满九个时,每行元素能够等比放大并撑满一行

Fournoas 说:

你爱工作,可工作爱你吗?

Ask not what your company can do for you, but what together we can do for loafing on the job.

认认真真上班,这根本不叫赚钱,这叫用劳动换取报酬。只有偷懒,在上班的时候划水摸鱼,你才从你老板那赚到了钱!

工人在劳动中耗费的力量越多,他亲手创造出来反对自身的,异己的对象世界的力量就越大,他本身,他的内部世界就越贫乏,归他所有的东西就越少。

Fournoas 说:

问:什么是历史虚无主义?

答:就是曾经发生过的事情,但是现在怎么也搜不到了。

如何使用 llhttp

llhttpNode.js v12 以上版本使用的 HTTP 解析器,代替了旧版的 http_parser。根据官方宣传,相较于旧版解析器,新版本解析器性能提升了 156%。llhttp 的主要代码由 Typescript 实现,描述了一个有限状态机,最终通过 llparse 将代码转换成 C 语言源代码。然而官方文档里根本没写如何生成 C 语言代码,只能自己探索了。

首先 clone 下 llhttp 的代码:

shellgit clone https://github.com/nodejs/llhttp

在项目根目录下能找到 Makefile 配置文件。打开看了下,并不是很复杂。这个 Makefile 配置仅支持 clang 编译器 和 Linux 操作系统。不过我们只需要生成 C 语言代码的部分就行了。

……

    Fournoas 说:

    司马璐的回忆录值得批判

    Windows 下编译 libuv

    在 Windows 下编译 libuv 需要先安装 Visual C++ Build ToolsCMake

    在 libuv 源代码目录下运行命令:

    powershellmkdir build
    cd build
    cmake .. -DBUILD_TESTING=ON
    cd ..
    cmake --build --config Release build

    ……

      Python 库资源收集

      收集了流行的 Python 库和资源。会不定期更新

      Nim 语言的动态分发机制

      Nim 是一款 Python 风格的静态类型语言。但事实上,除了缩进语法外,Nim 和 Python 并没有太多相似之处。相对于 Python,Nim 更多地吸收了 Ada 和 Lisp 等语言的特性。

      Nim 编译器通过生成 C 或 Obj-C 中间代码的方式来进行本地编译,所以需要依赖一套外部编译器。Nim 也可以生成 Javascript 代码。此外,还有以脚本方式运行的 NimScript

      OOP 的一个特性就是支持多态,而动态分发(Dynamic Dispatch)就是实现多态的基础。在讲解 Nim 的动态分发实现前,先讲一下其他语言是如何实现的。

      ……

      不要迷信卢曼卡片盒方法和双向链笔记

      卡片盒笔记方法是一种通过扁平化的链接来组织笔记的方法。事实上,卡片盒笔记也并非完全扁平化的,也存在结构化的索引表和枢纽笔记。

      双向链就是一种 trackback。简而言之,即A通过链接连接到B,那么B将自动生成对A的反向连接关系,当用户访问B时,也可以通过反向连接关系来回溯到A,从而让笔记系统形成一个可遍历的无向图。

      graph

      ……