<?xml version="1.0" encoding="UTF-8"?><feed xmlns="http://www.w3.org/2005/Atom"><title xmlns:ns="http://www.w3.org/2005/Atom" ns:type="text">Project management – Haskell – Aelve Guide</title><id>https://guide.aelve.com/haskell/feed/category/waiktr5i</id><updated>2016-05-06T01:42:32Z</updated><link xmlns:ns="http://www.w3.org/2005/Atom" ns:href="https://guide.aelve.com/haskell/feed/category/waiktr5i"/><entry><id>xr7011d8</id><title xmlns:ns="http://www.w3.org/2005/Atom" ns:type="text">cabal-install</title><updated>2016-05-06T01:42:32Z</updated><content xmlns:ns="http://www.w3.org/2005/Atom" ns:type="html">&lt;h1&gt;  &lt;span class=&#34;item-name&#34;&gt;cabal-install&lt;/span&gt;

  
  (&lt;a href=&#34;https://hackage.haskell.org/package/cabal-install&#34;&gt;Hackage&lt;/a&gt;)
&lt;/h1&gt;&lt;h2&gt;Pros&lt;/h2&gt;&lt;ul&gt;&lt;/ul&gt;&lt;h2&gt;Cons&lt;/h2&gt;&lt;ul&gt;&lt;/ul&gt;</content><link xmlns:ns="http://www.w3.org/2005/Atom" ns:href="https://guide.aelve.com/haskell/project-management-waiktr5i#item-xr7011d8"/></entry><entry><id>xyr2yqa5</id><title xmlns:ns="http://www.w3.org/2005/Atom" ns:type="text">stack</title><updated>2016-05-06T01:42:16Z</updated><content xmlns:ns="http://www.w3.org/2005/Atom" ns:type="html">&lt;h1&gt;  &lt;a href=&#34;http://haskellstack.org&#34; class=&#34;item-name&#34;&gt;stack&lt;/a&gt;

  
  (&lt;a href=&#34;https://hackage.haskell.org/package/stack&#34;&gt;Hackage&lt;/a&gt;)
&lt;/h1&gt;&lt;p&gt;Stack has a dedicated &lt;a href=&#34;https://docs.haskellstack.org/en/stable/README/&#34;&gt;Documentation&lt;/a&gt; website.
It is a sophisticated tool that tries to solve the tooling problem Haskell is facing.&lt;/p&gt;
&lt;h2&gt;Pros&lt;/h2&gt;&lt;ul&gt;&lt;p&gt;&lt;li&gt;Defines set of packages that work together.&lt;/li&gt;&lt;/p&gt;&lt;p&gt;&lt;li&gt;Can handle external dependencies, such as opengl when used in nix mode.&lt;/li&gt;&lt;/p&gt;&lt;p&gt;&lt;li&gt;Provides support for Docker.&lt;/li&gt;&lt;/p&gt;&lt;p&gt;&lt;li&gt;Avoids package version dependency conflicts. However, it does not solve the diamond problem.&lt;/li&gt;&lt;/p&gt;&lt;p&gt;&lt;li&gt;Can build a custom hoogle index for your project to query available packages in your project.&lt;/li&gt;&lt;/p&gt;&lt;p&gt;&lt;li&gt;Can use &lt;code&gt;package.yaml&lt;/code&gt; files instead of the classic &lt;code&gt;.cabal&lt;/code&gt; file&lt;/li&gt;&lt;/p&gt;&lt;/ul&gt;&lt;h2&gt;Cons&lt;/h2&gt;&lt;ul&gt;&lt;p&gt;&lt;li&gt;Can not share the same compiled packages over multiple projects.&lt;/li&gt;&lt;/p&gt;&lt;/ul&gt;</content><link xmlns:ns="http://www.w3.org/2005/Atom" ns:href="https://guide.aelve.com/haskell/project-management-waiktr5i#item-xyr2yqa5"/></entry></feed>