![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
编程语言
文章平均质量分 81
skywalk8163
天马行空,我心飞翔!
展开
-
Ubuntu linux安装新版本go
Ubuntu jammy版本里面自带的go版本较低,build ollama的时候报错,于是升级go。原创 2024-07-13 21:51:25 · 516 阅读 · 0 评论 -
文心智能体平台快速创建一个HY(Lisp)编程小助手
文心智能体:点击发布,智能就发布出去了。可以选择公开或私人可见。总体效果非常不错,在问到一些问题的时候,智能体会自动到外网链接里找文档,最后生成的信息特别准确。比如问:Lisp中的宏是什么,能给我举个例子吗?智能体的回答:在Lisp中,宏(Macro)是一种非常强大的编程工具,它允许你编写可以扩展语言本身的代码片段。宏的工作方式是在代码被实际执行之前,先对代码进行预处理,也就是对代码进行某种形式的变换。这样,你可以创建新的控制结构、修改语法或简单地提高代码的复用性和可读性。原创 2024-07-07 10:35:13 · 907 阅读 · 0 评论 -
HY编程快速入门实践课第四章 深入学HY语法
学习完上一章我们对HY宏编程有了初步了解,现在来系统学一下HY的语法。quote 引号,是双引号下面的那个单引号'quasiquote 反引号,是左上角波浪线下面的那个引号`unquote 波浪线 取消引用~unquote-splice 取消引用并展开 波浪线+@ ~@unpck-iterable 取消引用并迭代 使用#*unpack-mapping 取消引用并映射 #**原创 2024-07-05 12:27:30 · 809 阅读 · 0 评论 -
HY lisp quote unquote等学习
quote 引号,是双引号下面的那个单引号'quasiquote 反引号,是左上角波浪线下面的那个引号`unquote 波浪线 取消引用~unquote-splice 取消引用并展开 波浪线+@ ~@unpck-iterable 取消引用并迭代 使用#*unpack-mapping 取消引用并映射#**原创 2024-07-05 12:24:39 · 857 阅读 · 0 评论 -
函数式编程和命令式编程
这一特性促使函数式编程倾向于避免使用状态(state)和可变变量(mutable variables),转而采用高阶函数(能够接受函数作为参数或返回函数的函数)以及纯函数(在给定相同输入条件下,始终产生相同输出的函数)作为构建程序的基本构件。函数式编程(Functional Programming, FP)与命令式编程(Imperative Programming, IP)是编程领域中两大截然不同的范式,它们在解决问题的策略和哲学上存在着本质的差异。原创 2024-07-03 22:58:46 · 343 阅读 · 0 评论 -
Clojure学习:运行在 Java 虚拟机(JVM)上的动态Lisp编程语言
目的:因为HY的学习资料较少,所以通过学习Clojure来辅助学习HY。前期也看过一些Common Lisp和On Lisp的文档,现在还不太清楚HY跟谁最接近。原创 2024-07-02 23:50:01 · 479 阅读 · 0 评论 -
HY Lisp 读取宏(reader macro)学习
结合前面讲到的,Lisp在读取期(read-time),编译期(compile-time) 和运行期(runtime)三个时期都可以实现循环和嵌套,这极大的增强了Lisp的自由度,可以说Lisp是能力最强大的语言,这样或许不太准确,因为只要是图灵完备的语言,基本都能完成所有的任务,应该说Lisp是最接近人类思维的一种语言。Lisp语言是最接近接近人类思维方式的一种语言,但是它的缺点也很明显,那就是它的代码是反人类思维,是最难读懂的一种语言。读到这里,终于明白了它为什么叫读取宏,原来是在读取时起作用的啊!原创 2024-07-02 10:54:14 · 996 阅读 · 0 评论 -
wavesummit2024发布飞桨3.0版本
为了降低大模型的编程难度,飞桨还优化了动静统一的半自动并行编程范式,显著简化了编程的复杂度。在 700 多个飞桨产业级模型上进行了验证,实现了一键动转静训练 100%的成功率。同时,飞桨提供了基于编译器的硬件接入方式,硬件厂商只需以插件的形式实现编译器的代码生成后端,便能实现与飞桨框架的高效适配。为了更好支持科学计算等场景,飞桨框架设计并实现了基于组合算子机制的高阶自动微分技术,结合神经网络编译器自动优化技术,我们测试了超过 40 多个科学计算场景的微分方程,其求解速度领先业界同类产品 70%。原创 2024-06-28 20:12:27 · 927 阅读 · 0 评论 -
HY编程快速入门实践课第三章 HY宏入门
HY 等Lisp语言最有特性的就是宏了,如果其它语言也实现了Lisp里的宏,那么它们就成为了一种Lisp方言,由此可见宏的独特性。宏是 Lisp 的基本元编程工具。宏是在编译时(即,当 Hy 程序被转换为 Python ast 对象时)调用并返回代码的函数,代码成为最终程序的一部分。(setv x (% (** 10 10 7) 3))的计算量较大,计算机会有明显的计算时间卡顿。在交互模式下执行上面语句每次都需要较长时间,且输出一样,都有“Now for a slow computation”。原创 2024-06-27 23:11:11 · 836 阅读 · 0 评论 -
HY编程快速入门实践课第二章 跟着python学HY
HY是跟python最亲近的Lisp,有python基础的同学们学起来会感觉尤其亲切。HY的两大特点,也就是Lisp的两大特点:1 括号+前置运算符2 宏HY可以导入各种python库,所以也就可以导入飞桨库,进行AI的训练和推理工作!原创 2024-06-21 19:06:43 · 1569 阅读 · 0 评论 -
HY编程快速入门实践课第一章 初步了解
HY语言是一个基于Lisp的方言,它的语法更接近Python,但保持了Lisp的基本结构和特性。HY语言由Paul Tagliamonte等人在Python社区中开发,旨在将Lisp的灵活性和Python的易用性结合起来。原创 2024-06-20 23:47:07 · 897 阅读 · 0 评论 -
现在还有人用Common Lisp写尾递归吗?
但是万事万物没有完美的,递归的实现很简单,但是递归的运算相比普通函数资源负载很重,递归函数在每次调用时都会在调用栈上分配一块内存空间,用于存储局部变量、参数和返回地址等信息。这样导致内存或堆栈很快随着递归深度而告急,或者像python直接就限定了递归深度(默认1000),这样可以在资源告急之前受限报错退出。原创 2024-06-19 23:36:44 · 386 阅读 · 0 评论 -
用python和HY(lisp)代码为例学习什么是递归?
递归就是行为规则,是一种处理过程,递归也是最符合人类原生行为的编程方法,所以即使很复杂的问题,也比较容易用递归来实现算法。比如汉诺塔,使用递归代码非常简洁,使用循环则代码复杂很多。关于递归的资源消耗,确实要比普通函数多,不过很多编译器专门对递归进行了优化,许多Common Lisp 编译器(比如sbcl)都可以把尾递归转化成循环函数,这样就没有额外的资源消耗了。再回过头来看看ANSI Common Lisp关于递归的描述,加强一下记忆起初,许多人觉得递归函数很难理解。原创 2024-06-19 14:37:25 · 817 阅读 · 0 评论