-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathhdirect.cabal
139 lines (135 loc) · 4.09 KB
/
hdirect.cabal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
Name: hdirect
Version: 0.22.0
Synopsis: An IDL compiler for Haskell
Description:
HaskellDirect is an IDL compiler for Haskell, which offers a helping
hand to the Haskell programmer that wants to better interact with
and reuse external code.
.
Interfacing Haskell code to external code involves the conversion of
values between the Haskell world and the outside, as data
representations and details of how memory is managed, are worlds
apart at times. Manually writing the boilerplate code that takes
care of this conversion is about as exciting as watching grass grow
and, as a result, error prone.
.
Using an Interface Definition Language (IDL) as basis, HaskellDirect
automates the generation of such impedance matching code, generating
all the necessary marshaling code for you.
.
With IDL, the functionality provided by a programming interface is
specified in a programming language neutral framework. The
HaskellDirect IDL compiler converts this specification into a set of
method stubs. Depending on how the compiler is invoked, these stubs
can be used to:
.
* Call upon external functions from within Haskell, HaskellDirect creates bindings to external (C-callable) libraries.
.
* Let external code call upon Haskell functions, HaskellDirect creates foreign/external language interfaces to Haskell libraries.
.
* Call COM (Microsoft's Component Object Model) methods from Haskell, HaskellDirect helps you use Microsoft COM components from within Haskell. The generated stubs can be used with Hugs98 or GHC.
.
* Create COM method wrappers, HaskellDirect packages up Haskell code as COM components.
.
The HaskellDirect IDL compiler currently groks both the OSF DCE
dialect of IDL (including the various extensions introduced by the
Microsoft IDL compiler) and the OMG IIOP/CORBA dialect. (Only the
former can be used for describing COM interfaces.)
.
homepage: http://www.haskell.org/hdirect/
License: BSD3
License-File: LICENSE
Author: Sigbjorn Finne
Maintainer: Don Stewart <[email protected]>
Copyright: 1998-2003 University of Glasgow and Sigbjorn Finne. 2010 Don Stewart
Stability: Stable
Category: Development
Build-type: Simple
cabal-version: >= 1.6
source-repository head
type: darcs
location: http://code.haskell.org/~dons/code/hdirect
Executable hdirect
hs-source-dirs: src
Main-Is: Main.lhs
ghc-options: -Wall
build-tools: happy
build-depends: base >= 2 && < 5,
pretty,
array,
old-locale,
old-time,
process
library
hs-source-dirs: src
build-tools: happy
build-depends: base >= 2 && < 5,
pretty,
array
exposed-modules:
AbsHUtils
AbstractH
Attribute
Bag
BasicTypes
CStubGen
CgMonad
CodeGen
CoreIDL
CoreUtils
CustomAttributes
DefGen
Desugar
Digraph
DsMonad
Env
FiniteMap
GetOpt
HugsCodeGen
IDLSyn
IDLToken
IDLUtils
ImportLib
JavaProxy
Lex
LexM
LibUtils
Literal
Main
MarshallAbstract
MarshallAuto
MarshallCore
MarshallDep
MarshallEnum
MarshallFun
MarshallJNI
MarshallJServ
MarshallMethod
MarshallMonad
MarshallServ
MarshallStruct
MarshallType
MarshallUnion
MarshallUtils
MkImport
NameSupply
NativeInfo
NormaliseType
OmgParser
Opts
PP
Parser
PpAbstractH
PpCore
PpIDLSyn
PreProc
Rename
RnMonad
Skeleton
SrcLoc
SymbolTable
TLBWriter
TypeInfo
Utils
Validate
Version