<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:blogChannel="http://backend.userland.com/blogChannelModule" version="2.0">
<channel>
<title>Tassos Bassoukos - Software</title>
<link>http://tassos.blogentis.net/Software</link>
<description>Environmentaly friendly. Using 100% recycled electrons. - Projects that I've created or contributed to</description>
<docs>http://backend.userland.com/rss092</docs>
<generator>blogentis 0.1</generator>
<managingEditor>Tassos Bassoukos (tassos@bassoukos.gr)</managingEditor>
<webMaster>abas@aix.meng.auth.gr</webMaster>
<ttl>1440</ttl>
<item>
<title>XMLTV grabber for Greece, take 2</title>
<link>http://tassos.blogentis.net/2008/02/26/xmltv-grabber-for-greece-take-2</link>
<guid isPermaLink="true">http://tassos.blogentis.net/2008/02/26/xmltv-grabber-for-greece-take-2</guid>
<description>&lt;p&gt;I had  &lt;a href="http://tassos.blogentis.net/2004/11/14/xmltv-grabber-for-greece"&gt;previously written an XMLTV grabber for Greece&lt;/a&gt; that had several shortcomings (problems with character encodings and scheduling of programmes after midnight), and left it there. Now, a from-scratch rewritten version is available:  &lt;a href="http://tassos.blogentis.net/media/tv_grab_el"&gt;XMLTV grabber for Greece&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;This version uses the improved XMLTV api, hence it should be available in applications that use  &lt;em&gt;tv_find_grabbers&lt;/em&gt;. Currently it extracts the following items from the  &lt;a href="http://www.nova.gr"&gt;Nova&lt;/a&gt; site: &lt;br /&gt;
&lt;/p&gt;
&lt;ul&gt;
  &lt;li&gt;Program title&lt;/li&gt;
  &lt;li&gt;Program description&lt;/li&gt;
  &lt;li&gt;Start time&lt;/li&gt;
  &lt;li&gt;Repeat status&lt;/li&gt;
  &lt;li&gt;Rating&lt;/li&gt;
  &lt;li&gt;Categories&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Optionally, in slow mode it also extracts the following items if they are available: &lt;br /&gt;
&lt;/p&gt;
&lt;ul&gt;
  &lt;li&gt;Synopsis&lt;/li&gt;
  &lt;li&gt;Image&lt;/li&gt;
  &lt;li&gt;Credits&lt;/li&gt;
  &lt;li&gt;Year of production&lt;/li&gt;
  &lt;li&gt;Duration&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;I would be interested in hearing from anyone that uses it in non-UTF8 environments (e.g. Windows users). Note that you may need to pass the results through tv_sort in some cases.&lt;br /&gt;
&lt;/p&gt;
&lt;p&gt;Many thanks to &lt;a href="http://vrypan.net/"&gt;vrypan&lt;/a&gt; for providing the motive for completing this.&lt;br /&gt;
&lt;/p&gt;</description>
<comments>http://tassos.blogentis.net/2008/02/26/xmltv-grabber-for-greece-take-2#Comments</comments>
<slash:comments>4</slash:comments>
<wfw:commentRss>http://tassos.blogentis.net/2008/02/26/xmltv-grabber-for-greece-take-2/RSS/comments</wfw:commentRss>
<trackback:ping>http://tassos.blogentis.net/2008/02/26/xmltv-grabber-for-greece-take-2/TrackBack</trackback:ping>
<author>abassouk@gmail.com (Tassos Bassoukos)</author>
<pubDate>Tue, 26 Feb 2008 12:39:21 +0200</pubDate>
<category domain="http://tassos.blogentis.net">Software</category>
</item>
<item>
<title>Status of Java Closures</title>
<link>http://tassos.blogentis.net/2008/02/04/status-of-java-closures</link>
<guid isPermaLink="true">http://tassos.blogentis.net/2008/02/04/status-of-java-closures</guid>
<description>&lt;p&gt;Since before Java SE 6 came out, a discussion has been going on in the Java community future directions and extensions of the Java language, with the most energy directed on closures. There are currently two major camps on this issue, the BGGA proposal and the CICE proposal.&lt;/p&gt;&lt;h3&gt;CICE&lt;/h3&gt;
&lt;p&gt;&lt;a href="http://docs.google.com/View?docid=k73_1ggr36h&amp;amp;pli=1"&gt;Concise Instance Creation Expressions&lt;/a&gt; by Bob Lee, Doug Lea, and Josh Bloch favor adding simple syntactic sugar for anonymous inner class creation, where&lt;/p&gt;
&lt;pre&gt;List&lt;string&gt; ls = ... ;&lt;br /&gt;Collections.sort(ls, new Comparator&lt;string&gt;() {&lt;br /&gt;  public int compare(String s1, String s2) {&lt;br /&gt;    return s1.length() - s2.length();&lt;br /&gt;  }&lt;br /&gt;});&lt;br /&gt;&lt;/string&gt;&lt;/string&gt;&lt;/pre&gt;
can be written as
&lt;pre&gt;List&lt;string&gt; ls = ... ;&lt;br /&gt;Collections.sort(ls,&lt;br /&gt;  Comparator&lt;string&gt;(String s1, String s2){ return s1.length() - s2.length(); });&lt;br /&gt;&lt;/string&gt;&lt;/string&gt;&lt;/pre&gt;
&lt;p&gt;Additionally, it allows capture of and access to the local variables of the enclosing block(s). In general it's a small proposal, with few warts, that simply provides for small gains in legibility.&lt;/p&gt;
&lt;h3&gt;BGGA&lt;/h3&gt;
&lt;p&gt;&lt;a href="http://www.javac.info/"&gt;BGGA&lt;/a&gt; is the proposal by Gilad Bracha, Neal Gafter, James Gosling and Peter von der Ahé, which is much more heavyweight, providing for true closures, function types and user-defined control abstractions. The above example could be written as &lt;br /&gt;
&lt;/p&gt;
&lt;pre&gt;List&lt;string&gt; ls = ... ;&lt;br /&gt;Collections.sort(ls,  {&lt;string&gt;String s1, String s2 =&amp;gt; int  s1.length() - s2.length()});&lt;/string&gt;&lt;/string&gt;&lt;/pre&gt;
&lt;p&gt;However, this proposal leads to some weird interactions with expected behaviour:&lt;/p&gt;
&lt;pre&gt;...&lt;br /&gt;System.out.println(&amp;quot;1&amp;quot;);&lt;br /&gt;{=&amp;gt;return;}.invoke();&lt;br /&gt;System.out.println(&amp;quot;2&amp;quot;);&lt;br /&gt;...&lt;br /&gt;&lt;/pre&gt;
The previous snippet will not print &amp;quot;2&amp;quot;, as the return is interpreted as a return from the defining method, not the closure; a new type has been added (java.lang.Unreachable) so that the previous code should not compile. What happens tho if you store the closure and invoke it after the defining method has returned? See the &lt;a href="http://www.parleys.com/display/PARLEYS/The+Closures+Controversy"&gt;Joshua Bloch presentation at JavaPolis 2007&lt;/a&gt; for a recap of the present problems.&lt;br /&gt;
&lt;br /&gt;
All in all, while BGGA adds new powerful concepts and new problems to the Java language, the community is still undecided on whether the inherent problems with closures are justified by the expressiveness they enable; several voices advocate leaving Java unmodified and switching over to JVM-based languages that have them built in, such as Scala.
&lt;h3&gt;Further Reading&lt;/h3&gt;
&lt;ul&gt;
  &lt;li&gt;&lt;a href="http://tronicek.blogspot.com/2007/12/closures-sources.html"&gt;Closures Sources&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href="http://gafter.blogspot.com/"&gt;Neil Gafter's blog&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href="http://docs.google.com/View?docid=dffxznxr_1nmsqkz"&gt;Automatic Resource Management Blocks&lt;/a&gt;, automatically closing resources on block exit.&lt;br /&gt;
  &lt;/li&gt;
  &lt;li&gt;&lt;a href="http://www.cs.ucla.edu/~todd/research/expanders/"&gt;Expanders: Statically Scoped Object Adaptation for Java&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description>
<comments>http://tassos.blogentis.net/2008/02/04/status-of-java-closures#Comments</comments>
<slash:comments>0</slash:comments>
<wfw:commentRss>http://tassos.blogentis.net/2008/02/04/status-of-java-closures/RSS/comments</wfw:commentRss>
<trackback:ping>http://tassos.blogentis.net/2008/02/04/status-of-java-closures/TrackBack</trackback:ping>
<author>abassouk@gmail.com (Tassos Bassoukos)</author>
<pubDate>Mon, 4 Feb 2008 04:34:28 +0200</pubDate>
<category domain="http://tassos.blogentis.net">Software</category>
</item>
<item>
<title>Using GWT modules in not-so-bright frameworks</title>
<link>http://tassos.blogentis.net/2006/10/10/gwt-modules-via-php</link>
<guid isPermaLink="true">http://tassos.blogentis.net/2006/10/10/gwt-modules-via-php</guid>
<description>&lt;p&gt;I've recently had to use  &lt;a href="http://code.google.com/webtoolkit/" title="Google Web Toolkit"&gt;GWT&lt;/a&gt; to implement a module for a PostNuke installation. Two problems came up with that - first, the HTML head tag was in a static file somewhere, and I could not modify it and second, the URL that would call the module was not the URL for the files of the module.&lt;/p&gt;&lt;p&gt;To add a GWT module to a static page requires three things: &lt;br /&gt;&lt;/p&gt;
&lt;ol&gt;
  &lt;li&gt;A module specific element, which usually has a specific id attribute,   where its contents will be replaced by the modules controls,&lt;/li&gt;
  &lt;li&gt;A    &lt;span class="Code"&gt;META&lt;/span&gt; tag in the    &lt;span class="Code"&gt;HEAD&lt;/span&gt; of the page, specifying the modules that will   be loaded,&lt;/li&gt;
  &lt;li&gt;A    &lt;span class="Code"&gt;SCRIPT&lt;/span&gt; tag linking to the gwt.js file.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Requirements (1) and (3) are easily met by modifying the actual HTML page, or in my case, emitting via PHP the HTML elements; however, requirement (2) is  a bit harder to implement when one does not have access to the file that contains the HEAD element. Since we're doing AJAX anyway, a Javascript snippet will help us out a bit: &lt;br /&gt;&lt;/p&gt;
&lt;pre xml:space="preserve"&gt;
&amp;lt;script type="text/javascript"&amp;gt;
   var headTag = document.getElementsByTagName('head')[0];
   var metaTag = document.createElement('meta');
   metaTag.setAttribute('name','gwt:module');
   metaTag.setAttribute('content','com.example.Module');
   headTag.appendChild(metaTag);
   headTag=null;
   metaTag=null;
&amp;lt;/script&amp;gt;&lt;/pre&gt;
&lt;p&gt;Inserting that code before the tag for (3) will ensure that our module appears at least in the DOM. However, we aren't done yet, as the files for each module are resolved by GWT relative to the  &lt;em&gt;current location&lt;/em&gt; of the browser - which isn't that useful when your URL is something along the lines of "http://example.com/index.php?module=this&amp;amp;q=that" but your GWT modules reside in "/gwt-modules/example".&lt;/p&gt;
&lt;p&gt;Googling around did not give any insight on the issue, so I delved a bit into the innards of GWT, and found an undocumented feature that allows one to rebind the base URL for a GWT module: simply use &lt;br /&gt;&lt;/p&gt;
&lt;pre xml:space="preserve"&gt;&amp;lt;meta name="gwt:module" content="http://example.com/gwt-modules/example=com.example.Module" /&amp;gt;&lt;/pre&gt;
&lt;p&gt;instead of&lt;/p&gt;
&lt;pre xml:space="preserve"&gt;&amp;lt;meta name="gwt:module" content="com.example.Module" /&amp;gt;&lt;/pre&gt;
&lt;p&gt;Obviously, this also allows for modules in different locations.&lt;/p&gt;</description>
<comments>http://tassos.blogentis.net/2006/10/10/gwt-modules-via-php#Comments</comments>
<slash:comments>3</slash:comments>
<wfw:commentRss>http://tassos.blogentis.net/2006/10/10/gwt-modules-via-php/RSS/comments</wfw:commentRss>
<trackback:ping>http://tassos.blogentis.net/2006/10/10/gwt-modules-via-php/TrackBack</trackback:ping>
<author>abassouk@gmail.com (Tassos Bassoukos)</author>
<pubDate>Tue, 10 Oct 2006 12:57:55 +0300</pubDate>
<category domain="http://tassos.blogentis.net">Software</category>
</item>
<item>
<title>Smallest code segments?</title>
<link>http://tassos.blogentis.net/2006/07/20/smallest-code-segments</link>
<guid isPermaLink="true">http://tassos.blogentis.net/2006/07/20/smallest-code-segments</guid>
<description>&lt;p&gt;Quick: how long is the shortest program to calculate the first prime number
after a given number? The answer might surprise you!&lt;/p&gt;&lt;p&gt;In perl, it's about 60 characters:&lt;/p&gt;
&lt;blockquote&gt;
  &lt;p&gt;
  &lt;code&gt;perl -e '$i=$ARGV[0]+1;$i++while("."x$i)=~/^(..+?)\1+$/;print"$i\n";'
  90&lt;/code&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Of course, I believe 
&lt;a href="http://en.wikipedia.org/wiki/APL_programming_language"&gt;APL&lt;/a&gt; will
win that contest hands down...&lt;/p&gt;
&lt;p&gt;P.S: There's even a perl competition to produce the shortest code for a
given problem, with the name 
&lt;a href="http://perlgolf.sourceforge.net/"&gt;Perl Golf&lt;/a&gt;...
&lt;br /&gt;&lt;/p&gt;</description>
<comments>http://tassos.blogentis.net/2006/07/20/smallest-code-segments#Comments</comments>
<slash:comments>9</slash:comments>
<wfw:commentRss>http://tassos.blogentis.net/2006/07/20/smallest-code-segments/RSS/comments</wfw:commentRss>
<trackback:ping>http://tassos.blogentis.net/2006/07/20/smallest-code-segments/TrackBack</trackback:ping>
<author>abassouk@gmail.com (Tassos Bassoukos)</author>
<pubDate>Thu, 20 Jul 2006 03:22:26 +0300</pubDate>
<category domain="http://tassos.blogentis.net">Self</category>
<category domain="http://tassos.blogentis.net">Software</category>
</item>
<item>
<title>Character set that understands property files</title>
<link>http://tassos.blogentis.net/2005/12/12/properties-charset</link>
<guid isPermaLink="true">http://tassos.blogentis.net/2005/12/12/properties-charset</guid>
<description>&lt;p&gt;If you are a Java developer in a non-ISO8859-1 environment, you will have
encountered the character set problem when editing property files. The spec
says that they are in ISO8859-1, with Unicode escape sequences for characters
outside that set. While one can set up automatic translation, it is intrusive
and not suited to all cases. Being fed up with the problem and the inelegance
of all the available solutions, I wrote a custom character set provider which
handles the property file encoding as a multi-byte character set.&lt;/p&gt;&lt;p&gt;The source is 
&lt;a
href="http://tassos.blogentis.net/media/property-charset/property-charset.tar.gz"&gt;here&lt;/a&gt;,
and the prebuilt JAR is 
&lt;a
href="http://tassos.blogentis.net/media/property-charset/property-charset.jar"&gt;here&lt;/a&gt;.
To use the property character set, drop the JAR file in the extension folder of
your JRE, usually $JAVA_HOME/lib/ext and restart (or start) your application.
Property files should be assigned the "X-PROP" character set, and all should be
ready.&lt;/p&gt;
&lt;p&gt;If you are using Eclipse 3.1 or later, simply go to Window → Preferences →
General → Content Types → Text → Java Properties files, set the default
encoding to X-PROP and select 
&lt;em&gt;Update&lt;/em&gt; to apply the setting.
&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;The code is in the public domain, and I'm not responsible if it munges your
files, destroys your computer or causes the next ice age, etc...&lt;/p&gt;</description>
<comments>http://tassos.blogentis.net/2005/12/12/properties-charset#Comments</comments>
<slash:comments>0</slash:comments>
<wfw:commentRss>http://tassos.blogentis.net/2005/12/12/properties-charset/RSS/comments</wfw:commentRss>
<trackback:ping>http://tassos.blogentis.net/2005/12/12/properties-charset/TrackBack</trackback:ping>
<author>abassouk@gmail.com (Tassos Bassoukos)</author>
<pubDate>Mon, 12 Dec 2005 11:58:45 +0200</pubDate>
<category domain="http://tassos.blogentis.net">Eclipse</category>
<category domain="http://tassos.blogentis.net">Software</category>
</item>
<item>
<title>Sharks with Lasers on their heads!</title>
<link>http://tassos.blogentis.net/2005/08/30/sharks-with-lasers-on-their-heads</link>
<guid isPermaLink="true">http://tassos.blogentis.net/2005/08/30/sharks-with-lasers-on-their-heads</guid>
<description>&lt;p&gt;  A recent &lt;a
  href="http://it.slashdot.org/article.pl?sid=05/08/29/2241243&amp;amp;tid=109&amp;amp;tid=218"&gt;slashdot
  discussion&lt;/a&gt; that forked off to GUI vs CLI made me think that this split
  looks artificial, and that a merger of the two would be at least worth
  investigating.&lt;/p&gt;&lt;p&gt;
  My idea is to add an optional command-line to each &lt;a
  href="http://www.gnome.org/projects/nautilus/"&gt;Nautilus&lt;/a&gt; window, which
  will be one text line high and would appear between the status bar and the
  icon view. It would be a normal terminal running the user&amp;#39;s shell, with a
  number of interaction possible between the shell and the command line:
&lt;/p&gt;
&lt;ul&gt;
  &lt;li&gt;
    the current directory of the shell and the nautilus window would be
    synchronized. The gnome-terminal in Ubuntu breezy at the time of writing
    has an implementation of current directory detection based on escaped echos
    at each prompt. Some problems here with the other way of synchronization,
    as a command to the shell might not be parsed due to the user having typed
    some text.
  &lt;/li&gt;
  &lt;li&gt;
    file selection on the icon view would result in the addition of the files
    to the command line. Again, problems will exist if the user types some
    text. Also, what happens if the use deselects some files?
  &lt;/li&gt;
  &lt;li&gt;
    a special command would take a list of files and show them in the iconic
    view. Such lists of file scan be generated with find or grep.
  &lt;/li&gt;
  &lt;li&gt;
    a keyboard command would switch the view between the four different states:
    no command line, 1 line high command line, 50% split between command line
    and icons, only command line (effectively degenerates into a terminal)
  &lt;/li&gt;
&lt;/ul&gt;</description>
<comments>http://tassos.blogentis.net/2005/08/30/sharks-with-lasers-on-their-heads#Comments</comments>
<slash:comments>0</slash:comments>
<wfw:commentRss>http://tassos.blogentis.net/2005/08/30/sharks-with-lasers-on-their-heads/RSS/comments</wfw:commentRss>
<trackback:ping>http://tassos.blogentis.net/2005/08/30/sharks-with-lasers-on-their-heads/TrackBack</trackback:ping>
<author>abassouk@gmail.com (Tassos Bassoukos)</author>
<pubDate>Tue, 30 Aug 2005 08:55:39 +0300</pubDate>
<category domain="http://tassos.blogentis.net">Software</category>
</item>
<item>
<title>XMLTV grabber for Greece</title>
<link>http://tassos.blogentis.net/2004/11/14/xmltv-grabber-for-greece</link>
<guid isPermaLink="true">http://tassos.blogentis.net/2004/11/14/xmltv-grabber-for-greece</guid>
<description>&lt;p&gt;  Some time ago I installed &lt;a href="http://www.mythtv.org/"&gt;MythTV&lt;/a&gt; on my
  computer. One major problem was that it could not find schedules for the
  greek television stations. As it used &lt;a
  href="http://membled.com/work/apps/xmltv/"&gt;XMLTV&lt;/a&gt; as the schedule grabber,
  I went and wrote one for Greece.&lt;/p&gt;&lt;p&gt;
  So, here it is: &lt;a
  href="http://isag.meng.auth.gr/blogentis/Tassos/media/xmltv/tv_grab_el"&gt;tv_grab_el&lt;/a&gt;
  will sceen-scrape &lt;a href="http://www.nova.gr"&gt;NOVA&lt;/a&gt;&amp;#39;s website and
  generate a XMLTV - compatible file.
&lt;/p&gt;
&lt;p&gt;
  Please be gentle, as a full, slow search for 7 channels will download about
  10 megabytes. Also take note that I haven&amp;#39;t managed to keep up with the
  actual XMLTV progress for several months, so while it works for me, it may
  not work for you.
&lt;/p&gt;
&lt;p&gt;
  Notes: Don&amp;#39;t forget that you will need an XMLTV installation to run this.
  Try the &lt;code&gt;-cache&lt;/code&gt; option, it should increase the speed of
  subsequent downloads, with the drawback that you will miss updates on the
  schedules. The documentation is embedded in the file. I&amp;#39;ve have had
  problem reports when running on Windows.
&lt;/p&gt;</description>
<comments>http://tassos.blogentis.net/2004/11/14/xmltv-grabber-for-greece#Comments</comments>
<slash:comments>5</slash:comments>
<wfw:commentRss>http://tassos.blogentis.net/2004/11/14/xmltv-grabber-for-greece/RSS/comments</wfw:commentRss>
<trackback:ping>http://tassos.blogentis.net/2004/11/14/xmltv-grabber-for-greece/TrackBack</trackback:ping>
<author>abassouk@gmail.com (Tassos Bassoukos)</author>
<pubDate>Sun, 14 Nov 2004 04:49:13 +0200</pubDate>
<category domain="http://tassos.blogentis.net">Software</category>
</item>
<item>
<title>From a different age...</title>
<link>http://tassos.blogentis.net/2004/10/29/from-a-different-age</link>
<guid isPermaLink="true">http://tassos.blogentis.net/2004/10/29/from-a-different-age</guid>
<description>&lt;p&gt;  I was rummaging around my old and not-so-well-kept archives, when I found two
  examples of my early programming skills (or to be precise, my lack of
  them...)&lt;/p&gt;&lt;p&gt;
  The first example is a rudimentary assembler written in AmigaBasic &lt;a
  href="/blogentis/blog/Tassos/media/Amiga%20Software/assem6.bas"&gt;here&lt;/a&gt;.
  Major features include non-structured programming (the whole thing is
  implemented as a single if-elseif block, mostly due to the fact that
  AmigaBASIC was crap and you couldn&amp;#39;t do indirect jumps), not allowing
  includes, having extremely simple assembly-time arithmetics and structures,
  and not being able to link. This was written in a summer somewhere around
  1990 or 1991 - at that time I had a disassembler on my hands, but no
  assembler, and wanted to go a step up from AmigaBASIC. Noteworthy is that I
  remember this to be a huge piece of code, easily stretching the limits of my
  capabilities when I wrote it but I just paged thru it and it is just 623
  lines of code.
&lt;/p&gt;
&lt;p&gt;
  The second example is a &lt;a
  href="/blogentis/blog/Tassos/media/Amiga%20Software/amigaforth.zip"&gt;FORTH
  interpreter&lt;/a&gt; featuring non-optimized just-in-time code generation.
  Actually, it would be quite easy to improve speed by an order of magintude
  now that I think about it, as FORTH uses a stack and most of the instructions
  just manipulate the stack. The zip file contains the core in assembly (about
  1200 instructions), the add-on numerical computation words and interfaces to
  several Amiga libraries. This was written during the summer of 1994 or 1995
  and no, don&amp;#39;t ask me about the implementation of the internals, I&amp;#39;d
  need to re-read and understand the whole thing from scratch.
&lt;/p&gt;
&lt;p&gt;
  Forth was such a pleasant language to write programs in, but very hard to
  read. I don&amp;#39;t mean this in the perl kind of sense; FORTH generally
  encourages bottom-up design, and you will find that you are using a quite
  different, custom-built language when you start implementing the higher
  levels of you application.
&lt;/p&gt;
&lt;p&gt;
  I&amp;#39;m considering these files to be in the public domain, however I would
  appreciate it if you would left me a note here.
&lt;/p&gt;</description>
<comments>http://tassos.blogentis.net/2004/10/29/from-a-different-age#Comments</comments>
<slash:comments>0</slash:comments>
<wfw:commentRss>http://tassos.blogentis.net/2004/10/29/from-a-different-age/RSS/comments</wfw:commentRss>
<trackback:ping>http://tassos.blogentis.net/2004/10/29/from-a-different-age/TrackBack</trackback:ping>
<author>abassouk@gmail.com (Tassos Bassoukos)</author>
<pubDate>Fri, 29 Oct 2004 06:18:45 +0300</pubDate>
<category domain="http://tassos.blogentis.net">Self</category>
<category domain="http://tassos.blogentis.net">Software</category>
</item>
</channel>
</rss>
