<?xml version="1.0" encoding="UTF-8"?>



<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <atom:link href="http://www.anarchyinthetubes.com/blg/index.rss" rel="self" type="application/rss+xml" />
        <title>Anarchy in the tubes</title>
        <link>http://www.anarchyinthetubes.com/blg/index.rss</link>
        <description></description>
        <language>en-us</language>
        <generator>Tom Duff's rc, and Kris Maglione's clever hackery</generator>

        <item>
            <title>Hello Xgb</title>
            <author>http@noreply.cat-v.org (http)</author>
            <link>http://www.anarchyinthetubes.com/blg/2010/03/17/0/</link>
            <guid isPermaLink="true">http://www.anarchyinthetubes.com/blg/2010/03/17/0/</guid>
            <pubDate>Wed, 17 Mar 2010 00:00:00 +0100</pubDate>
            <description>&lt;h2&gt;Hello Xgb&lt;/h2&gt;
&lt;p&gt;A new "Hello World!" program. This time, it is an X application, which uses the xgb Go package.&lt;/p&gt;
&lt;p&gt;&lt;a href="/pub/xh.go"&gt;xh.go&lt;/a&gt;:&lt;/p&gt;
&lt;code&gt;&lt;pre&gt;
// xh.go JGL (yiyus). 2010
// xgb Hello World
// 8g xh.go &amp;amp;&amp;amp; 8l -o xh xh.8 &amp;amp;&amp;amp; ./xh

package main

import (
	"fmt"
	"os"
	"xgb"
)

func hello(c *xgb.Conn, win, gc xgb.Id) {
	c.ImageText8(win, gc, 50, 50, []byte("Hello World!"))
}

func main() {
	c, err := xgb.Dial("")
	if err != nil {
		fmt.Fprintf(os.Stderr, "cannot connect: %v\n", err)
		os.Exit(1)
	}

	screen := c.DefaultScreen()
	win := c.NewId()

	c.CreateWindow(
		screen.RootDepth, win, screen.Root,
		0, 0, 300, 200, 2,
		xgb.WindowClassCopyFromParent,
		xgb.WindowClassCopyFromParent,
		xgb.CWBackPixel|xgb.CWEventMask,
		[]uint32{screen.BlackPixel, xgb.EventMaskExposure | xgb.EventMaskButtonPress},
	)

	gc := c.NewId()
	font := c.NewId()

	c.OpenFont(font, "7x13")
	c.CreateGC(gc, win,
		xgb.GCBackground|xgb.GCForeground|xgb.GCFont,
		[]uint32{screen.WhitePixel, screen.BlackPixel, uint32(font)},
	)
	c.CloseFont(font)
	r := xgb.Rectangle{0, 0, 300, 200}
	c.PolyFillRectangle(win, gc, []xgb.Rectangle{r})
	hello(c, win, gc)

	c.MapWindow(win)

Loop: for {
		reply, err := c.WaitForEvent()
		switch {
		case err != nil:
			fmt.Printf("error: %v\n", err)
			os.Exit(1)
		}
		switch event := reply.(type) {
		case xgb.ExposeEvent:
			hello(c, win, gc)
		case xgb.ButtonPressEvent:
			fmt.Println("Button", event.Detail, "pressed. Bye!")
			break Loop
		}
	}

	c.Close()
}
&lt;/pre&gt;&lt;/code&gt;

</description>
        </item>

        <item>
            <title>Going Forth</title>
            <author>http@noreply.cat-v.org (http)</author>
            <link>http://www.anarchyinthetubes.com/blg/2009/11/28/0/</link>
            <guid isPermaLink="true">http://www.anarchyinthetubes.com/blg/2009/11/28/0/</guid>
            <pubDate>Sat, 28 Nov 2009 00:00:00 +0100</pubDate>
            <description>&lt;h2&gt;Going Forth&lt;/h2&gt;
&lt;p&gt;I have spent the last months discovering Forth: learning about it, &lt;a href="http://thinking-forth.sourceforge.net/"&gt;reading&lt;/a&gt; about it, trying 4th, porting pForth to Plan9,... It is a language that I love, since I spent many hours programming my HP49G calculator and I always was a fan of the RPN syntax and simplicity in general.&lt;/p&gt;
&lt;p&gt;My last discovery has been &lt;a href="http://retroforth.org/"&gt;retroForth&lt;/a&gt;, a minimalistic Forth which runs on a portable virtual machine, Ngaro. When some days ago &lt;s&gt;Google&lt;/s&gt; the &lt;a href="http://www.golang.org"&gt;Go&lt;/a&gt;-team presented their new language I was watching Rob's talk and could not stop thinking about launching Ngaro virtual machines in goroutines communicated through channels. So... that's what I did:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;a href="http://hg.4l77.com/go/ngaro/"&gt;Gonga: Ngaro virtual machine in Go&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;With the help of crcx (the original Ngaro author, many thanks!) and after experimenting with a &lt;a href="http://hg.4l77.com/go/brainfuck/"&gt;brainfuck virtual machine&lt;/a&gt; the porting process was pretty straightforward. The retroForth image is booting without problems and you can already do some fancy things like launching children VMs and communicate their I/O ports through channels. It is a WIP yet. More to come...&lt;/p&gt;
&lt;p&gt;Have fun!&lt;/p&gt;

</description>
        </item>

        <item>
            <title>Updated werc: featuring SMAK and hgwerc</title>
            <author>http@noreply.cat-v.org (http)</author>
            <link>http://www.anarchyinthetubes.com/blg/2009/09/03/0/</link>
            <guid isPermaLink="true">http://www.anarchyinthetubes.com/blg/2009/09/03/0/</guid>
            <pubDate>Thu, 03 Sep 2009 00:00:00 +0200</pubDate>
            <description>&lt;h2&gt;Updated werc: featuring SMAK and hgwerc&lt;/h2&gt;
&lt;p&gt;The 4l77.com site has suffered a severe clean-up. Werc has been updated to its last version and customizations are less invasive now; every site is stored in a different &lt;a href="http://hg.4l77.com/"&gt;hg repository&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;My personal site (&lt;a href="http://yiyus.info"&gt;http://yiyus.info&lt;/a&gt;) has been updated too, and includes a new werc app: &lt;a href="http://hg.4l77.com/smak/"&gt;SMAK&lt;/a&gt;, a (very simple) &lt;a href="http://yiyus.info/img/"&gt;image gallery&lt;/a&gt;. Both sites include custom rc functions and template files. I also tried to improve my customized hgwebdir system so it can be useful to more people, it is also available as a &lt;a href="http://hg.4l77.com/hgwerc/"&gt;repository&lt;/a&gt;.&lt;/p&gt;

</description>
        </item>

        <item>
            <title>9fs sources</title>
            <author>http@noreply.cat-v.org (http)</author>
            <link>http://www.anarchyinthetubes.com/blg/2009/09/02/0/</link>
            <guid isPermaLink="true">http://www.anarchyinthetubes.com/blg/2009/09/02/0/</guid>
            <pubDate>Wed, 02 Sep 2009 00:00:00 +0200</pubDate>
            <description>&lt;h2&gt;9fs sources&lt;/h2&gt;
&lt;p&gt;I have finally got an account in sources (thanks Geoff!). ATM, it contains my patched versions of rio and acme and some rc functions:&lt;/p&gt;
&lt;code&gt;&lt;pre&gt;
; 9fs sources
; cd /n/sources/contrib/yiyus
; cat INDEX
cmd/acme/: patched acme (see README)
cmd/rio/: patched rio (see README)
rc/fns: collection of rc functions
&lt;/pre&gt;&lt;/code&gt;
&lt;p&gt;Of course, any comments are appreciated. Enjoy.&lt;/p&gt;

</description>
        </item>

        <item>
            <title>cat.4l77.com</title>
            <author>http@noreply.cat-v.org (http)</author>
            <link>http://www.anarchyinthetubes.com/blg/2009/06/21/0/</link>
            <guid isPermaLink="true">http://www.anarchyinthetubes.com/blg/2009/06/21/0/</guid>
            <pubDate>Sun, 21 Jun 2009 00:00:00 +0200</pubDate>
            <description>&lt;h2&gt;cat.4l77.com&lt;/h2&gt;
&lt;p&gt;From today, the &lt;strong&gt;much shorter&lt;/strong&gt; domain name &lt;a href="http://4l77.com"&gt;4l77.com&lt;/a&gt; is an alias to &lt;a href="http://anarchyinthetubes.com"&gt;anarchyinthetubes.com&lt;/a&gt;. All the subdomains (&lt;a href="http://cat.anarchyinthetubes.com"&gt;cat&lt;/a&gt;, &lt;a href="http://cmd.anarchyinthetubes.com"&gt;cmd&lt;/a&gt;, &lt;a href="http://hg.anarchyinthetubes.com"&gt;hg&lt;/a&gt;) work too. &lt;a href="http://cat.anarchyinthetubes.com"&gt;cat.anarchyinthetubes.com&lt;/a&gt; is a new addition, it contains a mirror of some of the stuff in &lt;a href="http://cat-v.org"&gt;cat-v.org&lt;/a&gt;. Thanks to uriel for sharing this.&lt;/p&gt;
&lt;p&gt;One last thing: all the markdown in these sites is being converted to html by &lt;a href="http://www.anarchyinthetubes.com/hg/md2html.awk"&gt;md2html.awk&lt;/a&gt;, which is evolving very fast towards a better compatibility with &lt;a href="http://daringfireball.net/projects/markdown/"&gt;markdown.pl&lt;/a&gt;. It still needs much more changes, but it is &lt;em&gt;working&lt;/em&gt;.&lt;/p&gt;

</description>
        </item>

        <item>
            <title>Werc Paths</title>
            <author>http@noreply.cat-v.org (http)</author>
            <link>http://www.anarchyinthetubes.com/blg/2009/06/14/0/</link>
            <guid isPermaLink="true">http://www.anarchyinthetubes.com/blg/2009/06/14/0/</guid>
            <pubDate>Sun, 14 Jun 2009 00:00:00 +0200</pubDate>
            <description>&lt;h2&gt;Werc Paths&lt;/h2&gt;
&lt;p&gt;I have implemented the path links (in small font at the top and the bottom of the page) as a separate &lt;a href="http://www.anarchyinthetubes.com/hg/hgwebdir.cgi/site/file/31c97d272304/bin/werclib.rc#l119"&gt;function&lt;/a&gt; which can added to werclib.rc.&lt;/p&gt;
&lt;p&gt;To display the path with links to every level, just call the function &lt;code&gt;pathlinks&lt;/code&gt; from a template file.&lt;/p&gt;

</description>
        </item>

        <item>
            <title>First Updates</title>
            <author>http@noreply.cat-v.org (http)</author>
            <link>http://www.anarchyinthetubes.com/blg/2009/06/05/0/</link>
            <guid isPermaLink="true">http://www.anarchyinthetubes.com/blg/2009/06/05/0/</guid>
            <pubDate>Fri, 05 Jun 2009 00:00:00 +0200</pubDate>
            <description>&lt;h2&gt;First Updates&lt;/h2&gt;
&lt;p&gt;&lt;a href="/hg/"&gt;Hg repositories&lt;/a&gt; are working now. After spending my time customizing the hgwebdir theme I am happy with the result, and will try to release it as a &lt;a href="http://werc.cat-v.org"&gt;werc&lt;/a&gt; app in the following days. Next step will be uploading all my software.&lt;/p&gt;
&lt;p&gt;There has also been some improvements on &lt;a href="/cmd/"&gt;cmd/&lt;/a&gt;, which now can also been accessed from &lt;a href="http://cmd.anarchyinthetubes.com"&gt;http://cmd.anarchyinthetubes.com&lt;/a&gt; with a cleaner interface.&lt;/p&gt;

</description>
        </item>

        <item>
            <title>Hello Punks</title>
            <author>http@noreply.cat-v.org (http)</author>
            <link>http://www.anarchyinthetubes.com/blg/2009/06/03/0/</link>
            <guid isPermaLink="true">http://www.anarchyinthetubes.com/blg/2009/06/03/0/</guid>
            <pubDate>Wed, 03 Jun 2009 00:00:00 +0200</pubDate>
            <description>&lt;h2&gt;Hello Punks&lt;/h2&gt;
&lt;p&gt;I declare inaugurated my web page: &lt;a href="http://www.anarchyinthetubes.com"&gt;http://www.anarchyinthetubes.com&lt;/a&gt;. There are some images in &lt;a href="/img"&gt;img/&lt;/a&gt; and some code I have written in &lt;a href="/src"&gt;src/&lt;/a&gt;. I still have to set up the mercurial repositories. There is also a little app &lt;a href="/cmd"&gt;cmd/&lt;/a&gt; that serves also as the links page. I will add more content with time.&lt;/p&gt;

</description>
        </item>

    </channel>
</rss>

