Ubuntu Online, Fedora Online, Windows 온라인 에뮬레이터 또는 MAC OS 온라인 에뮬레이터와 같은 여러 무료 온라인 워크스테이션 중 하나를 사용하여 OnWorks 무료 호스팅 공급자에서 실행할 수 있는 js_of_ocaml 명령입니다.
프로그램:
이름
js_of_ocaml - Javascript 컴파일러에 대한 OCaml 바이트코드
기술
js_of_ocaml(1)은 OCaml 바이트코드 프로그램에서 Javascript로의 컴파일러입니다. 그것은 그것을 만든다
웹 브라우저에서 실행되는 OCaml 프로그램을 작성할 수 있습니다.
브라우저 API의 대부분과 생성된 프로그램에 대한 바인딩이 함께 제공됩니다.
일반적으로 OCaml 바이트코드 인터프리터를 더 빠르게 실행하는 것으로 측정되었습니다.
사용법
프로그램은 먼저 OCaml 바이트코드 컴파일러를 사용하여 컴파일해야 합니다. Ocamlc(1).
Javascript 바인딩과 해당 구문 확장은
js_of_ocaml 패키지.
ocamlfind ocamlc -패키지 js_of_ocaml -패키지 js_of_ocaml.syntax \
-구문 camlp4o -linkpkg -o input_file.byte input_file.ml
그런 다음 js_of_ocaml(1) Javascript 코드를 생성하는 컴파일러.
js_of_ocaml [ 옵션 ] 입력_파일.바이트
옵션
다음 명령줄 옵션은 다음에서 인식됩니다. js_of_ocaml(1).
-디버그 name
디버그 모듈 name
-장애를 입히다 name
최적화 비활성화 name
-예쁜
예쁜 출력을 인쇄
-디버그 정보
출력 디버그 정보
-noinline
인라인 비활성화
-노런타임
표준 런타임을 포함하지 마십시오.
-최상위
최상위 레벨 컴파일
-I DIR 추가 DIR 포함 디렉토리 목록에
-o 파일
출력 파일 이름을 다음으로 설정 파일
-도움 옵션 목록 표시
--도움 옵션 목록 표시
특징, 제한 사항
입/출력 채널을 제외한 전체 OCaml 표준 라이브러리가 지원되어야 하며,
약한 참조 및 Sys 모듈의 대부분의 기능. Bigarray와 같은 추가 라이브러리,
Unix, Thread 또는 Str은 지원되지 않습니다.
꼬리 호출은 일반적으로 최적화되지 않습니다. 그러나 자기 재귀 함수(꼬리가
호출은 함수 자체에 대한 것임) 루프로 컴파일됩니다.
재귀 모듈은 현재 지원되지 않습니다.
데이터 표현은 성능상의 이유로 일반적인 것과 다릅니다. 특히,
정수는 32비트(31비트 또는 63비트 대신)이며 부동 소수점은 박싱되지 않습니다. 결과로서,
마샬링, 다형성 비교 및 해싱 함수는 서로 다른 결과를 생성할 수 있습니다.
평소 보단:
· 플로트의 마샬링은 지원되지 않습니다(역마샬링 작업).
· 다형성 해시 함수는 데이터 구조에서 동일한 결과를 제공하지 않습니다.
플로트 포함;
· 이러한 함수는 Javascript 스택이 작기 때문에 스택 오버플로가 발생하기 쉽습니다.
onworks.net 서비스를 사용하여 온라인에서 js_of_ocaml 사용