(defun iedit-symbol-in-defun ()
"Enter `iedit-mode' to rename the symbol in current function, or exit it."
(interactive)
(if iedit-mode
(progn
(iedit-mode -1)
(widen))
(progn
(if (thing-at-point 'symbol)
(progn
(narrow-to-defun)
(iedit-mode t)
(message "When done, run `epy-iedit-in-defun' again to quit.")
)
(error "You need to put cursor on identifier.")
))))

  

(define-struct parent (childs name date eyes))

;;youngest
(define Gustav (make-parent empty 'Gustav 1988 'blue)) (define Fred*Eva (list Gustav)) ;;younger
(define Adam (make-parent empty 'Adam 1950 'yellow))
(define Dave (make-parent empty 'Dav 1955 'black))
(define Eva (make-parent Fred-Eva 'Eva 1965 'blue))
(define Fred (make-parent Fred-Eva 'Fred 1966 'pink)) (define Carl*Bettina (list Adam Dave Eva)) ;;older
(define Carl(make-parent Carl*Bettina 'Carl 1926 'green))
(define Bettina(make-parent Carl*Bettina 'Bettina 1926 'green)) ;是否有后代是蓝眼睛
(define (blue-eyed-descendant? a-parent)
(cond
[(symbol=? (parent-eyes a-parent) 'blue) true]
[else (blue-eyed-children? (parent-childs a-parent))])) (define (blue-eyed-children? list-of-childs)
(cond
[(empty? list-of-childs) false]
[(symbol=? (parent-eyes (first list-of-childs)) 'blue) true]
[else (blue-eyed-children?(rest list-of-childs))])) ;;搜索后代中谁是蓝睛眼
;;blue-eyed-desendant-who? a-parent->symbol
(define (blue-eyed-desendant-who? a-parent)
(append
(cond
[(symbol=? (parent-eyes a-parent) 'blue) (list (parent-name a-parent))]
[else empty]) ;先搜索自己,蓝眼睛为真,返回自己,否则返回empty
(blue-eyed-children-who? (parent-childs a-parent))));再继续搜索子代 ;相并集append ;;搜索子代中谁是蓝眼睛
(define (blue-eyed-children-who? list-of-childs)
(cond
[(empty? list-of-childs) empty] ;如果子代是空集为真,则返回empty,递归结束
[else (append (list (blue-eyed-desendant-who? (first list-of-childs))) (blue-eyed-children-who? (rest list-of-childs)))]))
;反之有子代,则搜索第一个的蓝眼睛后代和剩余的蓝眼睛子代(包含求第一个的蓝眼晴后代和剩余的蓝眼睛子代(...)) (define (appendx lst)
(cond
[(empty? lst) empty]
[(empty? (first lst)) (appendx (rest lst))]
[else (append (first lst) (appendx (rest lst)))]) ) (define (atom? x)
(not (or (cons? x) (null? x)))) (define lst-out empty) (define (fun lst)
(cond
[(empty? lst) empty]
[(atom? (first lst))
(cond
[(atom? (rest lst)) ]
(append (list (first lst)) lst-out)]
[else (append (fun (first lst)) (fun (rest lst)))]))
# include <iostream>

int main()
{
std::cout << "Hello, world!" << std::endl; return 0;
} int main()
{
std::cout << "Hello, world!" << std::endl; return 0;
} int main()
{
std::cout << "Hello, world!" << std::endl; return 0;
} int main()
{
std::cout << "Hello, world!" << std::endl; return 0;
} int main()
{
std::cout << "Hello, world!" << std::endl; return 0;
}

  

# include <iostream>

int main()
{
std::cout << "Hello, world!" << std::endl; return ;
}
(format t "Hello world")
函数定义:
(defun hello-world ()
(format t ("hello, world!"))
调用函数:
(hello-world)
;;"hello,world!"

  

scheme代码高亮的更多相关文章

  1. 新语言代码高亮及Windows Live Writer插件开发

    最近在博客园做一些学习笔记.一个是看apple的swift官方书,另外一个是随学校课堂(SICP)学习scheme. 这两种语言都谈不上普及(或者说swift太新).博客园原来的windows liv ...

  2. 如何使用SublimeText风格的代码高亮样式 添加Zed Coding(EMMET)插件

    因为觉得博客园自带的代码高亮样式很单一,不符合作为前端的我的审美习惯,于是下定决心要想办法折腾出一个方法来应用上另外一套代码高亮样式. 虽然探索的过程是很痛苦的,但最后还是成功了,但也不枉付出的那些努 ...

  3. 使用prismjs为网站添加代码高亮功能

    prismjs 是一款轻量.可扩展的代码语法高亮库,使用现代化的 Web 标准构建,使用 Prismjs 可以快速为网站添加代码高亮功能,支持超过113中编程语言,还支持多种插件,是简洁.高效的代码高 ...

  4. 五、Google Code Prettify:实现代码高亮的JS库

    介绍 code prettify 解释为 “代码修饰”. 他由JS代码和CSS代码构成,用来高亮显示HTML页面中的代码. 支持:C, Java, Python, Bash, HTML, XML, J ...

  5. Mac 配置代码高亮 Git状态显示

    Mac 一个为开发者量身定做的笔记本,分享给大家希望能帮助大家配置一个好的开发环境,好的开发环境才有好的心情Code. 首先进入到Home到目录一般默认打开的都是Home,如果不是输入 cd ~ 回车 ...

  6. 如何在Open Live Writer(OLW)中使用precode代码高亮Syntax Highlighter

    早先Microsotf的Windows Live Writer(WLW)现在已经开源了,并且更名为Open Live Writer,但是现在Windows Live Writer还是可以现在,Open ...

  7. 如何在博客中使用SublimeText风格的代码高亮样式

    因为觉得博客园自带的代码高亮样式很单一,不符合作为前端的我的审美习惯,于是下定决心要想办法折腾出一个方法来应用上另外一套代码高亮样式. 虽然探索的过程是很痛苦的,但最后还是成功了,但也不枉付出的那些努 ...

  8. highlight.js 代码高亮插件

    官网:https://highlightjs.org/ API:http://highlightjs.readthedocs.org/en/latest/api.html 1. 简单使用: <l ...

  9. 7个高性能JavaScript代码高亮插件

    本文由码农网 – 小峰原创,转载请看清文末的转载要求,欢迎参与我们的付费投稿计划! 对于喜欢写技术博客的同学来说,一定对代码高亮组件非常熟悉.一款优秀的JavaScript代码高亮插件,将会帮助你渲染 ...

随机推荐

  1. MyFirstStruts2

    package com.sdlc.action; public class HelloWorldAction { private String msg; public void setMessage( ...

  2. 一些80C51单片机支持双DPTR,C编译器是如何使用它的?

    在C51中,C编译器并不利用双DPTR来优化用户所写的程序,只有一些库例程使用了双数据指针.当在两个存储器块之间进行数据复制或比较时,以下库例程会使用双数据指针: memmovememcpymemcm ...

  3. htpasswd.cgi 网页远程修改gerrit ht 认证的密码文件

    在搭建gerrit系统时,一般都会采用apache的.htacces 认证方法 但trac本身并不提供修改密码的功能,修改密码只能通过htpasswd/htpasswd2命令来进行,这的确是一件相当不 ...

  4. EBS查找运行请求时间,参数等

    --查找运行请求时间,参数等(可以是某用户的,某个报表) select c.user_name, papf.full_name, b.user_concurrent_program_name, a.r ...

  5. 【剑指offer】面试题34:丑数

    题目: 把只包含因子2.3和5的数称作丑数(Ugly Number).例如6.8都是丑数,但14不是,因为它包含因子7. 习惯上我们把1当做是第一个丑数.求按从小到大的顺序的第N个丑数. 思路: 第一 ...

  6. 关于sem_unlink什么时候删除信号量

    sem_unlink在man手册里有这么一段话: sem_unlink() removes the named semaphore referred to by name. The semaphore ...

  7. Android软件开发之常用系统控件界面整理

    1.文本框TextView TextView的作用是用来显示一个文本框,下面我用两种方式为大家呈现TextView, 第一种是通过xml布局文件呈现 ,第二种是通过代码来呈现,由此可见Android ...

  8. [RxJS] Reactive Programming - What is RxJS?

    First thing need to understand is, Reactive programming is dealing with the event stream. Event stre ...

  9. SSO之CAS基础及应用视频教程(2)

    CAS介绍 CAS = Central Authentication Service,中央认证服务.CAS 是 Yale 大学发起的一个开源项目,能够为 Web 应用系统或者非Web应用系统提供一种可 ...

  10. [Python学习笔记][第七章Python文件操作]

    2016/1/30学习内容 第七章 Python文件操作 文本文件 文本文件存储的是常规字符串,通常每行以换行符'\n'结尾. 二进制文件 二进制文件把对象内容以字节串(bytes)进行存储,无法用笔 ...