På pappret svagaste laget

När jag igår bläddrade genom Text-TVs sportsidor på nätet stötte jag på följande aktstycke:

texttv_1

Jag noterade sedan att Sverige, trots sin oförmåga att spela ishockey på papper, lyckats betydligt bättre på is — Norge besegrades med 10-0. Alternativt kan det ha varit den som satte ovanstående text på pränt som var i svagaste laget…

I’m sorry I’ll read that again

I början av 90-talet besökte jag London ett par gånger och vid något av dessa tillfällen köpte jag en BBC-utgåva av ett för mig obekant radioprogram med ovanstående namn. Exakt varför minns jag inte, men jag har en svag aning om att jag varit på jakt efter Monty Pythons samlade texter, och när jag inte hittade dem blev jag i stället rekommenderad att lyssna på en av MPFCs föregångare — en av programmets regelbundet återkommande medlemmar var nämligen en viss John Cleese[1], och tre av de övriga medlemmarna bildade så småningom »The Goodies» — Tim Brooke-Taylor, Graeme Garden och Bill Oddie. Av de två återstående huvudmedlemmarna förblev David Hatch radiomediet trogen — han klättrade ganska högt upp på den administrativa sidan — medan Jo Kendall[2] fortsatte som skådespelare, både i radiodramatiseringar — den som kan sin H2G2 vet att det är hon som spelar lady Cynthia Fitzmelton i det allra första avsnittet av radioserien — och i TV, film och teater.

I dagarna är det femtio år sedan det allra första programmet av det som så småningom blev »I’m sorry I’ll read that again» sändes (30 dec 1963) och 25 år sedan det sista programmet (25 dec 1988), och bara det räcker ju för att det ska vara värt att påminna om dess existens; att jag satte mig för att skriva den här bloggan berodde dock inte bara på detta utan jag kom att tänka på ISIRTA, som programserien brukar förkortas, av en helt annan, och betydligt allvarligare, anledning. I ett av avsnitten på kassetterna parodierar man nämligen en viss Rolf Harris, som tydligen skrev och sjöng in barnvisor(?) på 60-talet[3]; med viss risk att förarga copyright-människorna har jag mp3iserat sagda parodi och lagt upp den på min hemmaserver för intresserade att lyssna på. Jag undrar vad de överlevande i ISIRTA-gänget tänkte när de läste att Harris anklagas för att vara pedofil

Men för att återgå till roligare saker: ISIRTA har fortfarande en trogen skara lyssnare och BBC4 sänder för närvarande några av programmen i repris; det slumpar sig, om jag förstått det rätt, så att just det program där Harris »medverkar» sänds i repris i början av 2014 (serie 8, episod 6), så det lär gå alldeles utmärkt att höra hela programmet via webbradio om några dagar.

ISIRTA tog upp flera av de idéer som python-gänget så småningom också använde[4]; till exempel släppte ISIRTA ibland fram »klagomål» från påhittade personer med fantasifulla namn[5], och liksom MPFC gillade man att parodiera andra program, på en av kassetterna kan man till exempel höra »The Kevin Mousetrap Show» — det tycks mig som inte mycket förändrats i TV-världen under de senaste 50 åren…

Ännu en likhet mellan programmen var de återkommande stereotyperna, och där var ISIRTA mer effektiva än MPFC; visserligen hade MPFC sin »It’s-man», John Cleese sittande vid ett skrivbord för att förklara att det var dags för något helt annat och riddaren som slog folk i huvudet med en gummianka, men att till exempel den person som förklarar att en viss papegoja är död är densamme person, Mr Praline, som i ett senare avsnitt försöker skaffa en licens för sin flundra Eric tror jag de flesta missat. Men Arnold Totterage, den osammanhängande »filosofen» som gjorde ett kort gästspel hos Kevin Mousetrap härovan, går inte att missta sig på, och ISIRTA samlade under årens lopp ihop många sådana åtekommande karaktärer. Den mest bisarra av dem alla var nog Lady Constance de Coverlet, en figur som Tim Brooke-Taylor utvecklat och använt under större delen av sin karriär.

Som avslutning bjuder jag på ännu ett avsnitt från den show som jag redan klippt från och som kommer att sändas på BBCs webbradio om några dagar. Många avsnitt avslutades med en parodisk version av något känt verk; denna gång hade man valt att parodiera en hel genre med »Murder on the 3.17 to Cleethorpes», kryddat med en rejäl dos skämt om och kring British Rail. Programmen spelades in inför publik, och den för ISIRTA så typiska växelverkan mellan publik och skådespelare är här så kraftig att skådespelarna håller på att komma av sig flera gånger. Man kan också notera ett kort gästspel av Lady Constance de Coverlet, och några av ISIRTA-gängets återkommande älsklingsämnen, som till exempel det engelska överklassystemet och i synnerhet begreppet »OBE»; är man riktigt alert kan man höra en referens till gibbon-apor också…


Fotnoter:

  1. Av obekant anledning kallades han i programmets oftast John Otto Cleese, trots att hans mellannamn egentligen är Marwood. Wikipedia anför hypotesen att Cleese skulle ha tyckt Marwood var ett pinsamt namn, men det låter ganska långsökt, tycker jag; just Cleese har knappast gjort sig känd för någon överdriven rädsla för pinsamma saker. Ett förslag på en bättre hypotes är att han fått »hedersnamnet» Otto på grund av sin förmåga att karikatyrisera tyskar. []
  2. Det tog ett tag innan jag insåg att hon heter så; David Hatch räknar upp namnen så fort att jag länge trodde att hon hette »Jo Kendall-Belotti»… []
  3. Den enda av de tre anförda exemplen som jag känner igen blev i svensk översättning »Sven Gren med sitt extra ben», och den översättningen har definitivt en viss »vågad underton». []
  4. Bäst att slänga in en brasklapp här — eftersom MPFC och ISIRTA delvis överlappade varandra tidsmässigt är det ett hästgöra att försöka etablera exakt vem som använde en viss idé först; och det blir ju inte lättare av att alla inblandade höll på med andra projekt samtidigt, och andra komiker, som Spike Milligan och Marty Feldman, också jobbade i samma anda. []
  5. I det ovan nämnda programmet inleder man med att berätta vilka personer som kommer att förolämpas i programmet så att de kan börja ringa/skriva med en gång för att få en lite jämnare fördelning på klagomålen. []

Sortera med Linux

Linux är på många sätt ett charmigt operativsystem. Till att börja med är det (oftast) gratis, även om det finns skumma element som då och då försöker göra pengar på det eller delar av det. En annan klämmig sida av Linux är de många frivilliga insatser som gjorts och görs av utvecklare för att uppdatera koden och lägga till nya finesser; tycker du någon detalj saknas kan du ofta ladda ner källkoden, skriva till lite kod, och skicka in för testning och eventuell användning i en kommande release[1]. Och tycker man att ett projekt håller på att spåra ur kan man oftast »gaffla» det, dvs starta ett nytt projekt baserat på koden vid ett visst tillfälle i utvecklingen, se till exempel historien om Mambo och Joomla.

Men så är det ju det här med att sortera text under Linux. Jag har varit med i svängen under en längre tid, och har hittills inte stött på något datorsystem som varit särskilt lyckat vad det gäller sortering, men Linux tar ändå priset för det mest sofistikerade upplägget, kombinerat med det mest patetiska misslyckandet. Jag har för eget bruk hackat min Opensuse-burk så att den sorterar som jag vill, men innan jag berättar om mitt hack måste jag beskriva vari problemet ligger; hav tålamod några skärmsidor![2]

Låt oss anta att vi vill sortera följande illustrativa och informativa textmassa:

aåä  
a äå 
å aä 
å äa 
a åä 
aäå  
aå ä 
ä aå 
aä å 

Om jag nu, med rosor på kind och solsken i blick, skriver sort fil, så sorterar datorn om texten på nedanstående sätt:

å äa 
ä aå 
a äå 
aä å 
aäå  
å aä 
a åä 
aå ä 
aåä  

Ärligt talat är det inte självklart att texten faktiskt är sorterad och inte randomiserad på något sätt; visserligen har jag »amerikansk engelska» som default, men måste den använda en så bisarr sorteringsalgoritm? Om någon vill försöka lista ut hur sorteringen gått till, så gömmer jag lösningen i den kommande fotnoten; men jag kommer strax att avslöja en av »finesserna» i sorteringen, så i så fall bör ni klura ut det innan ni läser vidare.[3].

Vad händer då om man använder »lokalen» (min översättning av det engelska »locale») för svenska? Lokalen för sortering styrs av miljövariabeln LC_COLLATE, och för att för att få svensk sortering kan man enklast skriva LC_COLLATE=sv_SE.UTF-8 sort fil, så får man svensk sortering bara för detta enstaka kommando[4]. Nu blir resultatet som följer:

aåä  
a åä 
aå ä 
aäå  
a äå 
aä å 
å aä 
å äa 
ä aå

Det börjar likna något, eller hur? Ordningen mellan a, å och ä är fixad, men det finns fortfarande ett problem — blankslag hanteras som om de inte existerade, vilket gör sorteringen fel i mina ögon. Ärligt talat vet jag inte hur Svenska Akademin, eller vad det nu kan vara för instans som standardiserar svenska sorteringar, ser på saken, men för mitt ändamål, ett KWIC-index över Anders F Rönnbloms texter, kändes metoden att ignorera blankslag helt bakvänd.

En snabb googling avslöjar att jag inte är den ende att förfasa mig över detta, men som så ofta är de som frågar och svarar engelsktalande, och den lösning de flesta nöjer sig med är att använda kollationeringsordningen »C», som återskapar hur datorer sorterade på stenåldern, då bara engelska talades i datorvärlden. Och då ser resultatet ut så här:

a äå 
a åä 
aä å 
aäå  
aå ä 
aåä  
ä aå 
å aä 
å äa

Om vi undantar det lilla faktum att »å» och »ä» blivit omkastade så är det så här jag skulle vilja att det ser ut.

Det »traditionella sättet»[5] att lösa problemet är att på något sätt mappa om texten så att »å» blir »ä» och vice versa, och sedan mappa tillbaka efter sorteringen; seds kommando »y» är som gjort för denna typ av hack. Men den här gången[6] beslöt jag mig för att försöka göra detta enligt Linux alla regler.

För att göra en lång historia kort, jag har ännu inte lyckats. Såvitt jag förstår borde det gå att lösa med de metoder som man använder för att mappa om »basfilen» till lokaler som till exempel den svenska, men jag har inte hittat något sätt att göra det. Huvudproblemet är att alla omdefinieringar jag sett inleds med kommandot »reorder-after», men space-tecknet, det som jag vill ändra, är definierat som det första tecknet i kollationeringsordningen. Jag har därför gått in i den bamsiga huvudfilen och ändrat på egenskaperna hos det allra första tecknet i sorteringsordningen, vilket känns ungefär som att göra en månghundraåriga ek en decimeter kortare genom att kapa den alldeles intill roten, ta av en decimeter på stammen, och sedan limma ihop rasket igen. Eller, som Otis Gibbs uttrycker det i sin fantastiska poddradio »Thanks for giving a damn»: I’d like to say up front that I haven’t the slightest idea what I’m doing, but I decided to do it anyway.

Här är mitt recept för att fixa problemet:

1. Leta rätt på filen iso14651_t1_common; under OpenSuse 12.3 ligger den i foldern /usr/share/i18n/locales, men det kan säkert vara annorlunda i andra distributioner. Öppna filen med lämplig editor[7], och gå till den rad som ser ut så här:

<U0020> IGNORE;IGNORE;IGNORE;<U0020> # 32 <SP>

Ändra denna till nedanstående:

#<U0020> IGNORE;IGNORE;IGNORE;<U0020> # 32 <SP>
<U0020> <BAS>;<BAS>;<MIN>;IGNORE   # 32 <SP>

Den första raden är naturligtvis bara originalet, sparat som en kommentar för att hålla reda på hur det såg ut innan ändringen; det är en god programmerarpraxis att behålla gammal kod ifall den nya visar sig innebära oväntade katastrofer. Den andra raden utför själva ändringen, och betyder, om jag förstått det rätt, att blanktecknet inte totalt ignoreras, som i raden ovan, utan sorteras som tecknet »BAS», vilket egentligen betyder »utan diakritiska tecken» och är definierat bland diverse arabiska diakritiska tecken; min åsikt är att det torde vara svårt att hitta ett tecken som är mer kemiskt rent på dylika än just blankslaget, och därför valde jag att återanvända detta snarare än att skapa ett nytt tecken.

2. Kompilera en ny lokal med kommandot

localedef -i sv_SE -f UTF-8 sv_SE.UTF-8

Sådär! Nu blir äntligen resultatet som förväntat:

a åä 
a äå 
aå ä 
aåä  
aä å 
aäå  
å aä 
å äa 
ä aå 

Implementeras på egen risk; inga garantier lämnas…


Fotnoter:

  1. En favorit är den tidszonsdatabas som alla Linux-system använder, och som innehåller en fantastisk mängd ihopsamlade uppgifter från runt om i världen. Ett exempel på den akribi som deltagarna ådagalägger, och som dokumenteras via kommentarer i koden: »During World War II, Germany maintained secret manned weather stations in East Greenland and Franz Josef Land, but we don’t know their time zones. My source for this is Wilhelm Dege’s book mentioned under Svalbard.» []
  2. Som den i hackermentalitet insatte säkert misstänkt är det faktiskt andra gången jag implementerar detta hack, det första hacket skrevs över vid en uppdatering; denna blogga är ett försök att korta av implementeringstiden för det tredje hacket, och därefter följande hack. []
  3. För att få denna sortering måste man göra tre saker: 1. Alla blankslag ignoreras, dvs sorteras som om de inte existerade; 2. I fas ett betraktar man alla a-liknande tecken som »a», vilket tillsammans med punkt 1 gör att alla nio raderna i min testfil förvandlas till »aaa»; 3. I fas 2 tas hänsyn till de diakritiska tecknen i ordningen »a», »å», »ä», men strängarna sorteras bakifrån; detta ger den ordning som visas ovan. []
  4. Under förutsättning att man anväder unicode, närmare bestämt dess kodning UTF-8. För att gå händelserna lite i förväg så var mitt beslut att konvertera en nyckelfil till UTF-8 från ISO 8859-1 den huvudsakliga anledningen till att jag övergav »det traditionella sättet» som jag nämner nedan. []
  5. Det vill säga, det var så jag löste detta problem på den gamla goda ABC800-tiden i mitten av 80-talet. Metoden fick sedan hänga med in i Unix-tiden, och jag använde den till och med i den första versionen av f-indexet för sådär tio år sedan. []
  6. Eller, mer korrekt — den förra för ett par år sedan, om ni är med på fotnoterna. []
  7. Härmed avses naturligtvis emacs, och inte vi. []

Den som söker…

Det är ett välbekant teorem i familjen Murphys lagar att den som söker sällan hittar vad hen letar efter, men däremot ett par, tre andra saker som hen tidigare sökt förgäves efter. Vid en arkeologisk utgrävning i de strata i mina pappershögar som omfattar åren runt 1990 hittade jag följdaktligen inte det urklipp av en artikel jag skrev i Corren i juli 1988 som jag var på jakt efter, men däremot ett par brev som möjligen kan ha ett intresse för bloggens läsare; ett har jag redan publicerat, och här kommer ett till.

hildebrandTyvärr har jag inte sparat någon kopia av det brev som föranledde Alexander Hildebrands svar som syns här till vänster, men efter lite efterforskningar i gamla årgångar av Tidskrift för Schack så tror jag att jag har lyckats rekonstruera vad det handlade om. I nummer 1/1991 hade Hildebrand publicerat en liten pristävling som han kallade »5 minuter per diagram!» med tolv studier som han tyckte var av den svårighetsgraden att det skulle räcka med rubricerade betänketid. Svaren till dessa uppgifter presenterades några nummer senare, i 3/1991 för att vara exakt. Någon gång under våren/sommaren 1992 råkade jag studera några av uppgifterna närmare, och hittade ett par saker som jag tyckte förtjänade att påpekas.

Låt oss börja med nummer två, som såg ut så här:









Vit drar och vinner
E. Holm, 1911

Lösningen är inte särskilt komplicerad, och bör hittas av de flesta inom de stipulerade fem minutrarna: 1.Sg4 Le1 2.Sf6!; om svarts kung slår springaren hinner inte löparen stoppa h-bonden, och löparen kan inte gå till c3 på grund av gaffeln på d5.

Det fanns väl inget att kommentera där? Nej, men i lösningarna hade AH skrivt att »Dessvärre räcker även 2.Se3!», vilket ju inte stämmer — efter 2… Ke6! har svart full kontroll över läget; löparen hinner ta sig in på den långa diagonalen, och den svarta kungen ser till att vits springare inte kan skära av diagonalen på g7.

Den andra ställningen, nummer 4, är lite mer invecklad:









Vit drar och vinner
K. Runquist, 1956

Även här är lösningen tämligen rättfram: 1.h7 Sf6+ 2.Kg7 Sxh7 3. Se4! och svart förlorar endera springaren eller kungen; i det förstnämnda fallet hinner svart visserligen vinna tillbaks springaren, men kan sedan inte stoppa g-bonden.

Jag tyckte mig emellertid se en annan vinst; om jag minns rätt låg jag i en virtuell hängmatta våren/sommaren -92, löste de fyra första studierna i AH:s artikel, och när jag insåg att jag missat den fjärde uppgiften ägnade jag resten av dagen åt att försöka visa att »min» lösning minsann också vann — vi messerschmitt-typer beter oss så, nämligen. Alltså: 1.Se4 Kxh6 2.Kf7 Sg7 3.g4!, och där tyckte jag uppenbarligen att den vita ställningen såg tillräckligt vunnen ut. Men AH ställer en synnerligen berättigad fråga — hur hade jag tänkt vinna efter 3… Kh7?









Analysdiagram
Vit vid draget

Numera är svaret på en sådan fråga trivialt[1]; man letar bara reda på en sida på nätet som har ett gränssnitt mot Nalimovs databaser, och matar in ställningen — i det här fallet rapporterar farbror Nalimov att vit vinner i 19 drag. Lat som jag är tänker jag inte dra hela lösningen här, utan bara visa en nyckelställning:









Nyckeldiagram
Någon vid draget

Vit har två typer av hot, dels att promovera bonden och dels att sätta matt; svarts häst måste därför dels hålla något av fälten g7 och g8, samt kunna schacka den vita kungen om vit hotar matt på f7. Är vit vid draget i nyckelställningen ovan är svart inte i någon omedelbar fara, eftersom ett Kf8 kan besvaras med en schack på e6; men om svart är vid draget vore hen hjälplös, till exempel X…Sf5 X+1.Kf8 Sh6 X+2.Sf7+ Sxf7 och vit kan välja mellan gxf7 och g7+ med lätt vinst i båda fallen; detta kallas dragtvång, och är mycket vanligt förekommande i slutspel där (åtminstone) den ena parten inte har så många drag att välja mellan. Om man försöker ta sig över från analysdiagrammet till nyckeldiagrammet meddelst naturliga drag kommer man emellertid att upptäcka att vit är vid draget, så vit måste på något sätt förlora ett drag utan att svart kan utnyttja det till att komma loss. »Triangulering!» ropar den slutspelskunnige triumferande, och hen har alldeles rätt; vid lämpligt tillfälle gör vit, till exempel, Kf7-e7-f8 i stället för Kf7-f8 och har därmed tappat det tempo som gör att svart kommer att hamna i dragtvång när vit manövrerar fram nyckelställningen.

Hur mycket av detta jag insåg våren/sommaren 1992 vet jag inte — om mitt minne inte sviker mig analyserade jag ställningen när jag fick Alexanders brev och skickade honom analyser som skulle visa honom att vit vann; jag har svårt att tänka mig att jag inte skulle ha hittat den lösning jag skisserade ovan, så knepig är den inte att hitta. Om jag såg den innan jag skickade det första brevet till Hildebrand är dock mer osäkert; jag tror mer på att jag såg att svarts kung skulle bli fastlåst på h8 och svarts springare låst till g7, och bara antog att ställningen borde vara vunnen för vit. Någon gång i den här vevan stötte jag på en ställning i en slutspelsbok, just nu minns jag inte vilken, där det påstods att en viss ställning med vit vitfältslöpare plus bönder på g6 och h7 inte kunde vinna mot svart K+S som blockerade bönderna, och det påståendet lyckades jag, om jag minns rätt, peta hål på. Om jag så småningom hittar ställningen — jag tror jag har skrivit om den i LASSmeddelande, eller möjligen i Corren — så kommer den att hamna här i bloggen förr eller senare[2]. De ställningarna hade en del likheter med »min» banala vinst i Runquists studie ovan — ett genomgående tema var att offra h-bonden för att få kontroll över g7 och forcera ner g-bonden — så jag kan mycket väl ha tyckt att med kungen redan intryckt i hörnet och en pjäs som, till skillnad från vitfältslöpare, kan komma åt att schacka h8 så borde vinsten vara enkel.

Vad jag förstår kom det aldrig någon rättelse från Alexander Hildebrand i TfS — endera glömde jag att skicka in mina analyser, eller så ansåg Hildebrand dem inte särskilt övertygande, eller så hade han kontinuerlig platsbrist så länge studiespalten kvarstod. Men nu är det äntligen dags för upprättelse för Holm, och nedrättelse för Runquist…


Fotnoter:

  1. Om ställningen innehåller sex pjäser eller färre, är bäst att tillägga — mer komplicerade ställningar är ännu icke-databasifierade. []
  2. Under förutsättning, naturligtvis, att min analys fortfarande håller, eller att den visar sig fel på grund av något icke-trivialt misstag; alltför enkla missar är för smärtsamma att visa upp. []

Ett brev…

Idag för exakt 25 år sedan kallade marknadsdirektören på Tipstjänst, den inte helt okände Lars-Gunnar Björklund, in sin sekreterare för att diktera några brev; sekreteraren skrev ut dessa på en välanvänd elektrisk skrivmaskin; Björklund signerade dem; och sekreteraren överlämnade dem slutligen åt postverket[1]. Ett av dessa brev kan beundras här nedan.

bjorklundHistorien bakom brevets tillkomst är, som jag minns den, att jag fick något slags reklambroschyr för den då relativt nystartade spelformen Oddset, i vilken man förklarade hur det hela gick till, samt räknade upp alla ställen där man kunde spela på Oddset — i Karlstad. Av skäl som jag inte längre kan redogöra för ansåg jag det lämpligt att meddela Tipstjänst att jag inte var intresserad av Oddset i Karlstad eftersom jag bodde i Linköping, och av LGB:s respons att döma passade jag på att meddela att jag dåmera tappat intresse för sport överhuvudtaget; gissningsvis referade jag också till de två händelser som jag fortfarande nämner då saken kommer på tal — Glenn Strömbergs »döende svan» mot Tjeckoslovakien och en finalmatch i Canada Cup, där kommersiella intressen så uppenbart gick före de idrottsliga. Som synes försöker Björklund inte ens argumentera emot i den frågan.

Och hur ser det ut idag? Bara de senaste dagarna har vi kunnat läsa om Elmanders filmning för att få en motståndare utvisad, ett mål som inte var något mål, finländska skidåkare dömda för mened, en ishockeymatch utan spelare, en pojklagsmatch i fotboll som ledde till allmänt slagsmål, anklagelser om att U17-landslag innehåller många överåriga spelare, en diskussion huruvida det är okej att vara maskerad på fotbollsmatcher och att riksidrottsförbundet lägger ner sitt fairplay-pris eftersom »det varit svårt att hitta bra kandidater».

Det är väl högst tveksamt om småänglar vill ha något med sportevenemang att göra nuförtiden, men i så fall tror jag att de har ganska lätt att hålla sig för skratt[2].

Addendum 2013-10-30: Jag glömde visst den pågående spelskandalen i svensk (och annan) fotboll och diverse dopningsanklagelser inom cykelsporten och annorstädes.

Addendum 2013-11-28: Ånej, den engelska fotbollen är också infekterad. Slutet är nära…


Fotnoter:

  1. Jag kan naturligtvis inte gå i god för att alla detaljer här är korrekta, men de förefaller mig högst rimliga. Att sekreteraren använde en elskrivmaskin och inte ett av de redigeringssystem som existerade några år innan de blev utkonkurrerade av ordblandare är en gissning baserad på att vissa typer, till exempel ”j” och ”s” ser ut att ha sett bättre dagar. []
  2. I det fall någon yngling som inte är bekant med den Björklundska citatfloran råkar läsa detta må omtalas att en av hans mest spridda kommentarer löd »Där satt det en liten ängel och log». []