Добавление функции в LLVM (привязки haskell), когда количество параметров неизвестно во время компиляции

Предыстория : Я написал игрушечный интерпретатор Lisp, в который я пытаюсь добавить функциональность LLVM JIT. На данный момент введены следующие ограничения:

  • В функциях разрешены только целочисленные значения
  • Переменные могут ссылаться только на формальные параметры

Учитывая :

compile :: [Value] -- List of Formal Parameters
        -> [Value] -- Body of function
        -> CodeGenModule(Function a)`

Вопрос : Как мне создать функция, где количество параметров равно длине списка формальных параметров?

7
задан icktoofay 23 June 2011 в 02:37
поделиться