     children-tags [ item. ] each nl ;
 
 : historical-url ( timestamp -- url )
-    [ month-name ] [ day>> ] bi
-    "http://en.wikipedia.org/wiki/%s_%s" sprintf ;
+    [ month-name ] [ day>> ] bi "%s_%s" sprintf wikipedia-url ;
 
 : (historical-events) ( timestamp -- seq )
     historical-url http-get* string>xml "ul" deep-tags-named ;

    (historical-events) "Deaths" header. fourth items. ;

: article. ( name -- )
    "http://en.wikipedia.org/wiki/%s" sprintf
    http-get* parse-html "content" find-by-id-between
    [ html-text. ] with-string-writer string-lines
    [ [ blank? ] trim ] map harvest [
        R/ &lt;/ "<" re-replace


USING: accessors ascii assocs calendar colors.constants
formatting html.parser html.parser.analyzer html.parser.printer
http.client io io.streams.string io.styles kernel make
namespaces regexp sequences splitting urls wrap.strings xml
xml.data xml.traversal ;
FROM: xml.data => tag? ;

IN: wikipedia

SYMBOL: language
"en" language set-global

: with-language ( str quot -- )
    language swap with-variable ; inline

<PRIVATE

: wikipedia-url ( path -- url )
    language get swap "http://%s.wikipedia.org/wiki/%s" sprintf >url ;

: header. ( string -- )
    H{ { font-size 20 } { font-style bold } } format nl ;
