최근에 comp.lang.forth에 나는 이해하기 힘든 쿠아스 하크 (Koos Haak)의 친절한 코드를 발견했습니다. 괄호 사이의 숫자를 합하거나 곱하기로되어 있습니다. 예를 들어, (1 2 3 +) ok
. 6 ok
편의를 위해, 난 여기가 재현됩니다 : : (
depth 1+ r> 2>r
;
: cond
depth j >
와 호프스 태터 Q 순서는 내가 재귀 정의를 사용하여 Hofstadter's Q Sequence을 구현하려고 해요 : Q(1) = 1
Q(2) = 1
Q(n) = Q(n - Q(n-2)) + Q(n - Q(n-1)) for n > 2
나는 n > 3에 대한 잘못된 결과를 얻을. 여기에 지금까지이 작업은 다음과 같습니다 : Q recursive
여러 개의 출구 지점이있는 이상적인 루프를 구현해야합니다. 유감스럽게도 가장 반복적 인 솔루션 인 REPEAT - WHILE이 여러 개인 경우 Gforth 나 swapforth에서 모두 작동하지 않습니다. (아래 예제의 루프는 DO-LOOP로 구현 될 수 있지만 물론 그 코드는 데모입니다. 진짜 문제는) 임베디드 시스템의 하드웨어 제어 관련이 있으므로 루프
직렬 포트에서 데이터를 읽는 Parallax Propeller 마이크로 컨트롤러 용 Tachyon Forth에 프로그램을 작성하려고합니다. SERIN 단어는 숫자로 데이터를 반환 DECIMAL 확인 57600 SERBAUD 확인 (31) SERIN을. 36 ok "31 SERIN"은 P31 (RX) 핀에서 데이터를 읽습니다. "$"를 입력하고 36을 되찾았
다음 줄로 전송 커서없이 Haskell에서 readline을 사용하려고합니다. 프로그램 시작 후 readEvalPrintLoop :: IO()
readEvalPrintLoop = do
line <- getLine
case line of
"bye" -> return()
line -> do putStrLn $ int
Roboforth 환경에 대한 설명서를 STrobotics에서 읽었으며 로봇을 프로그래밍하기에 좋은 방법이라는 것을 알고 있습니다. 제가 놓친 것은 미리 정의 된 모션 프리미티브가있는 정교한 소프트웨어 라이브러리입니다. 예를 들어, 물체를 집어 올리거나, 레스터 팅 (regrasping) 또는 도구 변경을 위해. 파이썬이나 C++와 같은 다른 프로그래밍 언
Quicksort를 사용하여 정수를 스택의 항목으로 표시된 집합의 요소로 정렬합니다. 이미 정렬 된 큰 (약 10,000 요소) 집합을 정렬해야 할 때를 제외하고는 아무 문제가 없습니다. : adswap \ ad1 ad2 --
over @ over @ swap rot ! swap ! ;
: singlepart \ ad1 ad2 -- ad