Как я могу использовать wxFreeChart в wxHaskell?

Я новичок в haskell.

хотя на странице wxFreeChart в wxCode говорится, что она поддерживает все порты wx, я понятия не имею, как используйте это в haskell


person snow    schedule 11.01.2012    source источник


Ответы (2)


Это библиотека C ++, поэтому вам придется связать ее самостоятельно, если вы хотите использовать ее из Haskell; это вряд ли будет практичным, поскольку привязка библиотек C ++ к Haskell - сложная задача. (Действительно, сам wxHaskell основан на настраиваемой «привязке» wxWidgets к чистому C.)

Вероятно, вам следует найти другой способ выполнить ту же задачу, или, если вам действительно нужно использовать wxFreeChart, напишите свой графический интерфейс прямо на C ++. Вы по-прежнему можете использовать Haskell для базовой логики, используя FFI.

Порты wxWidgets здесь не актуальны; они части, которые приклеивают wxWidgets к оконной системе, такой как Windows, GTK + и т. д.

Если вы не слишком привязаны к wxWidgets, вы можете проверить библиотеку Chart, которая может быть используется с Gtk2Hs. Я сам не использовал его, но он кажется вполне отполированным.

person ehird    schedule 11.01.2012
comment
это сложно или легко сделать? Есть ли какая-нибудь информация для привязки библиотеки? Я бы хотел попробовать связать это - person snow; 11.01.2012
comment
Привязать библиотеки C ++ к Haskell очень сложно; как говорится в моем обновленном посте, в основном это связано с написанием вашей собственной привязки C к библиотеке. Затем вам нужно импортировать эту привязку C с помощью FFI (возможно, используя hsc2hs или c2hs), напишите обертки вокруг него, чтобы его можно было использовать с Haskell ... даже в этом случае я не уверен, что вы сможете заставить его работать с wxHaskell, поскольку вы не обязательно сможете получить базовые типы wxWidgets, которые вам нужны перейти к wxFreeChart. - person ehird; 11.01.2012
comment
Я бы точно не рекомендовал пытаться написать привязку для библиотеки C ++ новичку :) - person ehird; 11.01.2012
comment
хорошо, спасибо за ответ. Тогда я почитаю что-нибудь о FFI. - person snow; 11.01.2012

Я автор wxFreeChart. Под «Все порты» я имел в виду Windows, MacOS X, Gtk +, универсальные порты.

wxHaskell напрямую не поддерживается, и нет никаких планов по его поддержке. Если wxFreeChart будет работать с wxHaskell, это прекрасно. Но я не уверен в этом.

person Андрей Москвичёв    schedule 17.02.2013