JSFiddle - React, Tailwind, and code Playground

HTML

<script src="http://gerardpaapu.com/seq/seq.js"></script>
<table cellspacing="0" cellpadding="0">
    <tr>
        <td>test</td>
        <td>test</td>
        <td>test</td>
    </tr>
    <tr>
        <td>test</td>
        <td>test</td>
        <td>test</td>
    </tr>
    <tr>
        <td>test</td>
        <td>test</td>
        <td>test</td>
    </tr>
    <tr>
        <td>test</td>
        <td>test</td>
        <td>test</td>
    </tr>
    <tr>
        <td>test</td>
        <td>test</td>
        <td>test</td>
    </tr>
    <tr>
        <td>test</td>
        <td>test</td>
        <td>test</td>
    </tr>
</table>

<ul>
    <li>LOL wot?</li>
    <li>LOL wot?</li>
    <li>LOL wot?</li>
    <li>LOL wot?</li>
    <li>LOL wot?</li>
    <li>LOL wot?</li>
    <li>LOL wot?</li>
    <li>LOL wot?</li>
</ul>

CSS

td { padding: 5px; }
tr.odd { background: #ccc; }
li.first { background: pink; }
li.second { background: yellow; }
td.prime { background: pink; }

JavaScript

var integers = Seq.iter(1, op('+', 1));

function toList (arr) {
    arr = $type(arr) == 'array' ? arr : arr.toArray();
    
    var items = arr.map(
        function (item) {
            return new Element('li', {'text': item.toString()});
        });
    
    new Element('ul').adopt(items).inject(document.body);
}

function paragraph(o) {
    new Element('p', {
        text: o.toString()
    }).inject(document.body);
}

function table (rows) {
    function cell (datum) {
        return function (text, xClass) {
            return new Element('td', {
                'text': text,
                'class': xClass
            });
        }.run(datum);
    }
    
    function row (data) {
        return new Element('tr').adopt(
            data.map(cell)
        );
    }
    
    new Element('table').adopt(
        rows.map(row)
    ).inject(document.body);
}

window.addEvent('domready', function () {
    $$('tr').toSeq()
        .stepwise(2, function (odd, even){
            odd.addClass('odd');
        })
        .doRun();
    
    Seq.map(
        $$('li'), Seq.cycle ('first', 'second', 'third'),
        function (el, cl) {
            el.addClass(cl);
        })
        .doRun();
    
    function ordinal (a) {
        a = a.toString();
        return a.match(/^1.$/) ? a + "th"  // teenth
            :  a.match(/1$/)   ? a + "st"  // first
            :  a.match(/2$/)   ? a + "nd"  // second
            :  a.match(/3$/)   ? a + "rd"  // third
            :                    a + "th"; // nth
        
    }
    
    var items = Seq.map (
        Seq.iter(1, 1, op('+')), integers.map(ordinal),
        function (fib, index) {
            return "{0} is the {1} fibonacci number.".substitute(arguments);
        });
    
    toList(items.take(20));
    
    
    (function () {
        // Everyone's favourite! Run Length Encoding
        
        var nums = (""
                    + "WWWWWWWWWWWWBWWWWWWWW"
                    + "WWBBBWWWWWWWWWWWWWWWW"
                 ...