<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 12pt;
font-family:·s²Ó©úÅé
}
--></style></head>
<body class='hmmessage'><div dir='ltr'><font size="3" style="font-size:12pt;" color="#000000">after untar &nbsp;</font><a href="https://agda.github.io/agda-stdlib" target="_blank">https://agda.github.io/agda-stdlib</a><div><font size="3" style="font-size:12pt;" color="#000000"><br></font></div><div><font size="3" style="font-size:12pt;" color="#000000">into &nbsp;directory&nbsp;</font></div><div><font size="3" style="font-size:12pt;" color="#000000">/home/martin/adga2/agda-stadlib</font></div><div><br></div><div>cd &nbsp;ffi</div><div>cabal install Setup.hs</div><div><br>does it mean that the &nbsp;extracted &nbsp;file path is the library &nbsp;path ?</div><div><br></div><div>/home/martin/adga2/agda-stadlib ?<br><br><div>Regards,</div><div><br></div><div>Martin&nbsp;</div><br><br><div>&gt; Subject: RE: [Agda] how to run helloworld in agda<br>&gt; From: mechvel@botik.ru<br>&gt; To: tesleft@hotmail.com<br>&gt; CC: agda@lists.chalmers.se<br>&gt; Date: Wed, 9 Dec 2015 15:41:17 +0400<br>&gt; <br>&gt; On Wed, 2015-12-09 at 19:11 +0800, Mandy Martino wrote:<br>&gt; &gt; Hi,<br>&gt; &gt; <br>&gt; &gt; <br>&gt; &gt; how to  find  the  path  of  stdlib after it  install ?<br>&gt; &gt; <br>&gt; <br>&gt; For example, I have installed Standard library in <br>&gt; <br>&gt;     /home/mechvel/agda/stLib/oct29-2015/src,<br>&gt; <br>&gt; so that this directory contains Algebra.agda, and other .agda files and<br>&gt; subdirectories.  <br>&gt; Agda is called as <br>&gt; <br>&gt;   agda -c $agdaLibOpt MyProgram.agda<br>&gt; <br>&gt; where  $agdaLibOpt  is<br>&gt; <br>&gt;  -i . -i /home/mechvel/agda/stLib/oct29-2015/src -i /home/mechvel/source<br>&gt; <br>&gt; It lists 3 paths. The last path points to where reside my .agda files<br>&gt; which MyProgram imports. <br>&gt; <br>&gt; ------<br>&gt; Sergei<br>&gt; <br>&gt; <br>&gt; &gt; martin@ubuntu:~/adga2/stdlib/agda-stdlib/ffi$ cat Setup.hs <br>&gt; &gt; import Distribution.Simple<br>&gt; &gt; <br>&gt; &gt; <br>&gt; &gt; main = defaultMain<br>&gt; &gt; <br>&gt; &gt; <br>&gt; &gt; martin@ubuntu:~/adga2/stdlib/agda-stdlib$ ls<br>&gt; &gt; agda-stdlib.agda-lib  GenerateEverything.hs  LICENCE<br>&gt; &gt;  README.md<br>&gt; &gt; AllNonAsciiChars.hs   GNUmakefile            notes<br>&gt; &gt;  Setup.hs<br>&gt; &gt; CHANGELOG             Header                 publish-listings.sh  src<br>&gt; &gt; doc                   index.sh               README<br>&gt; &gt; ffi                   lib.cabal              README.agda<br>&gt; &gt; <br>&gt; &gt; <br>&gt; &gt; <br>&gt; &gt; Regards,<br>&gt; &gt; <br>&gt; &gt; <br>&gt; &gt; Martin <br>&gt; &gt; <br>&gt; &gt; <br>&gt; &gt; &gt; Subject: Re: [Agda] how to run helloworld in agda<br>&gt; &gt; &gt; From: mechvel@botik.ru<br>&gt; &gt; &gt; To: tesleft@hotmail.com<br>&gt; &gt; &gt; CC: agda@lists.chalmers.se<br>&gt; &gt; &gt; Date: Tue, 8 Dec 2015 21:06:16 +0400<br>&gt; &gt; &gt; <br>&gt; &gt; &gt; On Tue, 2015-12-08 at 16:10 +0800, Mandy Martino wrote:<br>&gt; &gt; &gt; &gt; The interactive mode is no longer supported. Don't complain if it<br>&gt; &gt; &gt; &gt; doesn't work.<br>&gt; &gt; &gt; &gt; Main&gt; :l ag.agda<br>&gt; &gt; &gt; &gt; Checking ag (/home/martin/adga2/ag.agda).<br>&gt; &gt; &gt; &gt; /home/martin/adga2/ag.agda:3,13-25<br>&gt; &gt; &gt; &gt; Failed to find source of module IO.Primitive in any of the<br>&gt; &gt; &gt; &gt; following locations:<br>&gt; &gt; &gt; &gt; /home/martin/adga2/IO/Primitive.agda<br>&gt; &gt; &gt; &gt; /home/martin/adga2/IO/Primitive.lagda<br>&gt; &gt; &gt;<br>&gt; &gt; &gt; /home/martin/.cabal/share/i386-linux-ghc-7.10.1/Agda-2.4.2.3/lib/prim/IO/Primitive.agda<br>&gt; &gt; &gt;<br>&gt; &gt; &gt; /home/martin/.cabal/share/i386-linux-ghc-7.10.1/Agda-2.4.2.3/lib/prim/IO/Primitive.lagda<br>&gt; &gt; &gt; &gt; when scope checking the declaration<br>&gt; &gt; &gt; &gt; open import IO.Primitive using (IO; putStrLn)<br>&gt; &gt; &gt; &gt; Failed.<br>&gt; &gt; &gt; &gt; Main&gt;<br>&gt; &gt; &gt; &gt; <br>&gt; &gt; &gt; &gt; module ag where<br>&gt; &gt; &gt; &gt; <br>&gt; &gt; &gt; &gt; open import IO.Primitive using (IO; putStrLn)<br>&gt; &gt; &gt; &gt; open import Data.String using (toCostring; String)<br>&gt; &gt; &gt; &gt; open import Foreign.Haskell using (Unit)<br>&gt; &gt; &gt; &gt; <br>&gt; &gt; &gt; &gt; main : IO Unit<br>&gt; &gt; &gt; &gt; main = putStrLn (toCostring "Hello, Agda!")<br>&gt; &gt; &gt; &gt; <br>&gt; &gt; &gt; <br>&gt; &gt; &gt; I remove "module ag where" (because this module has `main' in it),<br>&gt; &gt; &gt; and apply<br>&gt; &gt; &gt; <br>&gt; &gt; &gt; agda -c $agdaLibOpt Hello.agda<br>&gt; &gt; &gt; <br>&gt; &gt; &gt; where $agdaLibOpt contains the path to the /src directory of<br>&gt; &gt; &gt; Standard library.<br>&gt; &gt; &gt; This makes the executable file Hello.<br>&gt; &gt; &gt; Then, the command <br>&gt; &gt; &gt; <br>&gt; &gt; &gt; ./Hello <br>&gt; &gt; &gt; prints <br>&gt; &gt; &gt; "Hello, Agda!"<br>&gt; &gt; &gt; <br>&gt; &gt; &gt; <br>&gt; &gt; &gt; &gt; why use open import, but not import<br>&gt; &gt; &gt; <br>&gt; &gt; &gt; After "import Foo",<br>&gt; &gt; &gt; <br>&gt; &gt; &gt; one can write Foo.foo, if foo is defined in Foo module.<br>&gt; &gt; &gt; After<br>&gt; &gt; &gt; import Foo<br>&gt; &gt; &gt; open Foo using (foo) <br>&gt; &gt; &gt; <br>&gt; &gt; &gt; one can write `foo' in the scope.<br>&gt; &gt; &gt; And the line<br>&gt; &gt; &gt; <br>&gt; &gt; &gt; open import Foo using (foo)<br>&gt; &gt; &gt; <br>&gt; &gt; &gt; combines the above lines of `import' and `open'.<br>&gt; &gt; &gt; <br>&gt; &gt; &gt; Regards,<br>&gt; &gt; &gt; <br>&gt; &gt; &gt; ------<br>&gt; &gt; &gt; Sergei<br>&gt; &gt; &gt; <br>&gt; &gt; &gt; <br>&gt; &gt; &gt; <br>&gt; &gt; <br>&gt; <br>&gt; <br></div></div>                                               </div></body>
</html>