哪种高级语言可以拿函数当变量?

软件和网站开发以及相关技术探讨
回复
iheartpp
帖子: 133
注册时间: 2008-09-18 20:15

哪种高级语言可以拿函数当变量?

#1

帖子 iheartpp » 2010-07-25 2:11

如题。不知道haskell是不是可以?
头像
adam8157
帖子: 2794
注册时间: 2009-03-05 16:31
联系:

Re: 哪种高级语言可以拿函数当变量?

#2

帖子 adam8157 » 2010-07-25 6:32

可以 它就是函数型的语言啊

C中那结构体和指针转一转也行..
iheartpp
帖子: 133
注册时间: 2008-09-18 20:15

Re: 哪种高级语言可以拿函数当变量?

#3

帖子 iheartpp » 2010-07-25 22:06

adam8157 写了:可以 它就是函数型的语言啊

C中那结构体和指针转一转也行..
可惜C要事先声明的啊
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

Re: 哪种高级语言可以拿函数当变量?

#4

帖子 eexpress » 2010-07-25 22:12

函数当变量?
不理解。
怎么写呢
● 鸣学
头像
xiooli
帖子: 6956
注册时间: 2007-11-19 21:51
来自: 成都
联系:

Re: 哪种高级语言可以拿函数当变量?

#5

帖子 xiooli » 2010-07-25 22:30

代码: 全选

>>> def a():print 'hello'
... 
>>> def b(arg):arg()
... 
>>> b(a)
hello
>>>
是这个意思的话,python 就可以。
iheartpp
帖子: 133
注册时间: 2008-09-18 20:15

Re: 哪种高级语言可以拿函数当变量?

#6

帖子 iheartpp » 2010-07-26 2:34

eexpress 写了:函数当变量?
不理解。
怎么写呢

代码: 全选

(defun our-remove-if (fn lst)
	(if (null lst)
	    	nil
		(if 	(funcall fn (car lst))
			(our-remove-if fn (cdr lst))
			(cons (car lst) (our-remove-if fn (cdr lst)))))
)
头像
Strange
帖子: 1824
注册时间: 2006-05-19 9:54
来自: Shanghai

Re: 哪种高级语言可以拿函数当变量?

#7

帖子 Strange » 2010-07-26 7:49

我喜欢lua。
g++ 4.5好像也已经支持了。
ニンニク入れますか?
x60 with gentoo
tusooa
帖子: 6548
注册时间: 2008-10-31 22:12
系统: 践兔
联系:

Re: 哪种高级语言可以拿函数当变量?

#8

帖子 tusooa » 2010-07-29 8:03

xiooli 写了:

代码: 全选

>>> def a():print 'hello'
... 
>>> def b(arg):arg()
... 
>>> b(a)
hello
>>>
是这个意思的话,python 就可以。
这个是引用,不是拿函数当变量。
lz的想法估计不行。

代码: 全选

] ls -ld //
maddemon
帖子: 15
注册时间: 2006-11-12 12:07

Re: 哪种高级语言可以拿函数当变量?

#9

帖子 maddemon » 2010-07-29 17:26

javascript,F# ...


var fn = function(){alter('x');}
tusooa
帖子: 6548
注册时间: 2008-10-31 22:12
系统: 践兔
联系:

Re: 哪种高级语言可以拿函数当变量?

#10

帖子 tusooa » 2010-08-01 8:46

代码: 全选

] ls -ld //
iheartpp
帖子: 133
注册时间: 2008-09-18 20:15

Re: 哪种高级语言可以拿函数当变量?

#11

帖子 iheartpp » 2010-08-01 14:41

:em01 多谢
我举的例子是lisp。lisp没有问题的。只是最近想学新的语言,不知道haskell是不是可以。
dongyuwei
帖子: 5
注册时间: 2009-01-01 10:17

Re: 哪种高级语言可以拿函数当变量?

#12

帖子 dongyuwei » 2010-08-24 13:33

javascript ruby python lua都可以的
ws169144
帖子: 1
注册时间: 2009-04-05 16:09

Re: 哪种高级语言可以拿函数当变量?

#13

帖子 ws169144 » 2010-08-24 21:46

haskell 当然可以阿!人家一切都是函数,函数可以被函数调用再调用,,,,
回复