Skip to content

Commit

Permalink
2012-05-01
Browse files Browse the repository at this point in the history
  • Loading branch information
qnikst committed May 1, 2012
1 parent eb5aad9 commit 324c24f
Show file tree
Hide file tree
Showing 6 changed files with 118 additions and 4 deletions.
8 changes: 8 additions & 0 deletions atom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -32,5 +32,13 @@
<updated>2012-04-17T00:00:00Z</updated>
<summary type="html"><![CDATA[$description$]]></summary>
</entry>
<entry>
<title>cabal-dev</title>
<link href="http://example.com/posts/2012-04-30-cabal_dev.html" />
<id>http://example.com/posts/2012-04-30-cabal_dev.html</id>
<published>2012-04-30T00:00:00Z</published>
<updated>2012-04-30T00:00:00Z</updated>
<summary type="html"><![CDATA[$description$]]></summary>
</entry>

</feed>
25 changes: 25 additions & 0 deletions contact.html
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,31 @@
</div>

<h1 id="contacts">Contacts</h1>
<table>
<col width="10%"></col>
<col width="32%"></col>
<tbody>
<tr class="odd">
<td align="left">JID:</td>
<td align="left"><script type="text/javascript">
<!--
h='&#x67;&#x6d;&#x61;&#x69;&#108;&#46;&#x63;&#x6f;&#x6d;';a='&#64;';n='&#x71;&#110;&#x69;&#x6b;&#x73;&#116;';e=n+a+h;
document.write('<a h'+'ref'+'="ma'+'ilto'+':'+e+'">'+'<code>'+e+'</code>'+'<\/'+'a'+'>');
// -->
</script><noscript>qnikst at gmail dot com</noscript></td>
</tr>
<tr class="even">
<td align="left">IRC:</td>
<td align="left"><script type="text/javascript">
<!--
h='&#x69;&#114;&#x63;&#46;&#102;&#114;&#x65;&#x65;&#110;&#x6f;&#100;&#x65;&#46;&#110;&#x65;&#116;';a='&#64;';n='&#x71;&#110;&#x69;&#x6b;&#x73;&#116;';e=n+a+h;
document.write('<a h'+'ref'+'="ma'+'ilto'+':'+e+'">'+'<code>'+e+'</code>'+'<\/'+'a'+'>');
// -->
</script><noscript>qnikst at irc dot freenode dot net</noscript></td>
</tr>
</tbody>
</table>
<h2 id="about-myself">About myself</h2>
<p>Haskell developer, physysist</p>
<p>Here can be some info that nobody will need</p>
<h2 id="me-on">Me on</h2>
Expand Down
2 changes: 1 addition & 1 deletion css/screen.css

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 3 additions & 3 deletions index.html
Original file line number Diff line number Diff line change
Expand Up @@ -22,15 +22,15 @@ <h1 id="recent-posts">Recent posts</h1>
<ul>
<li>

<a href="./posts/2012-04-17-numeric-ode-1.html">Прогресс в numeric-ode</a> - <em>2012-01-04</em> - by <em>qnikst</em>
<a href="./posts/2012-04-30-cabal_dev.html">cabal-dev</a> - <em>2012-01-30</em> - by <em>qnikst</em>
</li>
<li>

<a href="./posts/2012-04-06-numeric-ode-start.html">Запуск проекта numeric-ode</a> - <em>2012-01-05</em> - by <em>qnikst</em>
<a href="./posts/2012-04-17-numeric-ode-1.html">Прогресс в numeric-ode</a> - <em>2012-01-04</em> - by <em>qnikst</em>
</li>
<li>

<a href="./posts/2012-04-05-a-first-post.html">A first post</a> - <em>2012-01-04</em> - by <em>qnikst</em>
<a href="./posts/2012-04-06-numeric-ode-start.html">Запуск проекта numeric-ode</a> - <em>2012-01-05</em> - by <em>qnikst</em>
</li>

</ul>
Expand Down
1 change: 1 addition & 0 deletions posts.html
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@

<h1 id="all-posts">All posts</h1>
<ul>
<li><a href="./posts/2012-04-30-cabal_dev.html">cabal-dev</a> - <em>2012-01-30</em> - by <em>qnikst</em></li>
<li><a href="./posts/2012-04-17-numeric-ode-1.html">Прогресс в numeric-ode</a> - <em>2012-01-04</em> - by <em>qnikst</em></li>
<li><a href="./posts/2012-04-06-numeric-ode-start.html">Запуск проекта numeric-ode</a> - <em>2012-01-05</em> - by <em>qnikst</em></li>
<li><a href="./posts/2012-04-05-a-first-post.html">A first post</a> - <em>2012-01-04</em> - by <em>qnikst</em></li>
Expand Down
80 changes: 80 additions & 0 deletions posts/2012-04-30-cabal_dev.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"></meta>
<title>QnikstBlog - cabal-dev</title>
<link rel="stylesheet" type="text/css" href="../css/screen.css"></link>
</head>
<body>
<div id="header">
QnikstBlog - cabal-dev

<div id="navigation">
<a href="../index.html">Home</a>
<a href="../posts.html">All posts</a>
<a href="../projects.html">Projects</a>
<a href="../contact.html">Contact</a>
</div>
</div>

<h1>cabal-dev</h1>

<p>by <em>qnikst</em> on <strong>2012-01-30</strong></p>

<blockquote>
<p>Q: how to use cabal?</p>
<p>A: just cabal install cabal-dev</p>
</blockquote>
<p>Cabal is a great system of building and packaging Haskell libraries but is has some downsides such as:</p>
<blockquote>
<p>1 it has very poor handling of library versions and tracking dependecies.</p>
<p>2 it can’t have multiply versions of same library (really it can but then it becomes a pain to use them)</p>
</blockquote>
<p>So sometimes it becomes a pain to fix haskell tree.</p>
<p>Cabal-dev is a cabal-install wrapper that build project and dependencies in sandboxed enviromnent, this allowes to use multiple version of the same library and so chanses to break system are very low. Additionally it generates image of installed application so you can check how it will be installed on your system without real installation.</p>
<p>Of cause as there are some problems:</p>
<blockquote>
<p>1 cabal-dev is <em>slow</em>, because you should install all dependencies in sandbox environment (unless they are installed system wide).</p>
<p>2 cabal-dev can’t handle some Setup.hs options at least it was true in Dec-2011.</p>
</blockquote>
<p>First problem easily fixed in gentoo, one can install basic dependencies with emerge, so portage will track tree consitency with `haskell-updater &lt;<a href="http://www.haskell.org/haskellwiki/Gentoo#haskell-updater">http://www.haskell.org/haskellwiki/Gentoo#haskell-updater</a>&gt;` (replacement tool for ghc-updater) and has all other features out of the box. So cabal-dev will be using most of libs from system and some other will be sandboxed.</p>
<p>For second one I had a workaround by creating makefile that run setup.hs and then <code>cabal-dev intall</code>.</p>
<p>Also cabal-dev has additional feature of running built program in ghc (i.e. run ghci and load every module in project) it can be done with</p>
<blockquote>
<p>cabal-dev build &amp;&amp; cabal-dev ghci</p>
</blockquote>
<p>Usefull links:</p>
<blockquote>
<ul>
<li><a href="https://github.com/creswick/cabal-dev">docs</a></li>
<li><a href="http://hackage.haskell.org/package/cabal-dev">hackage</a></li>
</ul>
</blockquote>

<div id="disqus_thread"></div>

<script type="text/javascript">
//
/* * * CONFIGURATION VARIABLES: EDIT BEFORE PASTING INTO YOUR WEBPAGE * * */
var disqus_shortname = 'qnikst'; // required: replace example with your forum shortname

/* * * DON'T EDIT BELOW THIS LINE * * */
(function() {
var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
dsq.src = 'http://' + disqus_shortname + '.disqus.com/embed.js';
(document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
})();
<noscript>Please enable JavaScript to view the <a href="http://disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript>
//
</script>



<div id="footer">
Site generated using <a href="http://jaspervdj.be/hakyll">Hakyll</a>

Blog comments powered by <a href="http://disqus.com" class="dsq-brlink"><span class="logo-disqus">Disqus</span></a>
</div>
</body>
</html>

0 comments on commit 324c24f

Please sign in to comment.