正常なこちら側

:white_check_mark: 没有 CONTENT WARNING

This topic contains seijōna content.

本主题含有正常内容。

You may not see any content that is not suitable for viewing in public.

你应该不会在这里看到各种各样不适合在公共场合看到的内容。

This is my personal topic. You are free to choose to mute this topic from your timeline.

这是我的个人楼。你可以自由的选择屏蔽这个话题,让它不出现在你的时间线上。


荒谬的另一面:不条理の向こう側 - 天空岛 - Futarino

8 个赞

什么玩意,lOr 写的跟 10r 一样

原来 IO circle 是个 monad 实例

7 个赞

SolidJS 的响应式我觉得设计的很不错。

React 的粒度太粗了。可以说想法比较的简单,就是纯粹的 \text{View} = f(\text{state}) ,一旦 state 变了,重新跑一遍函数。但是这样粒度就到了函数级,优化比较差。

Vue 的 ref 想法倒是不错,但是隐式的 proxy 太难受了。类型体操也很抽象,如果 RefRef 会直接遮蔽掉内层的 .value 很隐式。导致 ref({ foo: ref({ bar: "baz" })}) 推出的类型比较奇怪。

而且要用 computed 也觉得很怪,因为按理说响应才应该是默认的。

SolidJS 的 createSignal 设计似乎最好。

import { render } from "solid-js/web";
import { createSignal } from "solid-js";
import { For } from "solid-js";

function Counter() {
  const [count, setCount] = createSignal(1);
  const increment = () => setCount((count) => count + 1);

  console.log("init the counter");

  const arr = () => Array.from({ length: count() }).map((_, x) => x + count());

  return (
    <div>
      <button type="button" onClick={increment}>
        {count()}
      </button>
      <p>
        Something1 container
        <For each={arr()}>{(item) => <li>{something(item)}</li>}</For>
      </p>
    </div>
  );
}

function something(count: number) {
  console.log("initing something with count = ", count);

  return <span> something id = {count}</span>;
}

render(() => <Counter />, document.getElementById("app")!);

可以发现很直观地,使用闭包把一个 signal 包起来就能让整体拥有响应式。熟练 vue 的人应该能很容易懂这是为什么。

5 个赞

无聊的大人。

童稚感和可读性有什么关系,想cosplay成熟的大人就直说(不喜欢谷歌喜欢苹果设计就直说

6 个赞

世界未解之谜:

  • 我的眼镜丢哪了??
  • 我的笔盖丢哪了??
  • 我的梳子丢哪了??
  • 我的镊子丢哪了??
  • 我的剪刀丢哪了??
  • 我的指甲刀去哪了??
8 个赞

好像是 call/cc 的形式化版本

之前看不懂 call/cc 不知道现在能不能

2 个赞
λ q : nat nat.
  λ n : nat.
    letcc ret : nat cont in
      let ms be
        fix ms is
          λ q : nat nat.
            λ n : nat.
              case n {
                z → s(z)
              | s(n’) →
                  case q z {
                    z → throw z to ret
                  | s(n’’) → (q z) × (ms (q ◦ succ) n’)
                  }
              }
      in
        ms q n

非常好 ML 风格,使我的头脑晕眩

2 个赞

谁懂这么厚一本书就 800KB 而拍张照片就比它大的救赎感

abbrev Harper PFPL.pdf

2 个赞

有时候觉得100万=1000x1000 真的是一个令人震撼的事情

1 个赞

为什么(

10×10×10居然就一千了

https://zhuanlan.zhihu.com/p/1946176384578856692

@10circle 来不来看看这个

我们的本科教育出了很大的问题。:cross_mark:
我们的教育确有问题 :white_check_mark:

感觉 jyy 老师在面试题里塞这个然后说本科教育出了很大问题也太欺负人了)

3 个赞

写ppt写到这个点,没空吃晚饭,方便面解决一下……

5 个赞

刚刚看到一个很有意思的论文 introduction

编译器可能太聪明了,会把你防止旁路攻击刻意写的代码给你优化掉

4 个赞

没学过最优化啥的,t2 完全没头绪()t3 感觉也是神秘题,就,一股超远古 ACM 味儿(?

其实感觉就是出题人觉得自己的题简单而已,这个事非常常见,比如在洛谷比赛里一般可以将出题人难度加一档作为实际难度

1 个赞