Существует ли компилятор C, подобный Haskell/ML?
Вопрос
Люди иметь написано игры для iPhone в схеме.Поскольку (некоторые) компиляторы Scheme компилируются в C, их было легко смешать с Objective-C и интегрировать с XCode.
Я осведомленный из патчи для компиляторов Haskell и OCaml для включения ARM/iOS-серверов.Но они кажутся неофициальными и экспериментальными/нестабильными.
Я предпочитаю статическую систему типов Haskell/ML динамической типизации Scheme.Существует ли стабильный компилятор ML/SML/Haskell, который генерирует C-код, чтобы его можно было использовать аналогично Scheme/Gambit-C?
Решение
Я не могу помочь с ML, но вы посмотрели ЮХК?JHC — это полнопрограммный оптимизирующий компилятор Haskell, ориентированный на портативный C, а поддержку iPhone можно добавить, поставив
[iphone]
cc=arm-apple-darwin-gcc
merge=le32
в ~/.jhc/targets.ini
Дополнительную информацию о Haskell можно найти на странице Хаскелл вики и руководство JHC.
Другие советы
(Я не уверен, что этот инструмент был предпринят специально на iPhone.)
Млтон является целой программой, оптимизирующей стандартный компилятор ML. Вы можете сохранить свой код C, пройдя -keep g
Млтону в компиляции, например:
c:/Program Files (x86)/MLton/bin/mlton.bat" -verbose 1 -keep g test.sml
Он также может генерировать код руки изначально.
NHC98: http://www.haskell.org/nhc98/
Полный Хаскелл '98. Конечно, многие LIBS теперь полагаются на более продвинутые функции только GHC. Но Haskell '98 - это много возможностей для программирования общего назначения.