10.14489/vkit.2021.06.pp.049-056 |
DOI: 10.14489/vkit.2021.06.pp.049-056 Конюхова О. В., Кравцова Э. А., Ужаринский А. Ю. Аннотация. Рассматривается один из возможных вариантов программной реализации подхода к разработке интерактивных приложений с графическим пользовательским интерфейсом на основе совместного использования языка функционального программирования Haskell и среды разработки Qt Creator. Язык Haskell используется для выполнения вычислений, среда Qt Creator – для разработки пользовательского интерфейса. Ключевые слова: реализация алгоритмов на Haskell; интерактивные приложения; графический интерфейс в Haskell; язык С++; среда разработки Qt Creator; совместное использование Haskell и Qt Creator.
Konyuhova O. V., Kravtsova E. A., Uzharinskiy A. Yu. Abstract. The Haskell language allows you to efficiently implement computational algorithms. Higher-order functions, composition of functions, lazy calculations allow you to create functional programs with a clear structure that most fully reflect the logic of the algorithm being implemented. This allows you to get programs that are more compact and more flexible to make changes. Also, the use of pure functions allows you to avoid errors associated with the influence of the “side effect”. The I / O operations required for user interaction use special constructs and functions with a “side effect”, which violates the functional purity of the Haskell language. The approach considered in the article involves the allocation of two parts in an interactive application: interface (front-end) and computing (back-end), interacting with each other by exchanging parameters. The interface part of the application organizes the interaction with the user through the graphical user interface, and the computational part provides the algorithm implementation. To implement front-end is proposed to use the Qt Creator framework with C++ language, and to implement the back-end – the Haskell language. Using a shared address space (files) for data exchange minimizes the impact of the “outside world” on the Haskell program. We also consider a possible way of the software implementation of this approach and example of its applying to develop an application for solve the k-shortest path problem in a graph. Keywords: Implementation of algorithms in Haskell; Interactive applications; Graphical interface in Haskell; C++ language; Qt Creator framework; Sharing of Haskell and Qt Creator.
РусО. В. Конюхова, Э. А. Кравцова, А. Ю. Ужаринский (Орловский государственный университет имени И. С. Тургенева, Орел, Россия) E-mail: Этот e-mail адрес защищен от спам-ботов, для его просмотра у Вас должен быть включен Javascript EngO. V. Konyuhova, E. A. Kravtsova, A. Yu. Uzharinskiy (Orel State University named after I. S. Turgenev, Orel, Russia) E-mail: Этот e-mail адрес защищен от спам-ботов, для его просмотра у Вас должен быть включен Javascript
Рус1. Haskell Platform [Электронный ресурс]. URL: http://haskell.org (дата обращения: 19.05.2021). Eng1. Haskell Platform. Available at: http://haskell.org (Accessed: 19.05.2021).
РусСтатью можно приобрести в электронном виде (PDF формат). Стоимость статьи 450 руб. (в том числе НДС 18%). После оформления заказа, в течение нескольких дней, на указанный вами e-mail придут счет и квитанция для оплаты в банке. После поступления денег на счет издательства, вам будет выслан электронный вариант статьи. Для заказа скопируйте doi статьи: 10.14489/vkit.2021.06.pp.049-056 Отправляя форму вы даете согласие на обработку персональных данных. .
EngThis article is available in electronic format (PDF). The cost of a single article is 450 rubles. (including VAT 18%). After you place an order within a few days, you will receive following documents to your specified e-mail: account on payment and receipt to pay in the bank. After depositing your payment on our bank account we send you file of the article by e-mail. To order articles please copy the article doi: 10.14489/vkit.2021.06.pp.049-056 and fill out the
.
|