<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss'><id>tag:blogger.com,1999:blog-28320851</id><updated>2009-02-20T16:10:06.446-08:00</updated><title type='text'>Internetactive</title><subtitle type='html'>What comes after Radioactive?</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://bq9.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28320851/posts/default'/><link rel='alternate' type='text/html' href='http://bq9.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Burak Emir</name><uri>http://www.blogger.com/profile/01651698653168460072</uri><email>noreply@blogger.com</email></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>14</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-28320851.post-8633572324969773671</id><published>2008-05-05T00:41:00.000-07:00</published><updated>2008-05-05T00:47:01.199-07:00</updated><title type='text'>first baby steps with luatex</title><content type='html'>ok, I compiled the luatex beta and was puzzled on how to run this.&lt;br /&gt;&lt;br /&gt;Then I found Luigi Scarso's &lt;a href="http://www.ntg.nl/pipermail/ntg-context/2007/026583.html"&gt;answer&lt;/a&gt;:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;what about&lt;br /&gt;$texmfstart texexec --luatex luatest1.tex&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;What is texmfstart? No idea, but "wer sucht, der findet"&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;$ locate texmfstart&lt;br /&gt;/usr/local/teTeX/share/texmf.local/scripts/context/ruby/texmfstart.rb&lt;br /&gt;/usr/local/teTeX/share/texmf.tetex/scripts/context/ruby/texmfstart.rb&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;I do remember having played with context ones, but I do not remember whether I installed context there. Anyway, the .rb extension is for ruby, so&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;ruby /usr/local/teTeX/share/texmf.local/scripts/context/ruby/texmfstart.rb texexec --luatex sheet06.tex&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;did what I wanted... mostly. It produces a .pdf but it looks very basic, the page numbers are on the top of the page, and so on. Well a good starting point nevertheless.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28320851-8633572324969773671?l=bq9.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bq9.blogspot.com/feeds/8633572324969773671/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=28320851&amp;postID=8633572324969773671' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28320851/posts/default/8633572324969773671'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28320851/posts/default/8633572324969773671'/><link rel='alternate' type='text/html' href='http://bq9.blogspot.com/2008/05/first-baby-steps-with-luatex.html' title='first baby steps with luatex'/><author><name>Burak Emir</name><uri>http://www.blogger.com/profile/01651698653168460072</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='12949530281688601870'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28320851.post-253658234641116067</id><published>2008-04-06T07:30:00.000-07:00</published><updated>2008-04-06T09:23:01.602-07:00</updated><title type='text'>lost in multi-lingualization</title><content type='html'>I figured out that my multi-lingual dictionary needs a multi-lingual website.&lt;br /&gt;&lt;br /&gt;In web-design as elsewhere, i18n is quite a pain: one has to actually think what one wants before going off and doing something.&lt;br /&gt;&lt;br /&gt;For my web dictionary and its associated websites, there is one obvious requirement: the text on every page should be viewable in various languages.&lt;br /&gt;&lt;br /&gt;There are interesting links on the net on how to approach this systematically: I have found the following particularly useful:&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;  &lt;li&gt; the comments in W3C's q&amp;a blog article &lt;a href="http://www.w3.org/QA/2006/02/content_negotiation.html"&gt;Content Negotiation: why it is useful, and how to make it work&lt;/a&gt;  &lt;/li&gt;&lt;br /&gt;  &lt;li&gt; the EURESCOM report &lt;a href="http://eurescom.de/~pub-deliverables/P900-series/P923/P923_brochure.pdf"&gt;Multi-lingual web sites: Best practice guidelines and architectures&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;When looking for a standard encoding of languages as strings, the &lt;a href="http://www.loc.gov/standards/iso639-2/php/code_list.php&lt;br /&gt;"&gt;three letter languages codes (ISO639-2) &lt;/a&gt; are quite enough (ISO-639-1 are the two-letter ones). Of course, despite the thing being a standard, there is some fun to be had with e.g. deu == ger.&lt;br /&gt;&lt;br /&gt;Apart from deciding, which languages to support, there is also a user interface question, and for my website, I consider this the most important. In times of Google, content can also be found if your website has a lousy user interface, but since I am looking for something that is fun to use interactively, usability takes priority.&lt;br /&gt;&lt;br /&gt;That is why I need to ask myself: how would one select between languages? I think the best is to go with a hybrid approach:&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;   &lt;li&gt;have URIs of the shape domain/language-code/path and rewrite them to domain/path.language-code.extension (the dispatching described in the comments to the W3C article).&lt;/li&gt;&lt;br /&gt;   &lt;li&gt;additionally have a footer with links (view page in language1, ..., languageN)&lt;/li&gt;&lt;br /&gt;   &lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;Pages should not be very long, so that the footer is visible. For added fun, I can later go into having facebook's wall-to-wall (two pages displayed side-by-side) layout to see the same page in two different languages, for translation and language-learning.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28320851-253658234641116067?l=bq9.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bq9.blogspot.com/feeds/253658234641116067/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=28320851&amp;postID=253658234641116067' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28320851/posts/default/253658234641116067'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28320851/posts/default/253658234641116067'/><link rel='alternate' type='text/html' href='http://bq9.blogspot.com/2008/04/lost-in-multi-lingualization.html' title='lost in multi-lingualization'/><author><name>Burak Emir</name><uri>http://www.blogger.com/profile/01651698653168460072</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='12949530281688601870'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28320851.post-9121438919244321703</id><published>2007-07-03T23:04:00.000-07:00</published><updated>2007-07-03T23:35:37.660-07:00</updated><title type='text'>asp.net, and computerclubzwei</title><content type='html'>About to start a web app... coming from a Scala and Java background, but my web hoster offers me php and asp.net -- which poison is tastier? I was set to go for php, although I don't like the language much. So I thought I'd give this asp.net stuff a try.&lt;br /&gt;&lt;br /&gt;For my first timid steps, I was happy to have read the &lt;a href="http://de.wikipedia.org/wiki/ASP.net"&gt;German Wikipedia entry&lt;/a&gt;, and the&lt;br /&gt; beginning &lt;a href="http://de.wikibooks.org/wiki/Webentwicklung_mit_ASP.NET"&gt;wikibook  "Webentwicklung mit ASP.NET"&lt;/a&gt;. This had a link to &lt;a href="http://www.microsoft.com/germany/msdn/vstudio/express/default.mspx"&gt;visual studio web express&lt;/a&gt;, which is free, and it rocks as an IDE (I am a big fan of Microsoft IDEs, although I do everything to avoid owning a Windows OS). I get curious about MonoDevelop, all this Emacs juggling is getting boring sometimes.&lt;br /&gt;&lt;br /&gt;About asp.net proper, the difference in complexity seems ridiculous compared to php... but this is more a psychological thing. While I quickly hacked a phpinfo.php to test that scripts were properly executed on the server, asp.net development first started by installing an IDE. There are quite some concepts to learn, and here I lost interest. Compared to the jsp world, the "usine à gaz" factor seems the same (I also lost interest in JSP 2, my last activity was a struts-1 webapp).&lt;br /&gt;&lt;br /&gt;Out of curiosity, I will try to connect to the mysql database on asp.net, and continue some experiments... and if that works fine, I might stick with it and get used to IDE land again.&lt;br /&gt;&lt;br /&gt;---&lt;br /&gt;&lt;br /&gt;Growing up in Germany, I have at least one seen a show called "computer club" - although I was too young to appreciate it back then. Apparently, they have recently started podcasting on their new site &lt;a href="http://www.cczwei.de/index.php"&gt;cczwei&lt;/a&gt;. It's fun to listen to this professionally produced piece of audio-layman-tech-journalism - for one who enjoys people talking about technical things in a simple manner.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28320851-9121438919244321703?l=bq9.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bq9.blogspot.com/feeds/9121438919244321703/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=28320851&amp;postID=9121438919244321703' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28320851/posts/default/9121438919244321703'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28320851/posts/default/9121438919244321703'/><link rel='alternate' type='text/html' href='http://bq9.blogspot.com/2007/07/aspnet-and-computerclubzwei.html' title='asp.net, and computerclubzwei'/><author><name>Burak Emir</name><uri>http://www.blogger.com/profile/01651698653168460072</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='12949530281688601870'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28320851.post-4983465750312156733</id><published>2007-06-25T23:41:00.000-07:00</published><updated>2007-06-25T23:48:20.041-07:00</updated><title type='text'>Code-follows-Type</title><content type='html'>Adriaan writes up something on &lt;a href="http://www.cs.kuleuven.be/~adriaan/?q=cft_intro"&gt;Code-follows-Type&lt;/a&gt; programming. It's a neat technique that has a killer application: automatically generating pickling and unpickling code from your class definitions - without code generation, without reflection, without anything... wait, it says it only works for "representable" types.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28320851-4983465750312156733?l=bq9.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bq9.blogspot.com/feeds/4983465750312156733/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=28320851&amp;postID=4983465750312156733' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28320851/posts/default/4983465750312156733'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28320851/posts/default/4983465750312156733'/><link rel='alternate' type='text/html' href='http://bq9.blogspot.com/2007/06/adriaan-writes-up-something-on-code.html' title='Code-follows-Type'/><author><name>Burak Emir</name><uri>http://www.blogger.com/profile/01651698653168460072</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='12949530281688601870'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28320851.post-115425824039511159</id><published>2006-07-30T03:49:00.000-07:00</published><updated>2006-07-30T04:17:20.433-07:00</updated><title type='text'></title><content type='html'>Again, a web designer might be interested in &lt;br /&gt;&lt;a href="http://code.google.com/webstats/index.html"&gt;Google's Web Authoring Statistics&lt;/a&gt; for best practices.&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;There are far too many articles about the GWT, but here is &lt;a href="http://ajax.sys-con.com/read/225045.htm"&gt;Dion Hinchcliffe's analysis of GWT's service abstraction&lt;/a&gt;.&lt;br /&gt;&lt;br/&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28320851-115425824039511159?l=bq9.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bq9.blogspot.com/feeds/115425824039511159/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=28320851&amp;postID=115425824039511159' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28320851/posts/default/115425824039511159'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28320851/posts/default/115425824039511159'/><link rel='alternate' type='text/html' href='http://bq9.blogspot.com/2006/07/again-web-designer-might-be-interested.html' title=''/><author><name>Burak Emir</name><uri>http://www.blogger.com/profile/01651698653168460072</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='12949530281688601870'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28320851.post-115333142564460475</id><published>2006-07-19T10:41:00.000-07:00</published><updated>2006-07-19T10:50:25.656-07:00</updated><title type='text'></title><content type='html'>always good to remember some &lt;a href="http://learningtheworld.eu/2006/best-practices/"&gt;best practices in web development&lt;/a&gt;.&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;Ralf Laemmel and Erik Meijer take a head-on jump into &lt;a href="http://homepages.cwi.nl/~ralf/xo-impedance-mismatch/"&gt;xml object mismatch&lt;/a&gt;. More (or less) data binding.&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;I still haven't gotten to look &lt;a href="http://microformats.org/wiki/hcalendar"&gt;microformats&lt;/a&gt; and wonder if I need to.&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;This &lt;a href="http://lamp.epfl.ch/~emir/projects/scalaxbook/scalaxbook.docbk.html"&gt;Scala XML documentation&lt;/a&gt; needs some updating.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28320851-115333142564460475?l=bq9.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bq9.blogspot.com/feeds/115333142564460475/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=28320851&amp;postID=115333142564460475' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28320851/posts/default/115333142564460475'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28320851/posts/default/115333142564460475'/><link rel='alternate' type='text/html' href='http://bq9.blogspot.com/2006/07/always-good-to-remember-some-best.html' title=''/><author><name>Burak Emir</name><uri>http://www.blogger.com/profile/01651698653168460072</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='12949530281688601870'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28320851.post-115289952317854316</id><published>2006-07-14T10:40:00.000-07:00</published><updated>2006-07-14T10:52:03.210-07:00</updated><title type='text'>different takes on data binding</title><content type='html'>&lt;p&gt;&lt;br /&gt;Some time ago, &lt;a href="http://www.ftponline.com/vsm/2003_05/magazine/features/dollard/"&gt;Kathleen Dollard showed how to generate classes from an XML Schema using XSLT&lt;/a&gt;. I dislike both schema and XSLT, but I would understand why someone would need to use both technologies and have respect for everybody that plunges in that hell. However all those technologies together might serve to describe the problem rather than the solution&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Pull parsing examples, also a while ago, is often demonstrated as a fast way to do data binding. We can find &lt;a href="http://dev2dev.bea.com/pub/a/2004/01/pullparsing.html"&gt;Chris Fry's writeup on XML pull parsing&lt;/a&gt;. It seems&lt;br /&gt;&lt;a href="http://javaboutique.internet.com/tutorials/stax/"&gt;Pull parsing will be available in JDK6&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;This pull parsing stuff ultimately looks better than all other APIs, because all the other ones can be implemented on top of this one.&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28320851-115289952317854316?l=bq9.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bq9.blogspot.com/feeds/115289952317854316/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=28320851&amp;postID=115289952317854316' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28320851/posts/default/115289952317854316'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28320851/posts/default/115289952317854316'/><link rel='alternate' type='text/html' href='http://bq9.blogspot.com/2006/07/different-takes-on-data-binding.html' title='different takes on data binding'/><author><name>Burak Emir</name><uri>http://www.blogger.com/profile/01651698653168460072</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='12949530281688601870'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28320851.post-115021474820029644</id><published>2006-06-13T08:51:00.000-07:00</published><updated>2006-06-13T14:06:09.656-07:00</updated><title type='text'>typed scripting? typescript</title><content type='html'>&lt;p&gt;&lt;br /&gt;Types are good, but a language aiming to resemble JavaScript should leave type annotations optional wherever possible. Palsberg and Schwartzbach have something to say about type inference for object oriented programs.&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;What would types be good for? There's all those "message-not-understood" (&lt;a href="http://developer.mozilla.org/es4/spec/chapter_3_execution_model.html#strict_verification"&gt;and so on&lt;/a&gt;), but there is also fancier stuff like Session types for channels, or regexp-like types for semistructured data.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;JavaScript is object based, but not class based. Abadi and Cardelli's "A Theory of Objects" is the standard reference on object calculi. &lt;a href="http://slurp.doc.ic.ac.uk/pubs.html#typeinferenceforjavascript-ecoop05"&gt;"Type inference for JavaScript"&lt;/a&gt; introduces a calculus for modeling JavaScript.  &lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;Castagna provides an account on overloading in the publication that came out of his thesis, titled&lt;br /&gt;"Object-Oriented Programming: A Unified Foundation". The thing with overloading is that it might give a more precise type to pattern matching statements, an idea that haunts me since ages.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28320851-115021474820029644?l=bq9.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bq9.blogspot.com/feeds/115021474820029644/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=28320851&amp;postID=115021474820029644' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28320851/posts/default/115021474820029644'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28320851/posts/default/115021474820029644'/><link rel='alternate' type='text/html' href='http://bq9.blogspot.com/2006/06/typed-scripting-typescript.html' title='typed scripting? typescript'/><author><name>Burak Emir</name><uri>http://www.blogger.com/profile/01651698653168460072</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='12949530281688601870'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28320851.post-114977077766364686</id><published>2006-06-08T05:38:00.000-07:00</published><updated>2006-06-08T08:17:30.883-07:00</updated><title type='text'>JavaScript2</title><content type='html'>&lt;p&gt;&lt;br /&gt;Brendan Eich's XTech 2006 keynote &lt;a href="http://developer.mozilla.org/presentations/xtech2006/javascript/"&gt;JavaScript 2 and the Future of the Web&lt;/a&gt; mentions some deltas to the language. This is &lt;a href="http://lambda-the-ultimate.org/node/1530"&gt; warmly welcomed on LtU&lt;/a&gt;, who add a new JavaScript department.&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;One of the typing experts sitting int the committee, Cormac Flanagan, has worked on &lt;a href="http://sage.soe.ucsc.edu/sage-tr.pdf"&gt;SAGE: Practical Hybrid type checking for Expressive Types and Specifications[pdf]&lt;/a&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;Not to be confounded with ECMAScript 4, the next version of JavaScript 1, designed by committee ECMA TC39TG1. They get &lt;a href="http://www.mozilla.org/js/language/es4/index.html"&gt;proposals from Mozilla guys&lt;/a&gt;, and recently &lt;a href="http://developer.mozilla.org/es4/"&gt;published their Wiki&lt;/a&gt;, which also is &lt;a href="http://lambda-the-ultimate.org/node/1543"&gt;half-heartedly discussed on LtU&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28320851-114977077766364686?l=bq9.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bq9.blogspot.com/feeds/114977077766364686/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=28320851&amp;postID=114977077766364686' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28320851/posts/default/114977077766364686'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28320851/posts/default/114977077766364686'/><link rel='alternate' type='text/html' href='http://bq9.blogspot.com/2006/06/javascript2.html' title='JavaScript2'/><author><name>Burak Emir</name><uri>http://www.blogger.com/profile/01651698653168460072</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='12949530281688601870'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28320851.post-114893681031837432</id><published>2006-05-29T13:31:00.000-07:00</published><updated>2006-05-29T14:06:50.333-07:00</updated><title type='text'>why those books? discussions with friends</title><content type='html'>&lt;b&gt;Edward Angel. OpenGL(tm): a Primer. ISBN 0-201-74186-5&lt;/b&gt; A fascination with NeuroScience and displaying 3d graphics, ideally in a web browser. Unfortunately, we are missing a  Canvas3D that supports this stuff. For the moment, there are Java bindings, and &lt;a href="http://lwjgl.org/"&gt;lwjgl&lt;/a&gt; looks like the way to go.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;David Flanagan. JavaScript: The Definitive Guide, Fourth Edition. ISBN 0-596-00048-0&lt;/b&gt; Actually I don't remember why that book is here, I get all the info I want from the net.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;John C. Mitchell. Foundations for Programming Languages. ISBN 0-262-13321-0&lt;/b&gt;The style and notation of this book are of a beauty that makes me want to read it over and over again. Although I don't really have spare cycles to do more foundational stuff, the proofs are spelled out in a very clear, yet concise manner and it is inspiring.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Benjamin Pierce, ed. Advanced Topics in Types and Programming Languages. ISBN 0-262-16228-8&lt;/b&gt; Here, I started with the chapter of typed assembly language, also with an implementation actually. Wouldn't it be useful to have a low-level VM for iron that interprets typed assembly code? and have an x86 backend at some point. &lt;br /&gt;&lt;br /&gt;When chatting with my chap about my final project, I was surprised how rational I could tell him the objectives and problems that I am facing, things I have been trying to find out for a long time. And there I am just communicating it as if I had known it all the time. My reluctance to use *the language*, the advantages of using HTML for user interfaces, the insights into GWT and the architectural sketch and constraints of the system.&lt;br /&gt;&lt;br /&gt;When receiving another chap's email I'm surprised at his argument for dynamic typing having become more differentiated, preferring LISP over Python. And it somehow makes sense, because uniform containers (like sequences and hashtables) seems to be what most of my obsession with iron is about as well. His CLOS speak is beyond me but I recall from the book that I forgot to mention that setting up some object system in those languages is not very difficult.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Abelson and Sussman. Structure and Interpretation of Computer Programs. ISBN 0-262-51087-1 &lt;/b&gt; Never made it to those later chapters, where writing a scheme compiler is given as an exercise. Opening this book again is due to my interest in doing dynamic typing via tags. However it just clashes with the idea of doing static checking for regular expression types. What gives? There should be some program analysis and type inference.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Benjamin Pierce. Types and Programming Languages. ISBN 0-262-16209-1&lt;/b&gt; There's something about recursive types that makes me return to this book. It stems from my obsession of regular expression types for sequences. The iron language is supposed to have sequences as primitives, and do some type-checking for an xsd-extension based object-class system. Also, the type inference idea mentioned above can be nourished from this book.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28320851-114893681031837432?l=bq9.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bq9.blogspot.com/feeds/114893681031837432/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=28320851&amp;postID=114893681031837432' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28320851/posts/default/114893681031837432'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28320851/posts/default/114893681031837432'/><link rel='alternate' type='text/html' href='http://bq9.blogspot.com/2006/05/why-those-books-discussions-with.html' title='why those books? discussions with friends'/><author><name>Burak Emir</name><uri>http://www.blogger.com/profile/01651698653168460072</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='12949530281688601870'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28320851.post-114850714841333342</id><published>2006-05-24T14:42:00.000-07:00</published><updated>2006-05-24T14:45:48.426-07:00</updated><title type='text'>forging templates Google style</title><content type='html'>Well, not surprisingly Google have &lt;a href="http://www.sourceforge.net/projects/goog-ctemplate"&gt;their own way of templatin.&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28320851-114850714841333342?l=bq9.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bq9.blogspot.com/feeds/114850714841333342/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=28320851&amp;postID=114850714841333342' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28320851/posts/default/114850714841333342'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28320851/posts/default/114850714841333342'/><link rel='alternate' type='text/html' href='http://bq9.blogspot.com/2006/05/forging-templates-google-style.html' title='forging templates Google style'/><author><name>Burak Emir</name><uri>http://www.blogger.com/profile/01651698653168460072</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='12949530281688601870'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28320851.post-114831467722735657</id><published>2006-05-22T09:01:00.000-07:00</published><updated>2006-05-24T14:46:44.430-07:00</updated><title type='text'>forging hypertext templates</title><content type='html'>The good old hypertext. What have they done to you, pal? Just look at you. JSPed all over. And all those taglibs hanging down your front.&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;&amp;lt;%@ taglib uri="/WEB-INF/tld/struts-bean.tld" prefix="bean" %&gt;&lt;br /&gt;&amp;lt;%@ taglib uri="/WEB-INF/tld/struts-html.tld" prefix="html" %&gt;&lt;br /&gt;&amp;lt;%@ taglib uri="/WEB-INF/tld/struts-logic.tld" prefix="logic" %&gt;&lt;br /&gt;&amp;lt;!--Logon_Block_Start--&gt;&lt;br /&gt;&amp;lt;html:form action="/loginlogout/login" focus="username"&gt;&lt;br /&gt;  &amp;lt;TABLE WIDTH="&amp;lt;bean:message key="block.size.x"/&gt;" &lt;br /&gt;   ...&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;No, no, some other I may have done this to you myself a long time ago, but not again. &lt;br /&gt;&lt;a href="http://article.gmane.org/gmane.comp.lang.scala/1770/match=jsp"&gt;Joel is right&lt;/a&gt;, so facade elements with attributes and ognl and tapestry style it shall be.&lt;br /&gt;&lt;br /&gt;editable, viewable, maybe even validatable and bindable. No use to go over the top with WebObjects.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28320851-114831467722735657?l=bq9.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bq9.blogspot.com/feeds/114831467722735657/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=28320851&amp;postID=114831467722735657' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28320851/posts/default/114831467722735657'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28320851/posts/default/114831467722735657'/><link rel='alternate' type='text/html' href='http://bq9.blogspot.com/2006/05/forging-hypertext-templates.html' title='forging hypertext templates'/><author><name>Burak Emir</name><uri>http://www.blogger.com/profile/01651698653168460072</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='12949530281688601870'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28320851.post-114805334657959112</id><published>2006-05-19T08:33:00.000-07:00</published><updated>2006-05-19T08:42:26.586-07:00</updated><title type='text'>so you want to get web programming right, eh?</title><content type='html'>Programming should be done in a decent language. That language should be the same on client and server (and I won't tell you why).&lt;br /&gt;&lt;br /&gt;All web scripting somehow started with &lt;a href="http://www.mozilla.org/js/language/index.html"&gt;JavaScript&lt;/a&gt;. You could embed it on your server side if you really want to.&lt;br /&gt;&lt;br /&gt;One can target JavaScript (and also targets ActionScript) with the &lt;a href="http://haxe.org"&gt;haXe language&lt;/a&gt;. It also has a server component, going through an Apache plugin.&lt;br /&gt;&lt;br /&gt;The &lt;a href="http://homepages.inf.ed.ac.uk/wadler/links/"&gt;Links language&lt;/a&gt; promises to compile from a single source database updates and Javascript bits in your page.&lt;br /&gt;&lt;br /&gt;OTOH, one can get a nice language, XML capabilities and leverage the whole Java shebang using the &lt;a href="http://scala.epfl.ch"&gt;Scala language&lt;/a&gt;. However, the whole backend-multiplexing thing is missing as of yet.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28320851-114805334657959112?l=bq9.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bq9.blogspot.com/feeds/114805334657959112/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=28320851&amp;postID=114805334657959112' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28320851/posts/default/114805334657959112'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28320851/posts/default/114805334657959112'/><link rel='alternate' type='text/html' href='http://bq9.blogspot.com/2006/05/so-you-want-to-get-web-programming.html' title='so you want to get web programming right, eh?'/><author><name>Burak Emir</name><uri>http://www.blogger.com/profile/01651698653168460072</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='12949530281688601870'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28320851.post-114795223118735897</id><published>2006-05-18T04:23:00.000-07:00</published><updated>2006-05-18T04:37:11.196-07:00</updated><title type='text'>so you want to start a blog, eh?</title><content type='html'>No meta-discussion, no navel-gazing, no propaganda. No technical details.&lt;br /&gt;&lt;br /&gt;Once again scanning the web for frameworks, I got lost in  &lt;a href="http://myfaces.apache.org/"&gt;Apache MyFaces&lt;/a&gt; and &lt;a href="http://jakarta.apache.org/tapestry/"&gt;Tapestry&lt;/a&gt; and of course &lt;a href="http://code.google.com/webtoolkit/"&gt;Google Web Toolkit&lt;/a&gt; the new kid on the block.&lt;br /&gt;&lt;br /&gt;Over lunch, a discussion on JavaScript turns onto the XML lane and I realize that is another something that is missing in that language, just like actors.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28320851-114795223118735897?l=bq9.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bq9.blogspot.com/feeds/114795223118735897/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=28320851&amp;postID=114795223118735897' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28320851/posts/default/114795223118735897'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28320851/posts/default/114795223118735897'/><link rel='alternate' type='text/html' href='http://bq9.blogspot.com/2006/05/so-you-want-to-start-blog-eh.html' title='so you want to start a blog, eh?'/><author><name>Burak Emir</name><uri>http://www.blogger.com/profile/01651698653168460072</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='12949530281688601870'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry></feed>