Свързани въпроси 'ghc'

Haskell/GHC: докладвани са припокриващи се екземпляри, докато контекстът позволява само един
Уважаеми експерти на Haskell/GHC, Наистина не разбирам защо GHC отчита припокриващи се случаи, докато само един всъщност е валиден според предоставените контексти. Например, нека разгледаме следната част от кода: {-# LANGUAGE FlexibleInstances...
86 изгледи
schedule 19.09.2022

Как да направите CAF не CAF в Haskell?
Как да направя постоянна приложна форма, добре, не постоянна приложна форма, за да спра да се запазва за целия живот на програмата? Опитах този подход: -- | Dummy parameter to avoid creating a CAF twoTrues :: () -> [[[Bool]]] twoTrues _ =...
2475 изгледи
schedule 19.11.2022

NoMonomorphismRestriction помага да се запази споделянето?
Опитвах се да отговоря на друг въпрос относно полиморфизма срещу споделяне, когато се натъкнах на това странно поведение. В GHCi, когато изрично дефинирам полиморфна константа, тя не получава никакво споделяне, което е разбираемо: > let...
683 изгледи

GHC не успява да зареди fftw свързвания, какъв е проблемът?
Опитвам се да използвам обвързванията на fftw haskell в Math.FFT. При опит за компилиране ghc изплюва следното : /usr/local/lib/libfftw3.a: Лоша магия. Очаква се: feedface, получи се: feedfacf. ghc: паника! ("невъзможното" се случи) (GHC...
101 изгледи
schedule 27.11.2022

c2hs - анонимни изброявания?
Препратката към c2hs (известна още като „Урок“) споменава името на C enum като незадължителен параметър. Има ли някакъв начин да го накарам да работи с анонимни енуми? Определянето кой enum да се генерира трябва да е възможно, като се има предвид...
162 изгледи
schedule 06.11.2023

Как да принудя GHC да вгражда FFI повиквания?
Направих малък C модул, за да подобря производителността, но GHC не вгражда чужди функции и цената на разговорите елиминира ускорението. Например test.h : int inc (int x); test.c : #include "test.h" int inc(int x) {return x + 1;}...
536 изгледи
schedule 03.11.2023

Control.Monad.Writer намерен в множество пакети haskell
Опитах се да импортирам модула Control.Monad.Writer така: import Control.Monad.Writer ghc версия 7.4.1 дава следната грешка: Ambiguous module name `Control.Monad.Writer': it was found in multiple packages: monads-tf-0.1.0.1...
793 изгледи
schedule 27.11.2022

Съществува ли някакъв метод за бързо откриване на валидни версии на диапазон на използваната библиотека
Аз съм начинаещ програмист на Haskell. Написах полезен код през последните шест месеца. И искам да освободя библиотека от него. Кодът ще използва кабала за системна инсталация като всяка библиотека на Haskell. Библиотека е пусната с cabal има файл...
78 изгледи
schedule 06.12.2023

Използване на Type.Equality с PolyKinds
Този код за компилиране е минимизиран пример за този код от отговор на този проблем със syntactic-2.0. Също така използвам дефиниция на sameModType , извлечена от sameNat в Data.Type.Equality. Използвах това решение без проблем, но бих...
428 изгледи
schedule 06.11.2023

Неопровержимият модел не пропуска памет при рекурсия, но защо?
Функцията mapAndSum в кодовия блок докрай комбинира map и sum (няма значение, че в главната функция е приложено друго sum , то просто служи, за да направи изхода компактен). map се изчислява лениво, докато sum се изчислява с помощта на...
629 изгледи

Как се избират имена на променливи в сигнатури на типове, изведени от GHC?
Когато си играя с проверка на типове функции в Haskell с :t , например като тези в предишния ми въпрос , Склонен съм да постигна резултати като: Eq a => a -> [a] -> Bool (Ord a, Num a, Ord a1, Num a1) => a -> a1 -> a (Num t2,...
895 изгледи
schedule 21.12.2023

Как да компилирам статично C библиотека в Haskell модул, който по-късно мога да заредя с GHC API?
Ето моят желан случай на употреба: Имам пакет с един модул, който чете HDF5 файлове и записва някои от техните данни в записи на Haskell. За да свърши работата, библиотеката използва пакета bindings-hdf5 . Ето build-depends на моята кабала....
515 изгледи
schedule 08.12.2022

Защо GHC не дава предупреждение за време на компилиране за изключението No match in record selector?
Когато стартирам този бъги код... data Person = Adult { pName :: String} | Kid { pName :: String , pAge :: Int } deriving Show getAge :: Person -> Int getAge p = pAge p getName :: Person...
2937 изгледи
schedule 27.12.2023

Извличане на Typeable и данни за GADT?
Използвайки: {-# LANGUAGE GADTs #-}...
311 изгледи
schedule 29.11.2023

как да насоча haskell към android с помощта на jhc?
Искам да напиша функция (модул) на Haskell от тип: String -> String за извикване в Android. Най-лесният метод изглежда да използва JHC за генериране на C код, след което да използва Android NDK за генериране на споделена библиотека, но не можах...
361 изгледи
schedule 08.11.2023

Защо този код се държи различно с включени или изключени оптимизации?
Имам прост тестов инструмент за бъга, който е в моя OpenPGP модул https://github.com/singpolyma/OpenPGP-Haskell/blob/master/Data/OpenPGP.hs : module Main where import Data.OpenPGP import Data.Binary (encode, decode) packet =...
269 изгледи
schedule 01.02.2024

Преинсталирайте поведението на cabal-dev
Най-новата инсталация на cabal, която използвах (0.13.3, от darcs repo) е хубава; той ви уведомява кога може да прекъснете вашата GHC инсталация с преинсталирания. Това, което искам да знам е следното: да предположим, че cabal install foo ще...
316 изгледи
schedule 08.02.2024

Копирайте инсталирания ghc и всички пакети на друга машина
Изправен съм пред особен проблем. Тук, в гимназията, получих около 10 компютъра (всички са от един и същи тип, един и същ тип процесор, един и същи тип памет и т.н.), които сега работят с Debian след преинсталиране. Опитвах се да науча учениците на...
127 изгледи
schedule 12.12.2023

Какъв алгоритъм се използва в Haskell (GHC) за извличане на типове рекурсивни изрази?
Разгледайте следните примери: Нерекурсивни функции f x = x g y = f 'A' GHC прави заключение f :: a -> a Взаимно рекурсивни функции f x = const x g g y = f 'A' Сега GHC извежда f :: Char -> Char , въпреки че типът...
687 изгледи

GHC: оптимизации на низове на Haskell
Знам, че Data.Text е много по-ефективен начин за съхраняване на низови данни от String = [Char] . Въпреки това изглежда, че редица функции, които виждам в библиотеките, очакват String , предадено към тях. Свързаният списък от Char s изглежда...
249 изгледи
schedule 01.04.2024