blob: b2d679fbba0eafee97ffb262af33282224ced64f (
plain) (
tree)
|
|
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="description" content="">
<meta name="author" content="Loïc Hoguin based on a design from (Soft10) Pol Cámara">
<meta name="generator" content="Hugo 0.17" />
<title>Nine Nines: Articles</title>
<link href='https://fonts.googleapis.com/css?family=Open+Sans:400,700,400italic' rel='stylesheet' type='text/css'>
<link href="/css/bootstrap.min.css" rel="stylesheet">
<link href="/css/99s.css" rel="stylesheet">
<link rel="shortcut icon" href="/img/ico/favicon.ico">
<link rel="apple-touch-icon-precomposed" sizes="114x114" href="/img/ico/apple-touch-icon-114.png">
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png">
<link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png">
<link rel="alternate" href="https://ninenines.eu/articles/index.xml" type="application/rss+xml" title="Nine Nines" />
</head>
<body class="">
<header id="page-head">
<div id="topbar" class="container">
<div class="row">
<div class="span2">
<h1 id="logo"><a href="/" title="99s">99s</a></h1>
</div>
<div class="span10">
<div id="side-header">
<nav>
<ul>
<li class="active"><a title="Hear my thoughts" href="/articles">Articles</a></li>
<li><a title="Watch my talks" href="/talks">Talks</a></li>
<li><a title="Read the docs" href="/docs">Documentation</a></li>
<li><a title="Request my services" href="/services">Consulting & Training</a></li>
</ul>
</nav>
<ul id="social">
<li>
<a href="https://github.com/ninenines" title="Check my Github repositories"><img src="/img/ico_github.png" data-hover="/img/ico_github_alt.png" alt="Github"></a>
</li>
<li>
<a title="Keep in touch!" href="http://twitter.com/lhoguin"><img src="/img/ico_microblog.png" data-hover="/img/ico_microblog_alt.png"></a>
</li>
<li>
<a title="Contact me" href="mailto:[email protected]"><img src="/img/ico_mail.png" data-hover="/img/ico_mail_alt.png"></a>
</li>
</ul>
</div>
</div>
</div>
</div>
</header>
<div id="contents" class="two_col">
<div class="container">
<div class="row">
<div class="span9 maincol">
<h1 class="lined-header"><span>Articles</span></h1>
<article class="blog_item">
<header>
<h2><a href="https://ninenines.eu/articles/xerl-0.1-empty-modules/">Xerl: empty modules</a></h2>
<p class="date">
<span class="day">30</span>
<span class="month">Jan</span>
</p>
</header>
<p>Let’s build a programming language. I call it Xerl: eXtended ERLang.
It’ll be an occasion for us to learn a few things, especially me.
Unlike in Erlang, in this language, everything is an expression.
This means that modules and functions are expression, and indeed that
you can have more than one module per file.
We are just starting, so let’s no go ahead of ourselves here. We’ll
begin with writing the code allowing us to compile an empty module.</p>
<p style="text-align:right">
<a class="read_more" href="https://ninenines.eu/articles/xerl-0.1-empty-modules/">Read More</a>
</p>
</article>
<article class="blog_item">
<header>
<h2><a href="https://ninenines.eu/articles/ranch-ftp/">Build an FTP Server with Ranch in 30 Minutes</a></h2>
<p class="date">
<span class="day">14</span>
<span class="month">Nov</span>
</p>
</header>
<p>Last week I was speaking at the
London Erlang Factory Lite
where I presented a live demonstration of building an FTP server using
Ranch.
As there was no slide, you should use this article as a reference instead.
The goal of this article is to showcase how to use Ranch for writing
a network protocol implementation, how Ranch gets out of the way to let
you write the code that matters, and the common techniques used when
writing servers.</p>
<p style="text-align:right">
<a class="read_more" href="https://ninenines.eu/articles/ranch-ftp/">Read More</a>
</p>
</article>
<article class="blog_item">
<header>
<h2><a href="https://ninenines.eu/articles/tictactoe/">Erlang Tic Tac Toe</a></h2>
<p class="date">
<span class="day">17</span>
<span class="month">Oct</span>
</p>
</header>
<p>Everyone knows Tic Tac Toe,
right?
Players choose either to be the Xs or the Os, then place their symbol
on a 3x3 board one after another, trying to create a line of 3 of them.
Writing an algorithm to check for victory sounds easy, right? It’s
easily tested, considering there’s only 8 possible winning rows (3 horizontal,
3 vertical and 2 diagonal).
In Erlang though, you probably wouldn’t want an algorithm.</p>
<p style="text-align:right">
<a class="read_more" href="https://ninenines.eu/articles/tictactoe/">Read More</a>
</p>
</article>
<nav class="pagination" role="pagination">
<a href="/articles/"><i class="fa fa-angle-double-left"></i></a>
<span>2 / 2</span>
</nav>
</div>
</div>
</div>
</div>
<footer>
<div class="container">
<div class="row">
<div class="span6">
<p id="scroll-top"><a href="#">↑ Scroll to top</a></p>
<nav>
<ul>
<li><a href="mailto:[email protected]" title="Contact us">Contact us</a></li><li><a href="https://github.com/ninenines/ninenines.github.io" title="Github repository">Contribute to this site</a></li>
</ul>
</nav>
</div>
<div class="span6 credits">
<p><img src="/img/footer_logo.png"></p>
<p>Copyright © Loïc Hoguin 2012-2016</p>
</div>
</div>
</div>
</footer>
<script src="/js/custom.js"></script>
</body>
</html>
|