팩터에서 궁금하거나 필요한 문서가 무엇이세요?

8 views
Skip to first unread message

Jong-Hyouk Yun

unread,
Feb 19, 2009, 8:39:03 AM2/19/09
to fact...@googlegroups.com
안녕하세요. factor-kr의 아겔-_-입니다. ^^

팩터관련 문서를 생각하는중에 팩터에 대해서 시작하는분들이 뭔가 필요로 하고 계신게 뭘까 궁금해져서요.

어떤것에 관한게 궁금할까요? 객체시스템? 컬렉션? while-for와 같은 제어구조?

어떤 의견이든 감사히 수렴하도록 하겠습니다. :-)

jcm...@gmail.com

unread,
Feb 20, 2009, 8:52:20 AM2/20/09
to factor-kr
전 개인적으로 while 문과
project euler 2 번 문제를 풀면서 느낀건데
피보나치 수열값을 구할때 factor 에서 recursive 적인 사용방법이 궁금하네요.^^

Jong-Hyouk Yun

unread,
Feb 20, 2009, 12:20:58 PM2/20/09
to fact...@googlegroups.com
ㅋ...

일단 관련된 사항을 문서로 정리해서 '페이지'란에 올려봤어요. 참고가 되시길. :-)

일반적인 recursive-call와 같은 방법보다는 어떤 시퀀스를 발전해 나가는 방향으로 워드를 구성하는게 바람직하지 않을까 생각합니다.

1. 단순히 어떤 시퀀스를 받아, 그 마지막 2개의 합을 그 시퀀스에 더한 시퀀스를 되돌리기
2. 이런 패턴으로 어떤 조건을 넘기거나 몇회정도 피보나치 수열을 앞으로 전진하는 combinator을 이용한 워드

이런 생각으로 저는 다음처럼 math.fibonacci을 작성했습니다.


! Copyright (C) 2009 Yun, Jonghyouk.
! See http://factorcode.org/license.txt for BSD license.
USING: kernel locals math sequences sequences.last ;
IN: math.fibonacci

: fib-next ( seq -- n ) [ last-0 ] [ last-1 ] bi + ;

: fib-next-push ( seq -- newseq ) dup fib-next suffix ;

: fib-initial-seq ( -- seq ) { 1 1 } ;

: fib-produce-seq ( seq max -- newseq )
[let | max_ [ ]
seq_ [ ] |
seq_ fib-next max_ <
[ seq_ fib-next-push max_ fib-produce-seq ]
[ seq_ ]
if ] ;


저도 이걸 똑같은 문제를 풀때 작성했던 기억이 나네요.
sequences.last의 last-1, last-2와 같은건 사실 tail*으로 대체가 가능할것이므로 생략합니다.

아... 저도 참 팩터를 다시 공부할때 했던거라 많이 부족하네요. :-)

2009년 2월 20일 (금) 오후 10:52, jcm...@gmail.com <jcm...@gmail.com>님의 말:

Reply all
Reply to author
Forward
0 new messages