首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Emacs 折腾记

工作中倒并没有用得到 Lisp 地方,但是最近眼前晃过一些书,比如《计算机程序构造和解释》、《码农》杂志第 13 期,都对这门古老语言推崇备至,历数现代 Lisp 方言先进性,再者也一直有学习一门函数式编程语言想法...Common Lisp 开发环境 学习 Common Lisp 是使用 Emacs 最主要任务,配好了文本编辑,当然得先把 Common Lisp 开发环境配置好了。...本来什么也不用配置情况下 M-x ielm 就能进入一个 Emacs Lisp REPL,但是它与 Common Lisp 毕竟还是有区别,所以还是另配置一个。...然后在如何运行当前 py 文件这件事上遇到些问题。在 Vim 中一直是用 :!...Vim 不一样,是光标移到屏幕上或者下边缘突然跳动半屏,比较不符合目光跟着光标走习惯,这个可以使用一个插件来解决

1.3K20

Emacs 折腾记

历数现代 Lisp 方言先进性,再者也一直有学习一门函数式编程语言想法,看起来,Lisp 是不二之选。...Common Lisp 开发环境 学习 Common Lisp 是使用 Emacs 最主要任务,配好了文本编辑,当然得先把 Common Lisp 开发环境配置好了。...尝试过更改路径安装,比如安装到 D 盘,但是运行时会提示在 C 盘某个路径下找不到 sbcl.core 文件。...然后在如何运行当前 py 文件这件事上遇到些问题。在 Vim 中一直是用 :!...For use with Internet Explorer 平滑滚动 Emacs 默认滚动方式和 Vim 不一样,是光标移到屏幕上或者下边缘突然跳动半屏,比较不符合目光跟着光标走习惯,这个可以使用一个插件来解决

1.8K10
您找到你想要的搜索结果了吗?
是的
没有找到

excel宏编程 c语言,宏(巨集)

Lisp类语言如Common Lisp和Scheme有更精巧宏系统: 宏行为如同是函数对自身程序文本变形,并且可以应用全部语言来表达这种变形。...== 宏编程 == 在用一种不熟悉宏语言进行宏编程,可以这样做,首先记录下用户想要宏完成什么,然后打开宏文件并尝试理解命令结构如何工作。也可以修改命令以调整宏。...这一限制可以通过用更强大编程语言,如VBA来创建一个计算机程序在此弱编程语言里生成一个特别的宏来解决。...使用一种不熟悉宏语言来编程,比较有效方法就是记录一串用户希望得到操作,然后通过阅读应用程序记录下来宏文件来理解宏命令结构组成。...然而,它功能已经从中发展并最终替代了用户应用程序宏思想,所以它被广泛地错误地称为是一种宏语言。 VBA可以访问许多操作系统函数并支持文档打开自动执行宏。这使得用这种语言写计算机病毒成为可能。

1.6K20

如何解决 Adobe Photoshop 安装失败问题?

了解如何解决 Adobe Creative Cloud 桌面应用程序安装或更新失败问题。...如何修复“安装失败”或“更新失败”错误 Creative Cloud 桌面应用程序安装或更新失败,通常是因为您计算机上 Creative Cloud 应用程序已损坏,或者,您计算机无法连接到 Adobe...常见下载、安装或更新错误解决方案 常见下载、安装或更新错误解决方案: 错误代码 1:安装失败 错误代码 1 表示您设备上 Creative Cloud 应用程序已损坏,或者您设备无法连接到 Adobe...解决方案 注意:对于 macOS 用户,尝试在以 HFS+ 区分大小写文件系统格式化驱动器上进行安装,可能会出现此错误。...用户/[您用户名]/资源库/Application Support/Adobe/OOBE 6.要下载并安装 解决方案 5:验证系统证书(仅限 Windows) 系统上证书不是最新或者无法验证

4.7K30

讲解pymysql.err.InterfaceError: (0, )

其中一个常见错误是pymysql.err.InterfaceError: (0, '')。这个错误通常与数据库连接相关,表示在连接到数据库出现了问题。...解决方案下面是一些常见解决方案,您可以尝试解决pymysql.err.InterfaceError: (0, '')错误。检查数据库连接参数:确保您使用数据库连接参数是正确。...在实际应用场景中,比如在一个长时间运行程序中,数据库连接由于某些原因断开,可以使用类似的重机制来保持与数据库连接,确保程序正常执行。...下面是一个简单示例代码,演示了如何使用PyMySQL连接到MySQL数据库并执行查询操作:pythonCopy codeimport pymysql# 连接到数据库connection = pymysql.connect...通过检查数据库连接参数、数据库服务状态、网络连接以及防火墙设置,可以解决错误。在实际开发中,我们应该合理处理数据库连接,并在可能出现错误地方进行适当异常处理。

68910

唯品会亿级数据服务平台落地实践

语法树 通过自定义 Listener 遍历语法树 在遍历语法树过程中,结合指标的 query engine(presto/spark/clickhouse/mysql) 元数据生成对应查询引擎...用户在提交作业可以显式地指定一个作业队列名,这个作业在提交到集群,如果相应队列有空闲,则就会被添加进相应队列中,否则返回具体错误给客户端,如任务队列满、队列名不存在、队列已经关闭等,客户端可以选择...一个作业被添加进队列之后,Master 就会立即尝试调度这个队列中作业,基于以下条件选择合适作业运行: 每个队列都有自己权重,同时会设置占用整个集群资源总量,如最多使用多少内存、最多运行任务数量等...以 worker 为例, worker 成功注册到 master ,就会开启定时心跳汇报动作,并借道心跳请求,将自己运行时信息汇报给 master。...解决性能问题 数据服务主要解决 SLA 方面的问题。

96910

唯品会亿级数据服务平台落地实践

语法树 通过自定义 Listener 遍历语法树 在遍历语法树过程中,结合指标的 query engine(presto/spark/clickhouse/mysql)元数据生成对应查询引擎 SQL...用户在提交作业可以显式地指定一个作业队列名,这个作业在提交到集群,如果相应队列有空闲,则就会被添加进相应队列中,否则返回具体错误给客户端,如任务队列满、队列名不存在、队列已经关闭等,客户端可以选择...一个作业被添加进队列之后,Master 就会立即尝试调度这个队列中作业,基于以下条件选择合适作业运行: 每个队列都有自己权重,同时会设置占用整个集群资源总量,如最多使用多少内存、最多运行任务数量等...以 worker 为例, worker 成功注册到 master ,就会开启定时心跳汇报动作,并借道心跳请求,将自己运行时信息汇报给 master。...解决性能问题 数据服务主要解决 SLA 方面的问题。

79710

唯品会亿级数据服务平台落地实践

语法树 通过自定义 Listener 遍历语法树 在遍历语法树过程中,结合指标的 query engine(presto/spark/clickhouse/mysql)元数据生成对应查询引擎 SQL...用户在提交作业可以显式地指定一个作业队列名,这个作业在提交到集群,如果相应队列有空闲,则就会被添加进相应队列中,否则返回具体错误给客户端,如任务队列满、队列名不存在、队列已经关闭等,客户端可以选择...一个作业被添加进队列之后,Master 就会立即尝试调度这个队列中作业,基于以下条件选择合适作业运行: 每个队列都有自己权重,同时会设置占用整个集群资源总量,如最多使用多少内存、最多运行任务数量等...以 worker 为例, worker 成功注册到 master ,就会开启定时心跳汇报动作,并借道心跳请求,将自己运行时信息汇报给 master。...解决性能问题 数据服务主要解决 SLA 方面的问题。

79310

MySQL复制全解析 Part 8 MySQL Auto-Positioning

基于GTIDMySQL同步 通过第二节内容我们知道主库和从库之间复制通过日志名和位置点进行同步 如果启用了GTID,则可以使用GTID来进行同步 如果使用基于GTIDMySQL同步我们不需要在change...被启用则表示在从库连接到主库auto-positioning功能被激活了,同样主库GTID功能必须开启 接下来我们来看下auto-positioning是如何工作 2.1 从库发送其已有GTID...,这时复制不会被启动 这时可以禁用MASTER_AUTO_POSITION 选项之后重,不过这时会出现数据丢失,建议有两种方法解决 从另外位置获取该GTID事务 使用最近主库备份重新还原从库 如果在交换期间...,从库接收到事务在主库上没有,这时主库会发送一个ER_SLAVE_HAS_MORE_GTIDS_THAN_MASTER错误,之后复制不会启动 该问题一般发生在主库没有设置sync_binlog=1,这时如果发生服务器宕机...,可能会导致事务未记录在二进制文件中,但是已经被传输到从库了 还有种错误就是主库和从库相同GTID被分配了不同事物,这时我们需要手动解决冲突或者将其中一个移出复制拓扑结构中 4.

56530

Redis客户端在执行命令流程以及连接断开或异常情况处理

发送命令:客户端通过Socket将序列化后命令发送给Redis服务器。接收命令响应:Redis服务器接收到命令后,执行相应操作,并将执行结果进行序列化后发送给客户端。...在Redis客户端在连接断开或异常情况下,可以使用以下策略来处理这些问题:使用断线重机制:发现连接断开,可以尝试重新连接到Redis服务器。...连接池可以维护一定数量连接,需要连接从连接池中获取连接,使用完毕后归还连接到连接池,这样可以复用连接,提高性能。...错误日志记录:在连接断开或异常情况下,及时记录错误信息,可以方便排查问题和进行故障分析。可以将错误信息记录到日志文件中,并及时监控日志文件,以便快速发现和解决问题。...总的来说处理Redis客户端连接断开或异常情况,需要尽量避免影响正常业务操作。通过监控连接状态、使用重机制、设置合适超时时间、使用连接池等策略,可以保证Redis客户端稳定性和可靠性。

62151

MySQL复制全解析 Part 8 GTID Auto-Positioning

被启用则表示在从库连接到主库auto-positioning功能被激活了,同样主库GTID功能必须开启 接下来我们来看下auto-positioning是如何工作 2.1 从库发送其已有GTID...已接收到通过如下查询得出 SELECT RECEIVED_TRANSACTION_SET FROM PERFORMANCE_SCHEMA.replication_connection_status;...,这时复制不会被启动 这时可以禁用MASTER_AUTO_POSITION 选项之后重,不过这时会出现数据丢失,建议有两种方法解决 从另外位置获取该GTID事务 使用最近主库备份重新还原从库 如果在交换期间...,从库接收到事务在主库上没有,这时主库会发送一个ER_SLAVE_HAS_MORE_GTIDS_THAN_MASTER错误,之后复制不会启动 该问题一般发生在主库没有设置sync_binlog=1,这时如果发生服务器宕机...,可能会导致事务未记录在二进制文件中,但是已经被传输到从库了 还有种错误就是主库和从库相同GTID被分配了不同事物,这时我们需要手动解决冲突或者将其中一个移出复制拓扑结构中 4.

45520

内网渗透之隐藏通信隧道 -- sock5

然后再win7攻击机尝试连接代理,使用是Proxifier,它在测试连接可用性时候会访问百度,我们再kali可以查看到访问页面的结果 ?...成功远程连接到2008内网ip ? 反向连接 在攻击机kali设置监听,将6000端口收到代理请求转发到7000 ....由于这台机器只是做转发而不是目标,所以既要让处于一级内网2008接kali,也要让2008接到下一台机器 ew_for_Win.exe -s lcx_slave -d 192.168.200.4...2、代理一级到二级内网 2008接到kali后,自己也架设一个服务端 frps [common] bind_addr = 10.10.10.18 bind_port = 7000 ?...3、代理二级到三级内网 2012接2008后,2012也假设一个服务端 [common] bind_addr = 10.10.20.12 bind_port = 7000 ?

4.9K21

Lisp本质(The Nature of Lisp)学习思考

/lisp.html 简介 最初在web某些角落偶然看到有人赞美Lisp, 那时已经是一个颇有经验程序员。...这么长赞美词虽然看起来相当动人, 不过对毫无意义。没人能给我演示这些东西是如何应用, 因为这些东西一般来说只有在大型系统才会用到。争辩说, 这些东西传统语言一样办得到。...好吧, 来试一下。这篇文章就是尝试结果。要用熟悉直观方法来解释Lisp, 希望有勇气的人读完它, 拿杯饮料, 深呼吸一下, 准备被搞得晕头转向。来吧, 愿你获得大能。...离Lisp越来越近 我们先把算符事情放一放, 考虑一下Ant设计局限之外东西。早先说过, Ant可以通过写Java类来扩展。...Lisp系统遇到这样, 它所做, 和Ant处理XML数据所做, 非常相似, 那就是试图执行它们。

1.7K60

一条SQL语句是如何执行

一条SQL语句是如何执行? 首发于GitHub开源项目: Java超神之路 你好,是杜少雄。 今天和大家聊一聊MySQL基础架构。我们经常说,看一个事千万不要直接陷入细节里。应该先鸟瞰全貌。...一条SQL语句执行时候,我们看到是最后执行结果。却不知道这条语句在MySQL内部是如何执行。 总览 所以今天我们把MySQL拆解一下,看看里边有哪些零件。下边是MySQL基本架构示意图。...如果用户名或密码不对,你就会收到一个"Access denied for user"错误,然后客户端程序结束执行。 如果用户名密码认证通过,连接器会到权限表里面查出你拥有的权限。...所以如果长连接累积下来,可能导致内存占用太大,被系统强行杀掉(OOM),从现象看就是 MySQL 异常重启了。 如何解决呢? 定期断开长连接。...这个过程不需要重和重新做权限验证,但是会将连接恢复到刚刚创建完状态。 2. 查询缓存 MySQL 拿到一个查询请求后,会先到查询缓存看看,之前是不是执行过这条语句。

1.1K50

如何高效地学习编程语言

说到编程,由于程序都是重文本和概念性,所以很容易以为我们仅仅通过阅读(代码)就在学习。但是程序同时也是一门手艺,就像其它手艺一样你得操练才能娴熟。编码是暴露你对程序作有错误假设最佳方式。...解除障碍最佳方式之一就是歇一会儿,这可能听上去有点反直觉,但确实如此。 问题是,全神贯注解决问题,我们很容易陷入思维障碍(mental blinder)。...确认你正在处理语言哪个方面 个人观点,觉得记住这些是有用——学习一门编程语言时候,你实际上正在学四件事情。...这是产出物生态圈一部分,不过小白可能将此视为编写代码问题。他们可能会浏览自己写每行代码来尝试解决问题,尽管问题和代码没有半毛钱关系。 如果系统地处理这些方面,我会发现学习一种语言会更加容易。...工具外部模型就是它呈现出来接口以及它想让你思考问题解决方式。Clojure 外部模型就是一个 Lisp,它想让你把编程当做大部分以数据为中心,不可变转换过程。

1K60

MySQL十种常见错误,你可犯过?

错误3:MySQL失去服务器连接 此类情况一般发生在网络环境不佳远程连接。我们一般可以通过打开命令行,手动尝试连接方式,来检验当前状况。...除了对网络连接状态进行基本排查之外,您也可以尝试通过修改MySQL最大连接数,来诊断是否是资源受限问题。...错误6:出现“表已满” 表已满(table-full)错误一般发生在磁盘可用空间已满、以及数据表已经到达了最大容量,这两种情形之下。...错误7:表tbl_name不存在 如下错误表明了:在默认数据库中,某个给定数据表被视为不存在情况。...0.ism' 通常解决方案是:在启动MySQL服务器,采用–tmpdir选项。

81420

《代码英雄》第三季(7):与机器对话

你会使用什么语言,来让你机器拥有自己思想呢?我们编程语言如何帮助我们抵达“深蓝时刻”,甚至是更远地方?什么样编程语言能最适配会思考机器?这是我们半个多世纪以来一直在尝试解决问题。...想知道他思想起源,以及范式转变是如何发生意思是,对于初学者来说,麦卡锡和他同事们在想象智能机器未来时,他们到底想象了什么?...但无论如何,这之中指导思想是正确,它只是生在了错误时代。到了 80 年代末,人工智能研究日渐减少。...00:17:21 - Saron Yitbarek: 通过创建自定义硬件解决方案,继续使用 LISP 朝着 AI 梦想前进并非不可能。...00:21:03 - Chris Nicholson: 人工智能冬天发生一个原因是,创意在放缓,网络就会崩溃,资金就会枯竭。有了现在这些免费开源工具,我们看到不是创意放缓,而是一种加速。

25730

eBPF入门开发实践教程十三:统计 TCP 连接延时,并使用 libbpf 在用户态处理数据

背景 在进行后端开发,不论使用何种编程语言,我们都常常需要调用 MySQL、Redis 等数据库,或执行一些 RPC 远程调用,或者调用其他 RESTful API。...这些跟踪点主要位于内核中 TCP/IP 网络栈。执行相关系统调用或内核函数,这些跟踪点会被激活,从而触发 eBPF 程序执行。这使我们能够捕获和测量 TCP 连接建立整个过程。...当用户态程序通过socket系统调用创建了一个套接字后,接着通过connect系统调用尝试接到远程服务器,此时就会触发tcp_v4_connect函数。...Linux内核网络栈对TCP连接建立处理过程是,首先调用tcp_v4_connect或tcp_v6_connect函数(根据IP版本不同)发起TCP连接,然后在收到SYN-ACK包通过tcp_rcv_state_process...可以在内核函数入口和退出处设置断点,断点被触发,会执行与kprobe关联eBPF程序。 map:是eBPF程序中一种数据结构,用于在内核态和用户态之间共享数据。

26120

eBPF入门开发实践教程十三:统计 TCP 连接延时,并使用 libbpf 在用户态处理数据

背景在进行后端开发,不论使用何种编程语言,我们都常常需要调用 MySQL、Redis 等数据库,或执行一些 RPC 远程调用,或者调用其他 RESTful API。...这些跟踪点主要位于内核中 TCP/IP 网络栈。执行相关系统调用或内核函数,这些跟踪点会被激活,从而触发 eBPF 程序执行。这使我们能够捕获和测量 TCP 连接建立整个过程。...当用户态程序通过socket系统调用创建了一个套接字后,接着通过connect系统调用尝试接到远程服务器,此时就会触发tcp_v4_connect函数。...Linux内核网络栈对TCP连接建立处理过程是,首先调用tcp_v4_connect或tcp_v6_connect函数(根据IP版本不同)发起TCP连接,然后在收到SYN-ACK包通过tcp_rcv_state_process...可以在内核函数入口和退出处设置断点,断点被触发,会执行与kprobe关联eBPF程序。map:是eBPF程序中一种数据结构,用于在内核态和用户态之间共享数据。

71330
领券