AssiML. Användarbeskrivning

Relevanta dokument
INSPIRA. Microsoft. Excel 2007 Grunder

Microsoft Excel Grundkurs

INSPIRA. Microsoft. Word 2007 Grunder

SÅindex 5 i Microsoft Excel 2010

Gran Canaria - Arbetsbeskrivning knapplänkar (Mediator 8)

Referens till. WeavePoint 6 Mini

Introduktion till Matlab

Excel kortkommando. Infoga rad, kolumn eller cell Ta bort rad, kolumn eller cell

Xemacs, första hjälpen!

Software Translator 6.1 Manual

Manual. Anpassad för CMS Made Simple version 1.9.x (uppdaterad ) Birger Eriksson webblots.se

Grunderna i Excel. Identifiera gränssnittsobjekt som du kan använda för att utföra vanliga uppgifter.

Datorlaboration 1 Deskriptiv statistik med hjälp av MS Excel vers. 2010

Introduktion till Matlab

Komma igång med 3L Pro Komma igång med 3L. Copyright VITEC FASTIGHETSSYSTEM AB

Uppgift 18 Eget programval

Lathund för studenter

Att skapa en bakgrundsbild och använda den i HIPP

Microsoft Office Excel, Grundkurs 1. Introduktion

Grundläggande datorkunskap. Kom igång med dator

Word kortkommando. 5. I rutan till höger klickar du på kommandot eller elementet.

A. Datorn från grunden

KALKYL OCH DIAGRAM. Kalkylbladet. 170 Datorkunskap Kalkyl och diagram

Kalkylprogram. I övrigt kan man också söka på Google eller YouTube för att få mer information.

Outlook Axxell Utbildning Ab

Automatisera uppgifter med Visual Basic-makron

Kom igång. Readyonet Lathund för enkelt admin. Logga in Skriv in adressen till din webbsida följt av /login. Exempel:

RACCOON DEVELOPMENT AB

KURSMÅL WINDOWS STARTA KURSEN

Datorlaboration 1 Deskriptiv statistik med hjälp av MS Excel

Produktionsstöd har erhållits från Specialpedagogiska skolmyndigheten

Snabbguide AlphaSmart NEO2

Microsoft. Excel Migrera till Excel från Excel 2003

5HVLVWHQVWDEHOO 'DWD3DUWQHU. Er partner inom data

*****************************************************************************

För att använda Windows på enklaste sätt använder du musen. Musen syns Som en pil på skärmen.

Excel Övning 1 ELEV: Datorkunskap Sida 1 Niklas Schilke

B INSTRUKTION FÖR ELEKTRONISK KURSUTVÄRDERING I GOOGLE MED AUTOMATISK SAMMANSTÄLLNING

Grundläggande Ordbehandling Microsoft Word

Dok nr OSF/AV-15:003, ver E Inloggning till Treserva via extern dator

Programmets startmeny ser ut så här. För att få fram menyerna Avsluta, Inställningar och Användare måste du föra markören upp till det blåa fältet.

PNSPO! Exporterar och Importerar texter från CX- Designer. 20 mars 2012 OMRON Corporation

Introduktion till användning av PicoLog TC-08

Vid fel och frågor Ta kontakt med förbundet. Logga in. Menyn

4 Kolumn Kalkylbladet är uppdelat i rader (horisontellt) och kolumner (vertikalt). Där dessa möts finns alltid en cell.

STOCKHOLMS UNIVERSITET. Handbok 2. Funktionaliteter moveon 4

Lathund Excel Nytt utseende. Skapa Nytt. Flikar

Gränssnitt för FakeGranska. Lars Mattsson

Inloggning till Treserva via extern dator

Extramaterial till Matematik Y

Grundkurs 1 IKT Filhantering

Att skriva på datorn

Image Converter. Användarhandbok. Innehåll: Version: Läs följande innan du använder Image Converter. Översikt av Image Converter

DATORÖVNING 5: SANNOLIKHETSFÖRDELNINGAR FÖR

Om eleven glömmer sitt lösenord, kan lösenordet bytas med hjälp av det allmänna lösenordet.

Datorns delar DATORLÅDA CD/DVD-SPELARE/BRÄNNARE SKÄRM. DISKETT-STATION Finns sällan i nya datorer. TANGENTBORD

INSPIRA. Microsoft. PowerPoint Grunder

WeavePoint Mini. Referensdel

Elias Castegren. (Version 1, 2012)

Laboration 2 i datorintro för E1 Detta dokument innehåller instruktioner och övningar för introduktion till E-programmets datorsystem och web-mail.

Objektorienterad programmering i Java I. Uppgifter: 2 Beräknad tid: 5-8 timmar (OBS! Endast ett labbtillfälle) Att läsa: kapitel 5 6

Från vilka klasser hämtas eleverna till undervisningsgrupperna? Vilka undervisningsgrupper kan schemaläggas samtidigt?

Filbindningar. Mike McBride Översättare: Stefan Asserhäll

Manual matchstatistik. FIBA Livestats version 7. Dokumentet bör finnas vid statistikdatorn innan matchen.

Laboration: Grunderna i Matlab

Grunderna i Word. Identifiera gränssnittsobjekt som du kan använda för att utföra vanliga uppgifter.

Vilken version av Dreamweaver använder du?

Komma iga ng med formler och funktioner

Microsoft Word. Lathund för. Innehåll. Autokorrigering. Autotext. Format

BILDBOK. Programmet stöder talsyntes SAPI 4 och SAPI 5. Programmet kan spela upp ljudfiler (*.wav) och (*.mp3)

Migrera till PowerPoint 2010

2. Komma igång Skapa grupper och elever Skriv också ut sidan 13 så att eleverna har en snabbguide till programmet.

Installationsanvisning för Su Officemallar 2007 För PC Word och PowerPoint

Återkommande frågor för Eee Pad TF201

Om Mappar Uppgift 1: Skapa en mapp på Skrivbordet... 2 Om enheter... 3 Uppgift 2: Byt namn på din nya Höst -mapp till Vår...

6. Nu skall vi ställa in vad som skall hända när man klickar på knappen samt att markören skall ändra sig till en hand när markören är på knappen.

BLI VÄN MED DIN DATOR ENHETER MAPPAR FILER

Emacs. Eric Elfving Institutionen för datavetenskap (IDA) 22 augusti 2016

Migrera till Access 2010

Introduktion till datormiljön och Python

16 Programmering TI -86 F1 F2 F3 F4 F5 M1 M2 M3 M4 M5

Programkonstruktion. Tentamen,

Resurscentrum för kommunikation Dako SymWriter 2. Minimanual

Egna genvägar. Subhashish Pradhan T.C. Hollingsworth Översättare: Stefan Asserhäll

Laboration 1 Introduktion till Visual Basic 6.0

Manual för din hemsida

Steg för Steg Att använda Statistics explorer med data från SKLs databas

ANVÄNDAR MANUAL. SESAM 800 RX MC Manager

Migrera till Word 2010

Kortkommandon Allmänna i Windows 7

Till flera av ovanstående finns det dessutom varianter, vilka kommer att presenteras i de olika avsnitten.

Introduktion till Matlab

VERKTYGSFÄLTET I ARTIKELEDITORN

Introduktion till datorer och nätverk vid institutionen för naturgeografi och ekosystemvetenskap

Labb LABB 1. Databassagan och en rundtur i databasers märkliga värld. Plushögskolan Frågeutveckling inom MSSQL - SU14

Eva Ansell EXCEL 2007 MICROSOFT

Programsnickaren. Grunderna för hur du kommer igång och arbetar med Programsnickaren till Micro Rolltalk. Habilitering & Hjälpmedel

Word Grunderna 1. Om du kan det allra enklaste i Word, hoppa över uppgifterna A-E.

Användarmanual för Content tool version 7.5

Laborationsinformation

Transkript:

AssiML A spreadsheet in ML Användarbeskrivning 2003-10-15 AssiML version 1.1 Lars-Henrik Eriksson Institutionen för informationsteknologi Uppsala universitet lhe@it.uu.se You will be assimilated. Resistance is futile.

0. Innehåll 1. Allmänt... 2 2. Principer... 3 3. Användning... 4 4. Menykommandon... 5 5. Felkoder... 6 6. Begränsningar... 7 1. Allmänt. AssiML är en rutarks- ( spreadsheet ) baserad programmeringsmiljö för Standard ML. Principen är samma som för andra rutarksprogram som Microsoft Excel, men formler utgörs av ML-uttryck. Avsikten med AssiML är att ge en miljö som liknar välkänd programvara för persondatorer (t.ex. Excel) där man kan skriva och prova enkla MLprogram. AssiML är skrivet för att använda SML-implementeringen Moscow ML version 2.00. AssiML utvecklas successivt, så denna beskrivning kommer att uppdateras löpande. 2

2. Principer Ett AssiML-fönster innehåller ett antal celler ordnade i ett rutnät. Kolumnerna i rutnätet har bokstavsbeteckningar och raderna nummerbeteckningar. Varje cell identifieras med kolumnbeteckningen följd av nummerbeteckningen, t.ex. A3. Varje cell kan innehålla ett ML-uttryck ( formel ). Det värde som uttrycket beräknas till visas direkt i cellens plats i rutarket. I uttryck kan man utnyttja värden från andra celler cenom att skriva deras beteckningar. Om värdet i cell A1 är 10 och cell A2 innehåller uttrycket A1+1 kommer alltså värdet i cell A2 att bli 11. Ändrar man innehåller i en cell så att cellens värde ändras kommer alla andra celler som använder detta värde att räknas om automatiskt. Vid varje tillfälle finns en aktiv cell i rutarket. Den aktiva cellen visas genom att den är markerad med avvikande färg. Dessutom står dess beteckning angiven uppe till vänster i fönstret. Den aktiva cellens uttryck visas i en uttrycksruta upptill i fönstret. Under uttrycksrutan visas typen för uttrycket. I vissa fall kan typen vara obestämd då visas en apostrof följd av en eller flera bokstäver (en typvariabel i ML). Beteckning på den aktiva cellen Namn på inläst/sparad fil ML-uttryck för den Menyer aktiva cellen Uttrycksruta Namn på den aktiva cellen Uttryckets typ Cell med värde Aktiv (markerad) cell med sitt värde Begränsningslinjer 3

3. Användning. Genom att markera en cell t.ex. genom att klicka på den gör man cellen aktiv. (Men observera att klickning på en cell medan man redigerar ett uttryck har en annan funktion se nedan.) Uttrycket som hör till den aktiva cellen visas i uttrycksrutan. Uttrycket kan redigeras genom att man klickar i rutan. Är cellen tom kan man skriva in ett uttryck i uttrycksrutan sedan man gjort cellen aktiv. Om uttrycket upptar mer än en rad (innehåller radbrytningstecken) ökas storleken på uttrycksrutan och den förses med rullningslister så att man bekvämt kan redigera större uttryck. Till vänster om uttrycksrutan finns två knappar OK och X. Genom att klicka på OK avslutar man inmatningen/redigeringen av uttrycket uttrycket beräknas och dess värde visas på cellens plats. Genom att klicka på X avbryts redigeringen och det uttryck som fanns innan man började redigeringa återställs. På tangentbord med en ENTER -tangent kan man i allmänhet (beroende på maskin/tangentbordstyp) använda denna tangent i stället för att klicka i knappen OK. Istället för att trycka på X kan man trycka på ESCAPE -tangenten. Medan redigering av ett uttryck pågår, kan man få beteckningen för en cell inlagd i uttrycket genom att klicka på cellen. Finns syntaxfel, typfel eller fel pga obunden identifierare i uttrycket ges ett meddelande om detta och användaren tvingas rätta felet. Den del av uttrycket där ML anser att felet ligger blir markerat. I de flesta fall förhindrar detta att felaktiga uttryck överhuvudtaget kan matas in i cellen. Observera att den del som markeras som felaktig inte med nödvändighet är den plats i uttrycket som du behöver rätta eller ens att du behöver rätta i det uttryck där felet visade sig (t.ex. vid typfel). Klarar man inte att rätta felet kan man avbryta inmatningen/ redigeringen genom att klicka på knappen X varvid det gamla uttrycket återställs. Celler kan namnges (med menykommandot Tools >Name...) så att man kan referera till deras värde med ett namn istället för deras beteckning. Om t.ex. cellen A1 har namnet x och innehåller värdet 10, så har uttrycket x+1 värdet 11. När en cell är aktiv visas dess namn (om den har något) under dess beteckning i övre vänstra hörnet av fönstret. Med menykommandot Tools >Go to... kan man göra en bestämd cell aktiv genom att ange dess beteckning eller namn, om den givits något. 4

Genom att klicka på begränsningslinjerna mellan rader eller kolumner och sedan dra musen med knappen nedtryckt kan man ändra storlek på en rad eller kolumn, t.ex. för att ge utrymme åt ett värde som inte får plats att visa i en cell av standardstorlek. Rutarket med celler kan sparas på fil och läsas tillbaka från fil med med kommandona i menyn Arkiv. Filer som sparats med version 1.1 av AssiML är utformade som ML-filer och kan om man vill läsas in i Moscow ML med funktionen use. Någon möjlighet att skriva ut från AssiML finns för närvarande inte. Däremot är sparade filer i läsligt format och kan skrivas ut. 4. Menykommandon. Menyn File Open... Save Save as... Copy spreadsheet Läser in ett sparat rutark från en fil Sparar rutarket på fil Sparar under nytt (annat) filnamn Kopierar hela arket till urklippet (clipboard) i samma format som när man sparar på fil. Kommandot är främst avsett att användas när man skall klistra in lösningen på en uppgift in i fönster som hör till kurshanteringssystemet Course Manager. Paste spreadsheet Läser in ett sparat ark från urklippet (clipboard). Kommandot är främst avsett när en lärare skall använda en lösning som lämnats in med kurshanteringssystemet Course Manager. Quit Menyn Edit Avslutar AssiML Cut Copy Paste Clear Klipper ut markerad text Kopierar markerad text Klistrar in urklippt text Raderar markerad text OBS! För närvarande kan dessa kommandon endast användas för att redigera uttryck i uttrycksrutan. Man kan alltså inte klippa och klistra 5

hela celler. Vill man kopiera/flytta en cell från en plats till en annan får man göra cellen aktiv, kopiera/klippa uttrycket i uttrycksrutan, göra cellen aktiv på den nya platsen och till sist klistra in uttrycket i uttrycksrutan. Menyn Tools Go to... Name... Font size... Restart Väljer en bestämd cell som aktiv cell och bläddrar vid behov rutarket så att denna cell syns. Kommandot öppnar en ruta där man kan skriva in beteckning eller på den cell som skall bli aktiv. Skapar/ändrar/tar bort namn på den aktiva cellen. Kommandot öppnar en ruta där man kan skriva in eller ändra ett namn på den aktiva cellen, alternativt trycka på en knapp Delete för att ta bort ett befintligt namn. Ger möjlighet att ändra på textstorleken i fönstret Återstartar ML-systemet som räknar ut uttrycken. Detta kommando skall normalt inte behöva användas men skulle ett interntfel i AssiML uppstå som gör att programmet inte längre fungerar korrekt kan det hjälpa med detta kommando. Menyn Help AssiML help About AssiML Visar en hjälptext för programmet Visar programversion m.m. 5. Felkoder. Om värdet av ett uttryck inte kan beräknas på grund av ett syntax-, typeller exekveringsfel visas i cellen stället för ett värde en felkod följt av frågetecken. För exekveringsfel är felkoden samma som namnet på den exception som avbrutit beräkningen. Några av de vanligaste felkoderna är: 6

Div Internal Match Missing Out_of_memory Overflow SML error Subscript Syntax Type Unbound Value Division med noll. Fel i programmet AssiML själv rapportera det till programkonstruktören. En matchning misslyckades. En annan cell använder värdet av denna cell, men något sådant värde finns inte eftersom inget uttryck har skrivits in för cellen. ML-systemet fick slut på arbetsminne. Detta fel tyder på ohejdad rekursion. Resultatet av en aritmetisk operation blev för stort (litet) för att kunna lagras. ML accepterar inte uttrycket, men AssiML förstår inte varför. Försök att hämta tecken utanför en sträng. Uttrycket är syntaktiskt felaktigt Uttrycket har ett typfel Uttrycket refererar till en identifierare som inte är bunden. Inget fel på uttrycket i just denna cell, men ett värde kan ändå inte beräknas eftersom uttrycket beror på en annan cell där inget värde kunnat beräknas på grund av ett fel. 6. Begränsningar. (Detta avsnitt är inte avsett för nybörjare i ML-programmering.) Det finns vissa begränsningar i hur man kan använda ML ifrån AssiML. Eftersom man som användare i AssiML inte har någon direkt kontroll över när uttryck beräknas så är inte funktioner med sidoeffekter tilllåtna. Detta gör bl.a. att bibliotek inte kan laddas in på användarens begäran. Förutom de bibliotek som är förladdade av ML-systemet så laddar AssiML automatiskt in Int, Real och Math. Deklarationer tillåts inte, med undantag av val och fun-deklarationer inuti let-uttryck. Cellidentifierare och namn som getts till celler kan inte användas som identifierare i bindningar. 7

Cirkulära referenser mellan celler tillåts inte, med undantag av att ett uttryck kan referera till cellen den själv finns i om den är en konstant anonym funktion. (Alltså om uttrycket inleds med fn.) AssiML stödjer inte fullständig polymorfi. Om en cell har ett polymorft funktionsvärde så kan det användas med vilken instans av den polymorfa typen som helst, men inte med olika samtidigt. Om man t.ex. cellen A2 har värde av typ a list -> a list, så kan man i en annan cell anropa A2 som funktion med argument av typen int list, men inte i en tredje cell anropa A2 med argument av typen string list. Cellernas typinformation kan i vissa fall låsa sig. Prova då att starta om ML (menykommando Tools >Restart). 8