昨天发在kazv上的,感觉有必要转过来
subject:干预与痛苦
最开始决定和身边这只恋人来苏州住,有一部分是想看看有一些帮助下她能变好到什么程度吧。总是说寒涟漪救人救一半管杀不管埋,那我想看看我能不能帮忙做做另一半。现在她确实不自杀了,人也好多了,算是完成了半个目标,但我逐渐发现这好像并不是我想要的…
一面讲是对痛苦的态度。她们做干预总是说“理想情况,资源无限的话,什么人都可以让ta变好的”,然后插一脚说请活下去吧,是不是有点对痛苦本身不大尊重。痛苦与困境似乎是个永恒的东西,我是不是不应该和它们这样相处。作为一个能勉强理解痛苦的人,我说我也想死呀,说我不想吃药不想消毒,说五月是个好孩子,那我似乎也不应该跟她们去说“我就要你们活着”,这样很矛盾。
另一面讲,爱和“活着”也没什么必然联系。我不会说你不活了我就不爱你了,也不会说我爱你所以我就是要你活着,作为一个自己就想死的人,要是秉持这样的观点可太奇怪了。它们两个本来就不该挂钩,那我好像并没有什么理由一定要追求什么活着
以及我会感觉,似乎有些痛苦就是要自己承受的。我有我的苦难,难受了疼了躯体化了裂开了精神失常了,哪怕姐姐就在身边,这可能也就是我要经历的。群里讲难受的事情,看兔子姐姐总是在一边偷笑,以前还不太理解,现在会隐隐约约的觉得,似乎在连结之中,我们也是一个个原子的人,温暖呀陪伴呀别的一些社群连接的东西,似乎并不应该是我过去想的那样…我还不是很明白
那我现在会说祝你一切都好,可能比以前少一点奇怪的执念。我也不懂,但希望自己能多长大一些、姐姐们再多教一些…
April, with May just cut herself and sleepy
subject:干预与痛苦
最开始决定和身边这只恋人来苏州住,有一部分是想看看有一些帮助下她能变好到什么程度吧。总是说寒涟漪救人救一半管杀不管埋,那我想看看我能不能帮忙做做另一半。现在她确实不自杀了,人也好多了,算是完成了半个目标,但我逐渐发现这好像并不是我想要的…
一面讲是对痛苦的态度。她们做干预总是说“理想情况,资源无限的话,什么人都可以让ta变好的”,然后插一脚说请活下去吧,是不是有点对痛苦本身不大尊重。痛苦与困境似乎是个永恒的东西,我是不是不应该和它们这样相处。作为一个能勉强理解痛苦的人,我说我也想死呀,说我不想吃药不想消毒,说五月是个好孩子,那我似乎也不应该跟她们去说“我就要你们活着”,这样很矛盾。
另一面讲,爱和“活着”也没什么必然联系。我不会说你不活了我就不爱你了,也不会说我爱你所以我就是要你活着,作为一个自己就想死的人,要是秉持这样的观点可太奇怪了。它们两个本来就不该挂钩,那我好像并没有什么理由一定要追求什么活着
以及我会感觉,似乎有些痛苦就是要自己承受的。我有我的苦难,难受了疼了躯体化了裂开了精神失常了,哪怕姐姐就在身边,这可能也就是我要经历的。群里讲难受的事情,看兔子姐姐总是在一边偷笑,以前还不太理解,现在会隐隐约约的觉得,似乎在连结之中,我们也是一个个原子的人,温暖呀陪伴呀别的一些社群连接的东西,似乎并不应该是我过去想的那样…我还不是很明白
那我现在会说祝你一切都好,可能比以前少一点奇怪的执念。我也不懂,但希望自己能多长大一些、姐姐们再多教一些…
April, with May just cut herself and sleepy
Common Lisp的符号系统(一)
符号(symbol)是common lisp的基础之一,它控制着lisp的全局结构,包括全局变量、函数等。
符号被存储在 包(package)里。了解c++的大家会知道,一个程序中可以有多个命名空间(namespace),而一个命名空间中可以有无数个类、函数、变量等。lisp中的包就对应了命名空间,而所有的类、函数、变量就存在包中的符号里面。我们可以用list-all-packages函数列出所有包,再用do-symbols循环或(loop for sym being each symbol of <package>)这种loop语法来列出包中的所有符号,从而遍历当前lisp镜像中所有的类、函数、符号等一切信息。
符号是容器,可以把它当作一种高级的变量。区别是一个变量只能存一个值,而一个符号可以存很多很多东西。符号有数个基本属性:符号名(symbol-name)、符号所在的包(symbol-package)、符号值(symbol-value)、符号函数(symbol-function)、符号属性列表(symbol-plist)。如果你使用的是上世纪九十年代及以后的lisp(好吧大概没人不是),那还可以使用find-class查询到该符号对应的类。
符号名,getter为symbol-name。每个符号都一定要有一个名字,lisp所有符号默认为大写,符号名小写的会被打印成|foo|的形式。symbol-name没有setf method,但在很多实现里符号名并不是不可以修改的,我们可以通过像nstring-downcase这种副作用函数来直接修改符号名所在的内存地址的内容,从而达到修改符号名的目的,但这就是纯属好玩了,没有实际意义
符号值,getter为symbol-value,setter可以是(setf (symbol-value ‘foo) xxx)也可以是(set ‘foo xxx),或者(setq/setf foo xxx)。在把符号用作全局变量时,这是我们最常见的用法。详见我先前所写关于set,setq和setf的文章。
符号是可以没有值的,有类于许多语言中的变量值为NULL。如果符号没有值,它在读取时并不会返回nil(不像lua,大家总是以为common lisp的nil就相当于别的语言的NULL,但其实并不是 - nil也是一个值。它是t的子类,不信执行一下(typep nil t)试试(笑 )。使用boundp函数检测符号值是否为空,使用makunbound清空符号值。
当符号位于lambda表达式的第二至n项被求值时,会使用它的符号值。这就是我们把符号作为全局变量的用法。
符号属性列表(plist,lisp 中有两种作为数据结构的列表组织方式,property list和 assoc list,详见 https://acl.readthedocs.io/en/latest/zhCN/ch3-cn.html ),getter为symbol-plist,setter为(setf (symbol-plist ‘foo) xxx),默认值为nil,不可为空。可以使用标准plist操作函数的变体函数get、remprop 来操作单个属性,用法与getf、remf一致。属性列表使单个符号可以存储无限多的属性内容。
符号所在的包,getter为symbol-package。使用unintern函数把符号的包设置为nil,即没有包。符号没有包时,如果其引用归零就会进入垃圾回收流程。所以unintern函数是用来销毁一个符号的。
符号函数,getter为symbol- function,检测空值函数为fboundp,设为空值函数为fmakunbound。当位于lambda表达式的第一位被求值时会使用该符号的函数值。common lisp的函数分为多种类型:一般的函数function,只在编译时负责展开的宏macro,以及底层的会改变程序执行顺序的特殊操作符(special-operator) - 例如if就是特殊操作符,when就是一个展开为(if condition body… nil)的宏。使用special-operator-p判断symbol- function的结果是否为特殊操作符,macro-function函数判断其是否为宏。
函数本身是没有名字的。名字是什么?函数所附着的符号名或变量名。我们可以把符号里的函数提取出来,这时候为了方便起见我们会使用function函数。因为function函数太常用了,所以lisp标准给它分配了一个reader macro:#’。用#’foo来单独提取出函数本身并封装在闭包内,这样后续这个符号再被如何修改就都不会影响表达式的正常执行了。这样做的好处是我们可以把这个符号“用过即丢”:如果所有使用该函数的地方都用的是抽取的函数体而非以符号代函数的方式的话,程序在编译后就可以销毁该符号,甚至是销毁整个lisp符号系统与包系统,之后重新规划内存结构,让该lisp镜像成为一个像C++编译二进制一样纯静态的二进制,从而提高运行效率、缩小二进制大小,有利于打包分发;而坏处是如果我们提取出函数本体来用的话,我们就无法在后期执行时,通过动态修改符号函数的方式来动态改变所执行的函数了:每次调用该函数时,程序只会使用第一次编译时封存在闭包内的函数体,而不会通过符号来动态查询函数是什么。这会降低程序的灵活性,不利于增量开发(incremental development),不利于调试函数。
#lisp_daily
符号(symbol)是common lisp的基础之一,它控制着lisp的全局结构,包括全局变量、函数等。
符号被存储在 包(package)里。了解c++的大家会知道,一个程序中可以有多个命名空间(namespace),而一个命名空间中可以有无数个类、函数、变量等。lisp中的包就对应了命名空间,而所有的类、函数、变量就存在包中的符号里面。我们可以用list-all-packages函数列出所有包,再用do-symbols循环或(loop for sym being each symbol of <package>)这种loop语法来列出包中的所有符号,从而遍历当前lisp镜像中所有的类、函数、符号等一切信息。
符号是容器,可以把它当作一种高级的变量。区别是一个变量只能存一个值,而一个符号可以存很多很多东西。符号有数个基本属性:符号名(symbol-name)、符号所在的包(symbol-package)、符号值(symbol-value)、符号函数(symbol-function)、符号属性列表(symbol-plist)。如果你使用的是上世纪九十年代及以后的lisp(好吧大概没人不是),那还可以使用find-class查询到该符号对应的类。
符号名,getter为symbol-name。每个符号都一定要有一个名字,lisp所有符号默认为大写,符号名小写的会被打印成|foo|的形式。symbol-name没有setf method,但在很多实现里符号名并不是不可以修改的,我们可以通过像nstring-downcase这种副作用函数来直接修改符号名所在的内存地址的内容,从而达到修改符号名的目的,但这就是纯属好玩了,没有实际意义
符号值,getter为symbol-value,setter可以是(setf (symbol-value ‘foo) xxx)也可以是(set ‘foo xxx),或者(setq/setf foo xxx)。在把符号用作全局变量时,这是我们最常见的用法。详见我先前所写关于set,setq和setf的文章。
符号是可以没有值的,有类于许多语言中的变量值为NULL。如果符号没有值,它在读取时并不会返回nil(不像lua,大家总是以为common lisp的nil就相当于别的语言的NULL,但其实并不是 - nil也是一个值。它是t的子类,不信执行一下(typep nil t)试试(笑 )。使用boundp函数检测符号值是否为空,使用makunbound清空符号值。
当符号位于lambda表达式的第二至n项被求值时,会使用它的符号值。这就是我们把符号作为全局变量的用法。
符号属性列表(plist,lisp 中有两种作为数据结构的列表组织方式,property list和 assoc list,详见 https://acl.readthedocs.io/en/latest/zhCN/ch3-cn.html ),getter为symbol-plist,setter为(setf (symbol-plist ‘foo) xxx),默认值为nil,不可为空。可以使用标准plist操作函数的变体函数get、remprop 来操作单个属性,用法与getf、remf一致。属性列表使单个符号可以存储无限多的属性内容。
符号所在的包,getter为symbol-package。使用unintern函数把符号的包设置为nil,即没有包。符号没有包时,如果其引用归零就会进入垃圾回收流程。所以unintern函数是用来销毁一个符号的。
符号函数,getter为symbol- function,检测空值函数为fboundp,设为空值函数为fmakunbound。当位于lambda表达式的第一位被求值时会使用该符号的函数值。common lisp的函数分为多种类型:一般的函数function,只在编译时负责展开的宏macro,以及底层的会改变程序执行顺序的特殊操作符(special-operator) - 例如if就是特殊操作符,when就是一个展开为(if condition body… nil)的宏。使用special-operator-p判断symbol- function的结果是否为特殊操作符,macro-function函数判断其是否为宏。
函数本身是没有名字的。名字是什么?函数所附着的符号名或变量名。我们可以把符号里的函数提取出来,这时候为了方便起见我们会使用function函数。因为function函数太常用了,所以lisp标准给它分配了一个reader macro:#’。用#’foo来单独提取出函数本身并封装在闭包内,这样后续这个符号再被如何修改就都不会影响表达式的正常执行了。这样做的好处是我们可以把这个符号“用过即丢”:如果所有使用该函数的地方都用的是抽取的函数体而非以符号代函数的方式的话,程序在编译后就可以销毁该符号,甚至是销毁整个lisp符号系统与包系统,之后重新规划内存结构,让该lisp镜像成为一个像C++编译二进制一样纯静态的二进制,从而提高运行效率、缩小二进制大小,有利于打包分发;而坏处是如果我们提取出函数本体来用的话,我们就无法在后期执行时,通过动态修改符号函数的方式来动态改变所执行的函数了:每次调用该函数时,程序只会使用第一次编译时封存在闭包内的函数体,而不会通过符号来动态查询函数是什么。这会降低程序的灵活性,不利于增量开发(incremental development),不利于调试函数。
#lisp_daily
❤1
做了梦。
四月梦见了荷兰、和姐姐在一起、用水粉颜料画奖学金申请书、Minecraft和惊恐发作
五月梦见了极端糟糕的精神状态、没有颜色、喵噗、天灾、欺骗、逃难与象征学
总结是吃了药但我们的睡眠比较糟糕
四月梦见了荷兰、和姐姐在一起、用水粉颜料画奖学金申请书、Minecraft和惊恐发作
五月梦见了极端糟糕的精神状态、没有颜色、喵噗、天灾、欺骗、逃难与象征学
总结是吃了药但我们的睡眠比较糟糕
🙏2😱1
就会觉得,已经足够痛苦的话,是不是就代表着已经活的足够久了
或许我的使命已经完成了吧,已经打完足够多官司、考出足够多的好成绩、写出足够的诗和代码、带给身边人足够的爱了
精神残疾什么的,就不要再给别人添麻烦了
或许我的使命已经完成了吧,已经打完足够多官司、考出足够多的好成绩、写出足够的诗和代码、带给身边人足够的爱了
精神残疾什么的,就不要再给别人添麻烦了
😭1
所以为什么明明得到了最好的消息,心里还是只会有焦虑呢?是因为不习惯还是恐惧高兴激动的感觉?还是形成了“有消息就是麻烦”的思维定势?先前过于焦虑导致了创伤?惊恐发作?到底是怎么回事…
🙏1
住院day 1
医生开了艾司西酞普兰,减掉了些乱七八糟的药,每天早晚大家一起排排队吃药药。
上午去做了各种检查,脑电超声ct什么的,似乎都没问题。早晨加了半粒奥沙西泮,让我中午大睡特睡,我想是峰值浓度的问题…
然后输液了,是因为昨天五月绝食让身体指标不正常了。上次这样呆呆地看着点滴一滴滴坠下来已经不知道是什么时候
昨晚男病房鼾声如雷基本无法入睡,我们出来下了会儿棋打发时间。今天惊恐发作一次(暂时),幻境睁眼一次(暂时)
晚上七点收手机,电脑应该还可以用来工作
医生开了艾司西酞普兰,减掉了些乱七八糟的药,每天早晚大家一起排排队吃药药。
上午去做了各种检查,脑电超声ct什么的,似乎都没问题。早晨加了半粒奥沙西泮,让我中午大睡特睡,我想是峰值浓度的问题…
然后输液了,是因为昨天五月绝食让身体指标不正常了。上次这样呆呆地看着点滴一滴滴坠下来已经不知道是什么时候
昨晚男病房鼾声如雷基本无法入睡,我们出来下了会儿棋打发时间。今天惊恐发作一次(暂时),幻境睁眼一次(暂时)
晚上七点收手机,电脑应该还可以用来工作
❤1