COMAL, nyt og gammelt

Vi roder stadig med vores "COMALs historie" projekt ude i http://datamuseum.dk.

Vi holder et COMAL arbejdsmøde d. 20 november, 19:30 på "Tapeten" i Ballerup og alle der har lyst til at give en hånd med i projektet er velkomne til at dukke op, om ikke andet så for at hilse på gamle venner og konkurrenter fra dengang. (Send gerne en email til comal@datamuseum.dk så vi ved hvor meget kaffe vi skal lave.)

Men der sker også mange andre ting på COMAL fronten.

Ebbe har lagt et utroligt stort arbejde i at opbygge en COMAL bibliografi. Det er tankevækkende hvor meget der egentlig blev skrevet om COMAL, sproget har bestemt ikke været så "obskurt" som det blev beskyldt for. Har du noget der mangler på listen, vil vi meget gerne høre om det, ideelt set vil vi gerne have scannet det hele ind.

Claus er igang med at genopbygge "IDAG" projektet fra Slagelse Gymnasium, det var et COMAL baseret programsystem der holdt styr på den årlige idrætsdag, hver elev fik et stregmarkeringskort hvor rute, start og slut tid blev markeret og RC7000 computere kunne så sortere og vise top-20 lister for hver rute, årgang, klasse osv. osv.

IDAG var sandsynligvis det største man kunne køre på en RC7000, og der blev brugt adskellige hacks for at få det klemt ind og der var kun ganske få ord til overs mens det kørte. Bl.a. (mis)brugte man MATRIX modulet til lagring af "databasen" via nogle maskinkode rutiner og lige nu er udfordringen at få samlet en COMAL fortolker der har MATRIX modulet til at begynde med.

Parallelt med dette er Claus og jeg igang med at stykke en kørende RC3600 maskine sammen, som IDAG og andre COMAL programmer kan køres på.

Vi modtager stadig (og gerne!) historiske artifakter af relevans for den danske IT-historie (send email til info@datamuseum.dk) og for nylig indløb to kasser med hulkort fra "Vesthimmerlands Gymnasium".

Hulkortene indholder 4 eller 5 forskellige COMAL fortolkere til RC7000 og de skulle naturligvis læses.

Men lige nu har vi ikke en fungerende hulkortlæser i samlingen, så det blev via en omvej.

Vores nye scanner kan godt scanne hulkort:

Illustration: Privatfoto

Resten af aftenen gik med at skrive noget python kode som kan finde de 12*80 stk potientielle 3.175 * 1.397mm store huller.

Jeg startede med en stak hulkort jeg fandt ovre i "SDC" afdelingen, for de har, meget bekvemt, "facit-listen" printet øverst på kortet.

For dem der overvejer hvordan man styrer en IBM mainframe er her lidt historisk JCL at tygge på:

// PRINTER FORMSNO-A42                                                          
// F&LE NAME-ELVKONL4,UNIT-D4,PACK-BKD04,RETAIN-S                               
// FILE NAME-ELVKONL5,UNIT-D1,PACK-BKD01,TRACKS-20                              
// RUN                                                                          
// CEND                                                                         
// CALL ELVLI1,F2                                                               
// CALL ELVLI2,F2                                                               
// COPY FROM-READER,LIBRARY-P,RETAIN-P,TO-F2,NAME-ELVCOP                        
// COPYFILE OUTPUT-DISK,LENGTH-17                                               
// LOAD $COPY,F1                                                                
// FILE NAME-COPYIN,UNIT-1442                                                   
// FILE NAME-COPYO,UNIT-D44,PACK-BKD44,LABEL-ELVOPA,TRACKS-5                    
// DATE 311279                                                                  
// LOAD $DSORT,F1                                                               
// FILE NAME-INPUT,UNIT-D1,PACK-BKD01,LABEL-ELVREG                              
// FILE NAME-OUTPUT,PACK-BKD01,UNIT-D1,LABEL-SO4502,TRACKS-100                  
// RUN                                                                          
01000HSORTR    14A         X  96                                                
     O C  19  20NEC79                                                           
     I                                                                          
     FNC  15  16                             AFD.                               
     FNC   3  14                             GRP/TYPE/APPNR                     
     FDC   1  96                             DATA                               
/*                                                                              
// LOAD ELVST2,F2                                                               
// SWITCH 10000000                                                              
// PRINTER FORMSNO-A42,ALIGN-YES                                                
// FILE NAME-SO4502,UNIT-D1,PACK-BKD01,RETAIN-S           

(Beklager den lidt underlige "syntax-highlighting" vi har hverken en "JCL" eller en "ren tekst" syntax-highlighter her på v2).

Som det ses på linie 2 er koden ikke helt perfekt endnu, der udestår endnu lidt fin-tuning.

Heldigvis er der en checksum for hver 16 ord på de binære kort med COMAL fortolkerne, så jeg slipper for at kontrollæse alle ca. 2000 kort manuelt.

Vi vil meget gerne høre fra folk der kender noget til COMAL undervisning på Vesthimmerlands Gymnasium, send os en email hvis du genkender dette kort:

phk

Kommentarer (10)
sortSortér kommentarer
  • Ældste først
  • Nyeste først
  • Bedste først
Kai Birger Nielsen

Du har sikkert selv fået samme ide, men mit bud på at skanne hulkortene ville være at have en afvigende farve i låget, så man nemt kan finde præcis hullerne og så sætte et ocr program til at finde dem som 0'er eller hvad den nu synes at det ligner mest. Mindst et af standard linux ocr-programmerne kan levere en logfil, hvor der så står at den fandt et 0 i position x1,y1, et andet nul i position x2,y2 osv. Og den logfil er nem at parse.

(Jeg har gjort noget, der ligner ret præcist med nogle fakturaer, hvor ting egentlig var stillet op i kolonner, men bare printet ud uden angivelse af hvor den ene kolonne sluttede og den næste startede :-(
Men med lidt fiffig brug af ocr, så lykkedes det faktisk at lave et png2excel program uden at bruge ret meget tid på det.)

  • 0
  • 0
Olav M.j. Christiansen Blogger

Jeg gik på Vesthimmerlands Gymnasium 1977-1980.

Kan dog nok ikke hjælpe ang. undervisningen på gymnasiet. Jeg startede nemlig et halvt års tid før gymnasiet selv fik en computer (RC7000) med et aftenskolekursus i BASIC på Farsø Skole. En del af det var rene skrivebordsøvelser, og når vi skulle køre programmerne rigtigt, måtte vi låne en terminal (med en skærm, hulkortlæser og akustisk modem) på Års Tekniske Skole.

Efter endt kursus, da VHG endelig havde anskaffet sig en RC7000, forsøgte jeg om mine hulkort (udfyldt med blyant) kunne anvendes her. Det kunne de ikke, så jeg måtte starte forfra. Jeg lærte mig selv COMAL, men mener der rent faktisk var noget undervisning fra ca. 1979 (læreren, der var ansvarlig, var matematiklærer Collstrup).

  • 2
  • 0
Kai Birger Nielsen

Kunne I være lidt mere specifikke om hvor interessen stopper?

Jeg kiggede på reolen og fandt

Leo Højsholt-Poulsen: 3-dimensional grafik, 87-89229-35-5
og
Finn Verner Jensen: Induktion og rekursion, 8798010506
og
Jens Carstensen: Matematik 3 for højt niveau, 8773517593

men jeg ved ikke om fx Carstensens bog indeholder for lidt comal til at være med i listen?

Derudover har jeg et forslag til jer om at I kan overveje librarything.com som et sted at lægge registreringen af værkerne.

Her er fx min registrering af Leo Højsholt-Poulsens bog:
http://www.librarything.com/work/5129781

  • 1
  • 0
Mads Hjorth

Jeg har en masse gode minder om gule bogstaver på en brun skærm... Er der nogen planer om at lege med nogle af de gamle Piccolo'er også?

I forhold til undervisning og introduktion til programmering, tror jeg stadig på at man bør starte ved den blinkende cursor... Jeg kan huske hvor meget den indbød til at 'knække koden' og udforske hvad maskinen egentlig var i stand til. Det virkede for mig som ti-åriog i midt-firserne, gad vide om det vil virke for ti-årige i dag.

Er der nogen der har lyst til at prøve?

  • 0
  • 0
Log ind eller Opret konto for at kommentere