임의의 양의 인수와 함께 정수 목록을 사용하는 함수 apply를 작성하여 함수의 결과를 리턴합니다 (여기서 각 정수는 목록 순서대로 인수입니다 내가 같은 생각 : apply :: ([Int] -> Int) -> [Int] -> Int
apply f x:xs = apply (f x) xs
apply f [] = f
를하지만 유형 서명이 잘못 때문에이
하스켈에서 간단한 평균 함수를 개발하려고합니다. 이 작동하는 것 같다 : lst = [1, 3]
x = fromIntegral (sum lst)
y = fromIntegral(length lst)
z = x/y
을 왜 다음 버전 작업을하지 않는 이유는 무엇입니까? lst = [1, 3]
x = fromIntegral.sum lst
y =
두 개의 Python 함수가 있는데 둘 다 함수 정의에서 가변 인수를 사용합니다. 간단한 예제를 제공합니다 : def func1(*args):
for arg in args:
print arg
def func2(*args):
return [2 * arg for arg in args]
내가 그들을 구성하고 싶습니다 - fun
몇 시간 전 하스켈 문서를 살펴본 결과 기능 구성 연산자가 정말 멋지다는 것을 알았습니다.이 from functools import partial
class _compfunc(partial):
def __lshift__(self, y):
f = lambda *args, **kwargs: self.func(y(*args, **kwarg
지연 함수 (다음 함수는 단계 함수를 호출 할 때만 계산 됨)를 구현하려고하는데, 그 중 하나의 메소드는 다음과 같은 함수를받는 "map"입니다. 모든 회원에게 영향을 미친다. 이것을하기위한 가장 우아한 방법은 함수 합성을 사용하고 새로운 함수를 함수 변수에 할당하는 것입니다. 그러나 함수가 Java에서 첫 번째 클래스 값이 아니기 때문에이 작업을 수행하는
나는 실제 세계 하스켈을 읽었으며 끝이 가까워지고 있지만 스타일에 관한 문제는 내가 (.) 및 ($) 연산자. f = g . h
을하지만 당신이 그 기능의 끝에 뭔가를 적용 할 때 나는이처럼 쓰기 : 다른 기능의 구성은 함수를 작성할 때 당신은 같은 그것을 쓰기 k = a $ b $ c $ value
그러나이 책이처럼 작성합니다 : 나에게 지금 k