мне нужна помощь, пытаясь понять, почему эти определенияОпределенный тип данных не определен?
data SegmentList
= SegmentList SegmentlistHeader [Segment]
| AugmentedSegmentList SegmentlistHeader [AugmentedSegment]
deriving (Show)
data SegmentlistHeader
= SegmentlistHeader DatabaseName Query LabelType TimeStamp
deriving (Show)
data Segment
= Segment SegmentLabel SegmentStart SegmentEnd Session Checksum
| AugmentedSegment SegmentLabel SegmentStart SegmentEnd Session Checksum Metadata
deriving (Show)
type DatabaseName = String
type SegmentLabel = String
type SegmentStart = Double
type SegmentEnd = Double
type Session = String
type LabelType = String
type Query = String
type TimeStamp = String
type Checksum = String
type Metadata = [(String, String)]
результат в этом сообщении об ошибке:
Not in scope: type constructor or class `AugmentedSegment'
A data constructor of that name is in scope; did you mean -XDataKinds?
в то время как это:
data UmeQueryPart
= LabelInLabelType String [String] String
| LabelType String
| UmeQueryDominance UmeQueryPart UmeQueryPart String
| UmeQuerySequence UmeQueryPart UmeQueryPart String
| UmeQueryIntersect [UmeQueryPart]
| UmeQueryUnion [UmeQueryPart]
deriving Show
компилирует как шарм. Я, очевидно, не достаточно опытны, чтобы увидеть разницу ...
Какая строка является ошибкой? –
Я тоже этого не вижу - есть что-то отсутствует (часть, которая дает эту ошибку) - кажется, больше не хватает - например, где «SegmentPlus» (или я просто пропустил)? – Carsten
Извините. Я играл с разными версиями вещи. Тем не менее такая же ошибка. Теперь он должен быть полным. Ошибка возникает из строки, где '[AugmentedSegment]', где находится «A». –