mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-04-09 04:59:31 -06:00
Remove the grammars directory. It was full of old grammars that don't compile these days. See the old source distributions if you want them.
This commit is contained in:
@@ -1,8 +0,0 @@
|
||||
distr:
|
||||
sh mkDistr.sh
|
||||
|
||||
test:
|
||||
sh tst.sh
|
||||
|
||||
lib:
|
||||
sh mkLib.sh
|
||||
@@ -1,26 +0,0 @@
|
||||
-- A file with PreReq and PostReq etc...
|
||||
|
||||
resource GenResEng = {
|
||||
|
||||
param Form = Ques | Req | ReqNeg ;
|
||||
|
||||
|
||||
oper choosePre : Form => Str
|
||||
= table {
|
||||
Ques => ["can i"];
|
||||
Req => variants{ ["i want to"] ; ["i would like to"] };
|
||||
ReqNeg => variants{ ["i do not want to"] ; ["i would not like to"] }
|
||||
|
||||
};
|
||||
|
||||
|
||||
oper choosePost : Form => Str
|
||||
= table {
|
||||
Ques => "";
|
||||
Req => "please";
|
||||
ReqNeg => "please"
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -1,26 +0,0 @@
|
||||
-- A file with PreReq and PostReq etc...
|
||||
|
||||
resource GenResSwe = {
|
||||
|
||||
param Form = Ques | Req | ReqNeg;
|
||||
|
||||
|
||||
oper choosePre : Form => Str
|
||||
= table {
|
||||
Ques => ["kan jag"];
|
||||
Req => variants{ ["jag vill"] ; ["jag skulle vilja"] };
|
||||
ReqNeg => variants{ ["jag vill inte"] ; ["jag skulle inte vilja"] }
|
||||
|
||||
};
|
||||
|
||||
|
||||
oper choosePost : Form => Str
|
||||
= table {
|
||||
Ques => "";
|
||||
Req => "tack";
|
||||
ReqNeg => "tack"
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -1,133 +0,0 @@
|
||||
-- general grammar
|
||||
--# -path=.:../
|
||||
|
||||
abstract sharedCore = {
|
||||
|
||||
cat
|
||||
|
||||
-- Nuance needs a S category, easiest fix.
|
||||
S;
|
||||
|
||||
-- Simple Dialogue Moves
|
||||
DMove;
|
||||
|
||||
|
||||
|
||||
-- Basic forms
|
||||
|
||||
Action Task;
|
||||
SingleAction;
|
||||
Proposition Task;
|
||||
|
||||
Task;
|
||||
|
||||
|
||||
-- Dialogue moves (DMove) are: ask, answer, greet, quit, request, confirm, report
|
||||
|
||||
|
||||
-- Greet
|
||||
-- Simple greet move...
|
||||
Greet ;
|
||||
|
||||
-- Quit
|
||||
-- Simple quit move...
|
||||
Quit;
|
||||
|
||||
-- Answer
|
||||
-- Answers are moves that answer questions, posed or not.
|
||||
Answer Task;
|
||||
NegAnswer Task;
|
||||
|
||||
-- Ask
|
||||
-- Ask moves are those moves that ask for plans.
|
||||
-- "vad vill du göra?" "vad kan jag göra" "hjälp"(?)
|
||||
-- Hur är det med ja/nej frågor?
|
||||
Ask Task;
|
||||
SingleAsk;
|
||||
|
||||
|
||||
-- Request
|
||||
-- Requests are those moves that have no arguments and
|
||||
-- generate no specific informationfilled answers.
|
||||
Request;
|
||||
|
||||
|
||||
-- ICM
|
||||
|
||||
ICM;
|
||||
Per_ICM;
|
||||
Per_ICM_Followed;
|
||||
Acc_ICM;
|
||||
Acc_ICM_Followed;
|
||||
|
||||
|
||||
|
||||
fun
|
||||
|
||||
makeS : DMove -> S;
|
||||
|
||||
-- Greet
|
||||
makeGreetMove : Greet -> DMove;
|
||||
|
||||
-- Quit
|
||||
makeQuitMove : Quit -> DMove;
|
||||
|
||||
-- Answer
|
||||
makeAnswer : (t : Task) -> Proposition t -> Answer t;
|
||||
makeAnswerMove : (t : Task) -> Answer t -> DMove;
|
||||
|
||||
|
||||
makeNegAnswer : (t : Task) -> Proposition t -> NegAnswer t;
|
||||
makeNegAnswerMove : (t : Task) -> NegAnswer t -> DMove;
|
||||
|
||||
-- Ask
|
||||
singleAsk : (t : Task) -> Ask t -> SingleAsk;
|
||||
makeYesNoAsk : (t : Task) -> Action t -> SingleAsk;
|
||||
makeAsk : SingleAsk -> DMove;
|
||||
|
||||
|
||||
-- Request
|
||||
makeRequest : SingleAction -> Request;
|
||||
makeRequestMove : Request -> DMove;
|
||||
makeNegRequestMove : Request -> DMove;
|
||||
|
||||
|
||||
-- ICM
|
||||
|
||||
makeICMPer : Per_ICM -> ICM;
|
||||
makeICMAcc : Acc_ICM -> ICM;
|
||||
|
||||
|
||||
|
||||
makeICMMove : ICM -> DMove;
|
||||
|
||||
|
||||
-- LEXICON
|
||||
|
||||
shortAnswer : Task;
|
||||
|
||||
top_command : SingleAction;
|
||||
|
||||
help_command : SingleAction;
|
||||
|
||||
yes : Answer shortAnswer;
|
||||
no : Answer shortAnswer;
|
||||
|
||||
greet_command : Greet;
|
||||
bye_command : Quit;
|
||||
|
||||
|
||||
-- ICMs
|
||||
per_pos : Per_ICM_Followed;
|
||||
per_neg : Per_ICM;
|
||||
per_int : Per_ICM;
|
||||
|
||||
acc_pos : Acc_ICM;
|
||||
acc_neg_alone : Acc_ICM;
|
||||
acc_neg : Acc_ICM_Followed;
|
||||
--acc_int : Acc_ICM;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -1,55 +0,0 @@
|
||||
concrete sharedCoreEng of sharedCore = open GenResEng in {
|
||||
|
||||
--flags lexer=codelit ; unlexer=codelit ; startcat=DMoveList ;
|
||||
flags conversion=finite;
|
||||
|
||||
|
||||
--# -path=.:../
|
||||
|
||||
lin
|
||||
makeS s = {s = s.s};
|
||||
|
||||
|
||||
|
||||
-- Linearization of Greet, Quit, Answer, Ask and Request are moved to
|
||||
-- System and User respectively because of differing linearizations
|
||||
|
||||
|
||||
-- ICM
|
||||
|
||||
makeICMPer perI = {s = perI.s};
|
||||
|
||||
makeICMAcc accI = {s = accI.s};
|
||||
|
||||
makeICMMove icm = {s = icm.s};
|
||||
|
||||
|
||||
|
||||
|
||||
-- LEXICON
|
||||
|
||||
pattern
|
||||
|
||||
top_command = (variants {["top"] ; ["forget everything"] ; ["start over"]});
|
||||
-- end_command = "quit";
|
||||
|
||||
help_command = variants {"get" ; ""} ++ "help" ;
|
||||
|
||||
yes = variants {"yes" ; "yup" ; "yeppers"};
|
||||
no = variants {"no" ; "nope" };
|
||||
|
||||
greet_command = variants { "hello" ; "hi" ; "yo"};
|
||||
bye_command = variants { ["goodbye"] ; "bye" ; "end" };
|
||||
|
||||
-- ICMs
|
||||
-- Moved to User and System respectively because of differing linearisations
|
||||
-- for user and system.
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -1,92 +0,0 @@
|
||||
--# -path=.:../
|
||||
|
||||
concrete sharedCorePro of sharedCore = {
|
||||
|
||||
|
||||
flags lexer=code ; unlexer=concat ;
|
||||
flags conversion=finite;
|
||||
|
||||
lin
|
||||
|
||||
-- Borde inte request, question, etc.. ligga i en
|
||||
-- generell resursfil så att man kan komma åt dem.
|
||||
-- Det är inte speciellt snyggt att skriva ut det
|
||||
-- ibland här och ibland i den specifika filen..
|
||||
-- Det känns som om det borde vara en "resurs"fråga.
|
||||
|
||||
-- Det ÄR en resursgrej... titta i video grammatiken:
|
||||
-- prologResource.gf och generalProlog.gf
|
||||
-- som Aarne fixade till från Karins pyssel.
|
||||
-- Hakparanteserna borde också fixas till på samma sätt...
|
||||
|
||||
makeS s = {s = "[" ++ s.s ++ "]"};
|
||||
|
||||
-- Greet
|
||||
makeGreetMove gre = {s = gre.s };
|
||||
|
||||
-- Quit
|
||||
makeQuitMove qui = {s = qui.s };
|
||||
|
||||
-- Answer
|
||||
makeAnswer _ ans = {s = "answer" ++ "(" ++ ans.s ++ ")"};
|
||||
makeNegAnswer _ ans = {s = "answer" ++ "(" ++ "not" ++ "(" ++ ans.s ++ ")" ++ ")"};
|
||||
makeAnswerMove _ sha = {s = sha.s };
|
||||
makeNegAnswerMove _ sha = {s = sha.s};
|
||||
|
||||
-- Ask
|
||||
singleAsk _ ask = {s = "X" ++ "^" ++ ask.s ++ "(" ++ "X" ++ ")"};
|
||||
makeYesNoAsk _ action = {s = action.s};
|
||||
makeAsk ask = {s = "ask" ++ "(" ++ ask.s ++ ")"};
|
||||
|
||||
-- Request
|
||||
makeRequest req = {s = "request" ++ "(" ++ req.s ++ ")" };
|
||||
makeRequestMove reqM = {s = reqM.s};
|
||||
makeNegRequestMove reqM = {s = "not" ++ "(" ++ reqM.s ++ ")"};
|
||||
|
||||
|
||||
-- ICM
|
||||
|
||||
makeICMPer perI = {s = perI.s};
|
||||
|
||||
makeICMAcc accI = {s = accI.s};
|
||||
-- makeICMAccProp accI prop = {s = accI.s ++ ":" ++ prop.s};
|
||||
|
||||
|
||||
makeICMMove icm = {s = "icm" ++ ":" ++ icm.s};
|
||||
|
||||
-- LEXICON
|
||||
|
||||
pattern
|
||||
top_command = "top";
|
||||
-- end_command = "quit";
|
||||
|
||||
help_command = "help";
|
||||
|
||||
yes = "yes";
|
||||
no = "no";
|
||||
|
||||
greet_command = "greet";
|
||||
bye_command = "quit";
|
||||
|
||||
-- ICMs
|
||||
per_pos = ["per * pos"];
|
||||
per_neg = ["per * neg"];
|
||||
per_int = ["per * int"];
|
||||
|
||||
|
||||
acc_pos = ["acc * pos"];
|
||||
acc_neg = ["acc * neg"];
|
||||
acc_neg_alone = ["acc * neg"];
|
||||
--acc_int = "acc*int";
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -1,54 +0,0 @@
|
||||
concrete sharedCoreSwe of sharedCore = open GenResSwe in {
|
||||
|
||||
--flags lexer=codelit ; unlexer=codelit ;
|
||||
flags conversion=finite;
|
||||
|
||||
--# -path=.:../
|
||||
|
||||
lin
|
||||
makeS s = {s = s.s};
|
||||
|
||||
-- Linearizations of Greet, Quit, Answer, Ask and Request
|
||||
-- are moved to User and System respectively because of punctuation.
|
||||
|
||||
-- ICM
|
||||
|
||||
makeICMPer perI = {s = perI.s};
|
||||
|
||||
makeICMAcc accI = {s = accI.s};
|
||||
|
||||
|
||||
makeICMMove icm = {s = icm.s};
|
||||
|
||||
|
||||
|
||||
|
||||
-- LEXICON
|
||||
|
||||
pattern
|
||||
|
||||
top_command = (variants {["glömma allt"] ; ["börja om"]});
|
||||
-- end_command = "avsluta";
|
||||
|
||||
help_command = variants {"få" ; "ha"} ++ "hjälp" ;
|
||||
|
||||
yes = variants {"ja" ; "japp" ; "jajamen"};
|
||||
no = variants {"nej" ; "nepp" };
|
||||
|
||||
greet_command = variants { "hej" ; "tjena" ; "hallå"};
|
||||
bye_command = variants { ["hejdå"] ; "sluta" ; "avbryt" };
|
||||
|
||||
|
||||
-- ICMs
|
||||
-- Linearization of ICMs are moved to User and System
|
||||
-- respectively because of differing linearizations.
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -1,158 +0,0 @@
|
||||
-- general grammar
|
||||
--# -path=.:../Shared
|
||||
|
||||
abstract systemCore = sharedCore ** {
|
||||
|
||||
cat
|
||||
|
||||
DMoves;
|
||||
|
||||
|
||||
-- internal forms
|
||||
|
||||
--Proposition;
|
||||
Other_ICM;
|
||||
Other_ICM_Followed;
|
||||
Sem_ICM;
|
||||
Sem_ICM_Followed;
|
||||
Und_ICM;
|
||||
Und_ICM_Followed;
|
||||
|
||||
|
||||
|
||||
-- Confirm
|
||||
-- This is where the system confirms that the action has been taken.
|
||||
Confirm;
|
||||
|
||||
|
||||
-- Report
|
||||
-- This is where the system reports on the actions taken
|
||||
-- i.e. "The song Leviathan was added to the playlist"
|
||||
|
||||
-- The report consists of a Request.
|
||||
Report;
|
||||
Status;
|
||||
|
||||
-- Asks specific for the System
|
||||
SystemAsk;
|
||||
|
||||
|
||||
-- Issues
|
||||
|
||||
Issue;
|
||||
PropIssue;
|
||||
AskIssue;
|
||||
ListIssue;
|
||||
IssueList;
|
||||
ListItem;
|
||||
|
||||
|
||||
fun
|
||||
|
||||
-- BASICS
|
||||
|
||||
makeSofDMoves : DMoves -> S;
|
||||
makeDMPair : DMove -> DMove -> DMoves;
|
||||
makeDMList : DMove -> DMoves -> DMoves;
|
||||
|
||||
|
||||
-- ICM
|
||||
|
||||
-- Plus en som tar en strang... oj oj for genereringen.
|
||||
-- makeICMPerString : Per_ICM_Followed -> String -> ICM;
|
||||
makeICMPerString : Per_ICM_Followed -> ICM;
|
||||
|
||||
makeICMSem : Sem_ICM -> ICM;
|
||||
makeICMSemMoveReq : Sem_ICM_Followed -> Request -> ICM;
|
||||
makeICMSemMoveAnswer : (t : Task) -> Sem_ICM_Followed -> Answer t -> ICM;
|
||||
makeICMSemMoveAsk : (t : Task) -> Sem_ICM_Followed -> Ask t -> ICM;
|
||||
|
||||
makeICMUnd : Und_ICM -> ICM;
|
||||
makeICMUndProp : (t : Task) -> Und_ICM_Followed -> Proposition t -> ICM;
|
||||
|
||||
makeICMOther : Other_ICM -> ICM;
|
||||
makeICMOtherIssue : Other_ICM_Followed -> ListItem -> ICM;
|
||||
makeICMOtherReq : (t : Task) -> Other_ICM_Followed -> Action t -> ICM;
|
||||
|
||||
makeICMAccIssue : Acc_ICM_Followed -> Issue -> ICM;
|
||||
|
||||
-- !!! Väldigt rekursivt!!!!
|
||||
|
||||
|
||||
|
||||
|
||||
-- Confirm
|
||||
--makeConfirm : SingleAction -> Confirm;
|
||||
makeConfirmMove : Confirm -> DMove;
|
||||
|
||||
|
||||
-- Report
|
||||
|
||||
-- Behöver en till kategori, en Status...
|
||||
-- Hmm... undrar hur jag ska gora det här snyggt.
|
||||
|
||||
|
||||
makeReport : SingleAction -> Status -> Report;
|
||||
makeReportMove : Report -> DMove;
|
||||
|
||||
-- Ask
|
||||
makeSystemAsk : SystemAsk -> DMove;
|
||||
makeAskSet : IssueList -> SystemAsk;
|
||||
makeInstantiatedAsk : (t : Task) -> Action t -> SystemAsk;
|
||||
makeInstantiatedAskSingle : SingleAction -> SystemAsk;
|
||||
|
||||
|
||||
-- Issues
|
||||
|
||||
makePropIssue : (t : Task) -> Proposition t -> PropIssue;
|
||||
|
||||
makeIssueProp : PropIssue -> Issue;
|
||||
makeIssueAsk : AskIssue -> Issue;
|
||||
makeIssueList : ListIssue -> Issue;
|
||||
|
||||
makePropIssue : (t : Task) -> Proposition t -> PropIssue;
|
||||
makeAskIssue : (t : Task) -> Ask t -> AskIssue;
|
||||
|
||||
--makeListItemProp : PropIssue -> ListItem;
|
||||
makeListItemAsk : AskIssue -> ListItem;
|
||||
makeListItemAction : (t : Task) -> Action t -> ListItem;
|
||||
makeListItemSingleAction : SingleAction -> ListItem;
|
||||
|
||||
makeListIssue : ListItem -> ListItem -> ListIssue;
|
||||
makeListIssue2 : ListItem -> ListIssue ->ListIssue;
|
||||
|
||||
makeActualListIssue : ListIssue -> IssueList;
|
||||
|
||||
-- Lexicon
|
||||
makeBasicAsk : SystemAsk;
|
||||
|
||||
sem_pos : Sem_ICM;
|
||||
sem_pos_followed : Sem_ICM_Followed;
|
||||
sem_neg : Sem_ICM;
|
||||
--sem_int : Sem_ICM;
|
||||
|
||||
und_pos : Und_ICM;
|
||||
und_pos_followed : Und_ICM_Followed;
|
||||
und_neg : Und_ICM;
|
||||
und_int : Und_ICM_Followed;
|
||||
|
||||
reraise : Other_ICM;
|
||||
reraise_followed : Other_ICM_Followed;
|
||||
loadplan : Other_ICM;
|
||||
accomodate : Other_ICM_Followed;
|
||||
reaccomodate : Other_ICM_Followed;
|
||||
|
||||
a_String : String;
|
||||
|
||||
status_done : Status;
|
||||
status_initiated : Status;
|
||||
status_pending : Status;
|
||||
status_failed : Status;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -1,146 +0,0 @@
|
||||
concrete systemCoreEng of systemCore = sharedCoreEng ** {
|
||||
|
||||
--flags lexer=text ; unlexer=text ; startcat=DMoveList ;
|
||||
--# -path=.:../:../Shared
|
||||
flags conversion=finite;
|
||||
|
||||
|
||||
lin
|
||||
|
||||
-- Greet
|
||||
makeGreetMove gre = {s = gre.s ++ "!"};
|
||||
|
||||
-- Quit
|
||||
makeQuitMove qui = {s = qui.s ++ "!"};
|
||||
|
||||
-- Answer
|
||||
makeAnswer _ ans = {s = ans.s};
|
||||
makeNegAnswer _ ans = {s = "not" ++ ans.s};
|
||||
makeAnswerMove _ sha = {s = sha.s ++ "."};
|
||||
makeNegAnswerMove _ sha = {s = sha.s ++ "."};
|
||||
|
||||
-- Ask
|
||||
singleAsk _ ask = {s = ask.s};
|
||||
makeYesNoAsk _ action = {s = action.s};
|
||||
makeAsk ask = {s = ask.s ++ "."};
|
||||
|
||||
|
||||
-- Request
|
||||
|
||||
-- makeRequestMove moved to System and User respectively
|
||||
-- because of differing linearizations
|
||||
|
||||
makeRequest req = {s = req.s ++ "."};
|
||||
makeRequestMove req = {s = req.s };
|
||||
makeNegRequestMove req = {s = req.s};
|
||||
|
||||
-- BASICS
|
||||
|
||||
makeSofDMoves dms = {s = dms.s};
|
||||
makeDMPair dm1 dm2 = {s = dm1.s ++ dm2.s};
|
||||
makeDMList dm dms = {s = dm.s ++ dms.s};
|
||||
|
||||
|
||||
-- Confirm
|
||||
|
||||
--makeConfirm req = {s = ["managed to"] ++ req.s ++ "."};
|
||||
makeConfirmMove conM = {s = conM.s ++ "."};
|
||||
|
||||
-- Report
|
||||
makeReport req status = {s = status.s ++ req.s ++ "." };
|
||||
makeReportMove repM = {s = repM.s};
|
||||
|
||||
|
||||
-- ICM
|
||||
|
||||
-- makeICMPerString perI string = {s = perI.s ++ string.s ++ "."};
|
||||
makeICMPerString perI = {s = perI.s};
|
||||
|
||||
makeICMSem semI = {s = semI.s};
|
||||
makeICMSemMoveReq semI req = {s = semI.s ++ req.s ++ "."};
|
||||
makeICMSemMoveAnswer _ semI ans = {s = semI.s ++ ans.s ++ "."};
|
||||
makeICMSemMoveAsk _ semI ask = {s = semI.s ++ ask.s ++ "."};
|
||||
|
||||
|
||||
makeICMUnd undI = {s = undI.s};
|
||||
makeICMUndProp _ undI prop = {s = prop.s ++ undI.s };
|
||||
|
||||
makeICMAccIssue accI issue = {s = accI.s ++ [", i cannot answer questions about"] ++ issue.s ++ "."};
|
||||
|
||||
makeICMOther otherI = {s = otherI.s };
|
||||
makeICMOtherIssue otherI issue = {s = otherI.s ++ issue.s ++ "."};
|
||||
makeICMOtherReq _ other req = {s = other.s ++ req.s ++ "."};
|
||||
|
||||
|
||||
-- Ask
|
||||
|
||||
makeSystemAsk sysA = {s = sysA.s ++ "?"};
|
||||
makeAskSet set = {s = ["do you want to"] ++ set.s};
|
||||
makeInstantiatedAsk _ insA = {s = ["do you want to"] ++ insA.s };
|
||||
makeInstantiatedAskSingle insA = {s = ["do you want to"] ++ insA.s};
|
||||
|
||||
-- Isues
|
||||
|
||||
makePropIssue _ prop = {s = prop.s};
|
||||
|
||||
makeIssueProp pi = {s = pi.s};
|
||||
makeIssueAsk ai = {s = ai.s};
|
||||
makeIssueList li = {s = li.s};
|
||||
|
||||
--makePropIssue _ prop = {s = prop.s};
|
||||
makeAskIssue _ ask = {s = ask.s};
|
||||
|
||||
-- makeListItemProp propI = {s = propI.s};
|
||||
makeListItemAsk askI = {s = "ask" ++ "about" ++ askI.s};
|
||||
makeListItemAction _ action = {s = action.s};
|
||||
makeListItemSingleAction action = {s = action.s};
|
||||
|
||||
makeListIssue prop1 prop2 = {s = prop1.s ++ "or" ++ prop2.s};
|
||||
makeListIssue2 prop list = {s = prop.s ++ "," ++ list.s};
|
||||
|
||||
makeActualListIssue list = {s = list.s};
|
||||
|
||||
|
||||
pattern
|
||||
|
||||
makeBasicAsk = ["what can i do for you"];
|
||||
|
||||
sem_pos = "okay";
|
||||
sem_pos_followed = [""];
|
||||
sem_neg = ["i am sorry i do not understand ."];
|
||||
-- sem_int = ["what do you mean with"];
|
||||
|
||||
und_pos = ["okay ."];
|
||||
und_pos_followed = ["."];
|
||||
und_neg = ["i do not understand what you mean ."];
|
||||
und_int = [", is this correct ?"]; -- följer yttrandet!!!
|
||||
|
||||
per_pos = ["i thought you said"]; -- följs av en sträng
|
||||
|
||||
reraise = ["so ,"];
|
||||
reraise_followed = ["so ,"];
|
||||
loadplan = ["lets see ."];
|
||||
accomodate = ["i assume you mean"];
|
||||
reaccomodate = ["returning to "];
|
||||
|
||||
|
||||
-- ICMs
|
||||
-- Moved from General because of differing linearisations user and system.
|
||||
|
||||
per_neg = variants {["pardon i did not hear what you said ."] ; ["pardon ?"]; ["sorry ?"]};
|
||||
per_int = variants { ["pardon ?"] ; ["what did you say ?"] };
|
||||
|
||||
acc_pos = "okay";
|
||||
acc_neg = "sorry";
|
||||
acc_neg_alone = "sorry";
|
||||
|
||||
|
||||
status_done = ["managed to"];
|
||||
status_initiated = ["started to"];
|
||||
status_pending = ["waiting to"];
|
||||
status_failed = ["failed to"];
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -1,128 +0,0 @@
|
||||
|
||||
|
||||
concrete systemCorePro of systemCore = sharedCorePro ** {
|
||||
|
||||
|
||||
flags lexer=codelit ; unlexer=concat ;
|
||||
flags conversion=finite;
|
||||
|
||||
|
||||
lincat
|
||||
|
||||
|
||||
-- Confirm
|
||||
-- This is where the system confirms that the action has been taken.
|
||||
Confirm = {s : Str};
|
||||
|
||||
|
||||
-- Report
|
||||
-- This is where the system reports on the actions taken
|
||||
-- i.e. "The song Leviathan was added to the playlist"
|
||||
|
||||
-- The report consists of a Request.
|
||||
Report = {s : Str};
|
||||
|
||||
lin
|
||||
|
||||
-- BASICS
|
||||
|
||||
makeSofDMoves dms = {s = "[" ++ dms.s ++ "]"};
|
||||
makeDMPair dm1 dm2 = {s = dm1.s ++ "," ++ dm2.s};
|
||||
makeDMList dm dms = {s = dm.s ++ "," ++ dms.s};
|
||||
|
||||
|
||||
|
||||
-- Confirm
|
||||
--makeConfirm req = { s = "confirm" ++ "(" ++ req.s ++ ")"};
|
||||
makeConfirmMove conM = {s = "confirm" ++ "(" ++ conM.s ++ ")"};
|
||||
|
||||
|
||||
-- Report
|
||||
makeReport req status = { s = "report" ++ "(" ++ req.s ++ "," ++ status.s ++ ")"};
|
||||
makeReportMove repM = {s = repM.s};
|
||||
|
||||
-- Ask
|
||||
|
||||
makeSystemAsk sysA = {s = "ask" ++ "(" ++ sysA.s ++ ")"};
|
||||
makeAskSet set = {s = set.s};
|
||||
makeInstantiatedAsk _ insA = {s = "action" ++ "(" ++ insA.s ++ ")"};
|
||||
makeInstantiatedAskSingle insA = {s = "action" ++ "(" ++ insA.s ++ ")"};
|
||||
|
||||
|
||||
-- ICM
|
||||
-- Plus en som tar en strang... oj oj for genereringen.
|
||||
-- makeICMPerString perI string = {s = perI.s ++ string.s};
|
||||
makeICMPerString perI = {s = perI.s };
|
||||
|
||||
makeICMSem semI = {s = semI.s};
|
||||
makeICMSemMoveReq semI req = {s = semI.s ++ ":" ++ req.s};
|
||||
makeICMSemMoveAnswer _ semI ans = {s = semI.s ++ ":" ++ ans.s};
|
||||
makeICMSemMoveAsk _ semI ask = {s = semI.s ++ ":" ++ ask.s};
|
||||
|
||||
makeICMUnd undI = {s = undI.s};
|
||||
makeICMUndProp _ undI prop = {s = undI.s ++ ":" ++ "usr" ++ "*" ++ prop.s};
|
||||
|
||||
|
||||
makeICMOther otherI = {s = otherI.s};
|
||||
makeICMOtherIssue otherI issue = {s = otherI.s ++ ":" ++ issue.s};
|
||||
makeICMOtherReq _ other req = {s = other.s ++ ":" ++ req.s};
|
||||
|
||||
makeICMAccIssue otherI issue = {s = otherI.s ++ ":" ++ issue.s};
|
||||
|
||||
-- !!! Väldigt rekursivt!!!!
|
||||
|
||||
-- Isues
|
||||
|
||||
makePropIssue _ prop = {s = prop.s};
|
||||
|
||||
makeIssueProp pi = {s = pi.s};
|
||||
makeIssueAsk ai = {s = ai.s};
|
||||
makeIssueList li = {s = li.s};
|
||||
|
||||
makePropIssue _ prop = {s = prop.s};
|
||||
makeAskIssue _ ask = {s = "X" ++ "^" ++ ask.s ++ "(" ++ "X" ++ ")"};
|
||||
|
||||
--makeListItemProp propI = {s = propI.s};
|
||||
makeListItemAsk askI = {s = "issue" ++ "(" ++ askI.s ++ ")"};
|
||||
makeListItemAction _ action = {s = variants {("action" ++ "(" ++ action.s ++ ")") ;
|
||||
action.s }};
|
||||
makeListItemSingleAction action = {s = variants { ("action" ++ "(" ++ action.s ++ ")") ;
|
||||
action.s }};
|
||||
|
||||
makeListIssue prop1 prop2 = {s = prop1.s ++ "," ++ prop2.s};
|
||||
makeListIssue2 prop list = {s = prop.s ++ "," ++ list.s};
|
||||
|
||||
makeActualListIssue list = {s = "set" ++ "(" ++ "[" ++ list.s ++ "]" ++ ")"};
|
||||
|
||||
|
||||
pattern
|
||||
|
||||
-- LEXICON
|
||||
|
||||
makeBasicAsk = ["x ^ action ( x )"]; -- OBS OBS!!!
|
||||
|
||||
sem_pos = ["sem * pos"];
|
||||
sem_pos_followed = ["sem * pos"];
|
||||
sem_neg = ["sem * neg"];
|
||||
--sem_int = ["sem * int"];
|
||||
|
||||
und_pos = ["und * pos"];
|
||||
und_pos_followed = ["und * pos"];
|
||||
und_neg = ["und * neg"];
|
||||
und_int = ["und * int"];
|
||||
|
||||
reraise = "reraise";
|
||||
reraise_followed = "reraise";
|
||||
loadplan = "loadplan";
|
||||
accomodate = "accomodate";
|
||||
reaccomodate = "reaccomodate";
|
||||
|
||||
status_done = "done";
|
||||
status_initiated = "initiated";
|
||||
status_pending = "pending";
|
||||
status_failed = "failed";
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -1,141 +0,0 @@
|
||||
concrete systemCoreSwe of systemCore = sharedCoreSwe ** {
|
||||
|
||||
--flags lexer=codelit ; unlexer=codelit ; startcat=DMoveList ;
|
||||
--# -path=.:../:../Shared
|
||||
flags conversion=finite;
|
||||
|
||||
lin
|
||||
|
||||
-- Greet
|
||||
makeGreetMove gre = {s = gre.s ++ "!"};
|
||||
|
||||
-- Quit
|
||||
makeQuitMove qui = {s = qui.s ++ "!"};
|
||||
|
||||
-- Answer
|
||||
makeAnswer _ ans = {s = ans.s};
|
||||
makeNegAnswer _ ans = {s = "inte" ++ ans.s};
|
||||
makeAnswerMove _ sha = {s = sha.s ++ "."};
|
||||
makeNegAnswerMove _ sha = {s = sha.s ++ "."};
|
||||
|
||||
-- Ask
|
||||
singleAsk _ ask = {s = ask.s};
|
||||
makeYesNoAsk _ action = {s = action.s};
|
||||
makeAsk ask = {s = ask.s ++ "."};
|
||||
|
||||
|
||||
-- Request
|
||||
|
||||
-- makeRequestMove moved to System and User respectively
|
||||
-- because of differing linearizations
|
||||
|
||||
makeRequest req = {s = req.s ++ "."};
|
||||
|
||||
makeRequestMove req = {s = req.s };
|
||||
makeNegRequestMove req = {s = req.s};
|
||||
|
||||
|
||||
|
||||
-- BASICS
|
||||
|
||||
makeSofDMoves dms = {s = dms.s};
|
||||
makeDMPair dm1 dm2 = {s = dm1.s ++ dm2.s};
|
||||
makeDMList dm dms = {s = dm.s ++ dms.s};
|
||||
|
||||
|
||||
-- Confirm
|
||||
|
||||
--makeConfirm req = {s = ["lyckades med att"] ++ req.s ++ "."};
|
||||
makeConfirmMove conM = {s = conM.s};
|
||||
|
||||
-- Report
|
||||
makeReport req status= {s = status.s ++ req.s ++ "."};
|
||||
makeReportMove repM = {s = repM.s};
|
||||
|
||||
|
||||
-- ICM
|
||||
|
||||
--makeICMPerString perI string = {s = perI.s ++ string.s ++ "."};
|
||||
makeICMPerString perI = {s = perI.s};
|
||||
|
||||
makeICMSem semI = {s = semI.s};
|
||||
makeICMSemMoveReq semI req = {s = semI.s ++ req.s ++ "."};
|
||||
makeICMSemMoveAnswer _ semI ans = {s = semI.s ++ "med" ++ ans.s ++ "."};
|
||||
makeICMSemMoveAsk _ semI ask = {s = semI.s ++ ask.s ++ "."};
|
||||
|
||||
|
||||
makeICMUnd undI = {s = undI.s};
|
||||
makeICMUndProp _ undI prop = {s = prop.s ++ "," ++ undI.s};
|
||||
|
||||
makeICMAccIssue accI issue = {s = accI.s ++ issue.s};
|
||||
|
||||
makeICMOther otherI = {s = otherI.s ++ "."};
|
||||
makeICMOtherIssue otherI issue = {s = otherI.s ++ issue.s ++ "."};
|
||||
|
||||
-- Ask
|
||||
|
||||
makeSystemAsk sysA = {s = sysA.s ++ "?"};
|
||||
makeAskSet set = {s = ["vill du"] ++ set.s};
|
||||
makeInstantiatedAsk _ insA = {s = ["vill du"] ++ insA.s};
|
||||
makeInstantiatedAskSingle insA = {s = ["vill du"] ++ insA.s};
|
||||
|
||||
-- Isues
|
||||
|
||||
makePropIssue _ prop = {s = prop.s};
|
||||
|
||||
makeIssueProp pi = {s = pi.s};
|
||||
makeIssueAsk ai = {s = ai.s};
|
||||
makeIssueList li = {s = li.s};
|
||||
|
||||
--makePropIssue prop = {s = prop.s};
|
||||
makeAskIssue _ ask = {s = ask.s};
|
||||
|
||||
-- makeListItemProp propI = {s = propI.s};
|
||||
makeListItemAsk askI = {s = "fråga" ++ "om" ++ askI.s};
|
||||
makeListItemAction _ action = {s = action.s};
|
||||
makeListItemSingleAction action = {s = action.s};
|
||||
|
||||
makeListIssue prop1 prop2 = {s = prop1.s ++ "eller" ++ prop2.s};
|
||||
|
||||
|
||||
|
||||
pattern
|
||||
|
||||
makeBasicAsk = ["vad kan jag göra för dig"];
|
||||
|
||||
sem_pos = "okej";
|
||||
sem_neg = ["förlåt jag förstår inte vad du menar."];
|
||||
-- sem_int = ["vad menar du med"];
|
||||
|
||||
und_pos = "okej.";
|
||||
und_neg = ["jag förstår inte vad du menar."];
|
||||
und_int = ["är det korrekt?"]; -- följer yttrandet!!!
|
||||
|
||||
per_pos = ["jag tyckte du sa"]; -- följs av en sträng
|
||||
|
||||
reraise = ["så ,"];
|
||||
reraise_followed = ["så ,"];
|
||||
loadplan = ["låt oss se ."];
|
||||
accomodate = ["jag antar att du menar"];
|
||||
reaccomodate = ["gå tillbaks till"];
|
||||
|
||||
|
||||
-- ICMs
|
||||
-- Moved from General because of differing linearisations user and system.
|
||||
|
||||
per_neg = variants {"ursäkta"; "förlåt" ; ["ursäkta jag hörde inte vad du sa"]};
|
||||
per_int = variants { "ursäkta" ; ["vad sa du"] };
|
||||
|
||||
acc_pos = "okej";
|
||||
acc_neg = ["ledsen jag kan inte svara på frågor om"];
|
||||
acc_neg_alone = "ledsen";
|
||||
|
||||
status_done = ["lyckades med att"];
|
||||
status_initiated = ["började med att"];
|
||||
status_pending = ["avvaktar med att"];
|
||||
status_failed = ["misslyckades med att"];
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -1,27 +0,0 @@
|
||||
-- general grammar
|
||||
|
||||
abstract userCore = sharedCore ** {
|
||||
|
||||
cat
|
||||
-- A Dialogue Move that consists of a Request and arguments.
|
||||
CompoundedRequest;
|
||||
CompoundedAsk;
|
||||
AnswerList Task;
|
||||
|
||||
|
||||
fun
|
||||
|
||||
makeAnswerListS : (t : Task) -> AnswerList t -> DMove;
|
||||
|
||||
makeCompoundedRequest : CompoundedRequest -> DMove;
|
||||
makeNegCompoundedRequest : CompoundedRequest -> DMove;
|
||||
makeCompoundedAsk : CompoundedAsk -> DMove;
|
||||
|
||||
|
||||
requestCompounded : (t : Task) -> Action t -> Answer t -> CompoundedRequest ;
|
||||
requestCompoundedMulti : (t : Task) -> Action t -> AnswerList t -> CompoundedRequest;
|
||||
|
||||
makeAskMove : (t : Task) -> Ask t -> Answer t -> CompoundedAsk;
|
||||
|
||||
|
||||
}
|
||||
@@ -1,93 +0,0 @@
|
||||
concrete userCoreEng of userCore = sharedCoreEng ** open GenResEng in {
|
||||
|
||||
flags conversion=finite;
|
||||
|
||||
|
||||
lin
|
||||
|
||||
-- Greet
|
||||
makeGreetMove gre = {s = gre.s};
|
||||
|
||||
-- Quit
|
||||
makeQuitMove qui = {s = qui.s};
|
||||
|
||||
-- Answer
|
||||
makeAnswer _ ans = {s = ans.s};
|
||||
makeNegAnswer _ ans = {s = "not" ++ ans.s};
|
||||
makeAnswerMove _ sha = {s = sha.s};
|
||||
makeNegAnswerMove _ sha = {s = sha.s};
|
||||
|
||||
-- Ask
|
||||
singleAsk _ ask = {s = ask.s};
|
||||
makeYesNoAsk _ action = {s = action.s};
|
||||
makeAsk ask = {s = ask.s};
|
||||
|
||||
|
||||
|
||||
|
||||
-- Requests
|
||||
|
||||
|
||||
makeAnswerListS _ alist = {s = alist.s};
|
||||
requestCompounded _ req obj = {s = req.s ++ obj.s};
|
||||
requestCompoundedMulti _ req obj = {s = req.s ++ obj.s };
|
||||
|
||||
makeRequest req = {s = req.s};
|
||||
|
||||
makeCompoundedRequest crq = {s = variants {
|
||||
( (choosePre ! Req) ++ crq.s ++ (choosePost ! Req) );
|
||||
( (choosePre ! Req) ++ crq.s );
|
||||
( crq.s ++ (choosePost ! Req) );
|
||||
( crq.s )
|
||||
}
|
||||
};
|
||||
|
||||
makeNegCompoundedRequest crq = {s = variants {
|
||||
( (choosePre ! ReqNeg) ++ crq.s ++ (choosePost ! Req) );
|
||||
( (choosePre ! ReqNeg) ++ crq.s );
|
||||
( "not" ++ crq.s ++ (choosePost ! Req) );
|
||||
( "not" ++ crq.s )
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
makeRequestMove req = {s = variants {
|
||||
( req.s );
|
||||
( (choosePre ! Req) ++ req.s ++ (choosePost ! Req) );
|
||||
( (choosePre ! Req) ++ req.s );
|
||||
( req.s ++ (choosePost ! Req) )
|
||||
|
||||
}
|
||||
};
|
||||
|
||||
makeNegRequestMove req = {s = variants {
|
||||
( "not" ++ req.s );
|
||||
( (choosePre ! ReqNeg) ++ req.s ++ (choosePost ! Req) );
|
||||
( (choosePre ! ReqNeg) ++ req.s );
|
||||
( "not" ++ req.s ++ (choosePost ! Req) )
|
||||
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
|
||||
-- Asks
|
||||
makeCompoundedAsk ask = {s = ask.s};
|
||||
|
||||
makeAskMove _ ques answer = {s = ques.s ++ answer.s};
|
||||
|
||||
pattern
|
||||
-- ICMs
|
||||
-- Moved from General because of differing linearisations for user and system.
|
||||
|
||||
per_neg = variants {"what" ; "pardon"; ["pardon i did not hear what you said"]};
|
||||
per_int = variants { "pardon" ; ["what did you say"] };
|
||||
|
||||
acc_pos = variants { "okay" ; "ok" ; "sure" ; "yup" ; "right" };
|
||||
acc_neg = ["i do not know"];
|
||||
acc_neg_alone = ["i do not know"];
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -1,22 +0,0 @@
|
||||
concrete userCorePro of userCore = sharedCorePro ** {
|
||||
|
||||
flags lexer=code ; unlexer=concat ;
|
||||
flags conversion=finite;
|
||||
|
||||
|
||||
lin
|
||||
makeAnswerListS _ alist = {s = alist.s};
|
||||
|
||||
makeCompoundedRequest crq = {s = crq.s};
|
||||
makeNegCompoundedRequest crq = { s = "~" ++ crq.s};
|
||||
makeCompoundedAsk ask = {s = ask.s};
|
||||
|
||||
|
||||
requestCompounded _ req obj = {s = "request(" ++ req.s ++ ")," ++ obj.s };
|
||||
requestCompoundedMulti _ req obj = {s = "request(" ++ req.s ++ ")," ++ obj.s };
|
||||
|
||||
makeAskMove _ ques answer = {s = "ask" ++ "(" ++ "X" ++ "^" ++ ques.s ++
|
||||
"(" ++ "X" ++ ")" ++ ")," ++ answer.s};
|
||||
|
||||
}
|
||||
|
||||
@@ -1,98 +0,0 @@
|
||||
concrete userCoreSwe of userCore = sharedCoreSwe ** open GenResSwe in {
|
||||
|
||||
flags conversion=finite;
|
||||
|
||||
|
||||
lin
|
||||
|
||||
-- Greet
|
||||
makeGreetMove gre = {s = gre.s};
|
||||
|
||||
-- Quit
|
||||
makeQuitMove qui = {s = qui.s};
|
||||
|
||||
-- Answer
|
||||
makeAnswer _ ans = {s = ans.s};
|
||||
makeNegAnswer _ ans = {s = "inte" ++ ans.s};
|
||||
makeAnswerMove _ sha = {s = sha.s};
|
||||
makeNegAnswerMove _ sha = {s = sha.s};
|
||||
|
||||
-- Ask
|
||||
singleAsk _ ask = {s = ask.s};
|
||||
makeYesNoAsk _ action = {s = action.s};
|
||||
makeAsk ask = {s = ask.s };
|
||||
|
||||
|
||||
-- Request
|
||||
|
||||
-- makeRequestMove moved to System and User respectively
|
||||
-- because of differing linearizations
|
||||
|
||||
makeRequest req = {s = req.s};
|
||||
|
||||
|
||||
|
||||
-- Requests
|
||||
|
||||
|
||||
makeAnswerListS _ alist = {s = alist.s};
|
||||
requestCompounded _ req obj = {s = req.s ++ obj.s};
|
||||
requestCompoundedMulti _ req obj = {s = req.s ++ obj.s };
|
||||
|
||||
|
||||
makeRequestMove req = {s = variants {
|
||||
( req.s );
|
||||
( (choosePre ! Req) ++ req.s ++ (choosePost ! Req) );
|
||||
( (choosePre ! Req) ++ req.s );
|
||||
( req.s ++ (choosePost ! Req) )
|
||||
|
||||
}
|
||||
};
|
||||
|
||||
makeNegCompoundedRequest crq = {s = variants {
|
||||
( (choosePre ! ReqNeg) ++ crq.s ++ (choosePost ! Req) );
|
||||
( (choosePre ! ReqNeg) ++ crq.s );
|
||||
( "inte" ++ crq.s ++ (choosePost ! Req) );
|
||||
( "inte" ++ crq.s )
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
|
||||
makeCompoundedRequest crq = {s = variants {
|
||||
( (choosePre ! Req) ++ crq.s ++ (choosePost ! Req) );
|
||||
( (choosePre ! Req) ++ crq.s );
|
||||
( crq.s ++ (choosePost ! Req) );
|
||||
( crq.s )
|
||||
}
|
||||
};
|
||||
|
||||
makeNegRequestMove req = {s = variants {
|
||||
( "inte" ++ req.s );
|
||||
( (choosePre ! ReqNeg) ++ req.s ++ (choosePost ! Req) );
|
||||
( (choosePre ! ReqNeg) ++ req.s );
|
||||
( "inte" ++ req.s ++ (choosePost ! Req) )
|
||||
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
-- Asks
|
||||
makeCompoundedAsk ask = {s = ask.s};
|
||||
|
||||
makeAskMove _ ques answer = {s = ques.s ++ answer.s};
|
||||
|
||||
pattern
|
||||
-- ICMs
|
||||
-- Moved from General because of differing linearisations for user and system.
|
||||
|
||||
per_neg = variants {"va" ; "ursäkta"; "förlåt" ; ["ursäkta jag hörde inte vad du sa"]};
|
||||
per_int = variants { "ursäkta" ; ["vad sa du"] };
|
||||
|
||||
acc_pos = variants { "okej" ; "ok" ; "visst" ; "japp" ; "jaha" };
|
||||
acc_neg = ["vet inte"];
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -1,5 +0,0 @@
|
||||
--# -path=.:../../Resource/Media:../../Resource/Time:
|
||||
|
||||
abstract DB = TVStations, Time, Weekday ** {
|
||||
|
||||
}
|
||||
@@ -1,5 +0,0 @@
|
||||
--# -path=.:../../Resource/Media:../../Resource/Time:
|
||||
|
||||
concrete DBEng of DB = TVStationsEng, TimeEng, WeekdayEng ** {
|
||||
|
||||
}
|
||||
@@ -1,5 +0,0 @@
|
||||
--# -path=.:../../Resource/Media:../../Resource/Time:
|
||||
|
||||
concrete DBPro of DB = TVStationsPro, TimeProlog, WeekdayProlog ** {
|
||||
|
||||
}
|
||||
@@ -1,5 +0,0 @@
|
||||
--# -path=.:../../Resource/Media:../../Resource/Time:
|
||||
|
||||
concrete DBSwe of DB = TVStationsSwe, TimeSwe, WeekdaySwe ** {
|
||||
|
||||
}
|
||||
@@ -1,64 +0,0 @@
|
||||
--# -path=.:../:../../../Resource/Time:../Shared:../../../Core:../../../Core/Shared:
|
||||
|
||||
abstract sharedDomain = sharedCore, DB, Time, Weekday ** {
|
||||
|
||||
fun
|
||||
|
||||
-- ANSWERS
|
||||
|
||||
--makeAddLocAnswer : Location -> Proposition addTask;
|
||||
--makeRemLocAnswer : Location -> Proposition removeTask;
|
||||
|
||||
makeAddEventAnswer : Event -> Proposition addTask;
|
||||
makeRemEventAnswer : Event -> Proposition removeTask;
|
||||
makeCheckupAnswer : Event -> Proposition checkupTask;
|
||||
makeCheckTimeAnswer : Event -> Proposition checkTimeTask;
|
||||
makeAddInfoAnswer : Event -> Proposition addInfoTask;
|
||||
|
||||
makeAddEventTimeAnswer : Time -> Proposition addTask;
|
||||
makeRemEventTimeAnswer : Time -> Proposition removeTask;
|
||||
makeCheckupTimeAnswer : Time -> Proposition checkupTask;
|
||||
makeCheckTimeTimeAnswer : Time -> Proposition checkTimeTask;
|
||||
makeAddInfoTimeAnswer : Time -> Proposition addInfoTask;
|
||||
|
||||
makeAddEventDayAnswer : Weekday -> Proposition addTask;
|
||||
makeRemEventDayAnswer : Weekday -> Proposition removeTask;
|
||||
makeCheckupDayAnswer : Weekday -> Proposition checkupTask;
|
||||
makeCheckTimeDayAnswer : Weekday -> Proposition checkTimeTask;
|
||||
makeAddInfoDayAnswer : Weekday -> Proposition addInfoTask;
|
||||
|
||||
makeCheckAnswer : Location -> Proposition checkupTask;
|
||||
makeAddInfoLocAnswer : Location -> Proposition addInfoTask;
|
||||
makeCheckTimeLocAnswer : Location -> Proposition checkTimeTask;
|
||||
|
||||
|
||||
|
||||
-- LEXICON
|
||||
|
||||
addTask : Task;
|
||||
removeTask : Task;
|
||||
changeTask : Task;
|
||||
addInfoTask : Task;
|
||||
checkupTask : Task; -- "har jag"
|
||||
checkTimeTask : Task;
|
||||
|
||||
addEntry : Action addTask; -- "lägga till", "anteckna", "göra en anteckning", "boka", "boka in"
|
||||
removeEntry : Action removeTask; -- "ta bort", "radera", "ta bort en anteckning", "ta bort anteckningen"
|
||||
changeEntry : Action changeTask; -- "ändra anteckningen" - "request(change_info)"
|
||||
augmentEntry : Action addInfoTask; -- "lägga till mer information" - "request(more_info)
|
||||
checkupEntry : Action checkTimeTask;
|
||||
|
||||
checkup : Ask checkupTask; -- "vad har jag"
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -1,148 +0,0 @@
|
||||
--# -path=.:../:../Artist:../Numbers
|
||||
|
||||
|
||||
concrete sharedDomainEng of sharedDomain = sharedCoreEng, numbersEng, orderNumEng, englishDBEng **
|
||||
open SpecResEng in {
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
lin
|
||||
-- ANSWERS
|
||||
answerSongPlay song = {s = variants {
|
||||
( song.s );
|
||||
( (itemForm ! Song) ++ song.s )
|
||||
}
|
||||
};
|
||||
answerSongAdd song = {s = variants {
|
||||
( song.s );
|
||||
( (itemForm ! Song) ++ song.s )
|
||||
}
|
||||
};
|
||||
answerSongRemove song = {s = variants {
|
||||
( song.s );
|
||||
( (itemForm ! Song) ++ song.s )
|
||||
}
|
||||
};
|
||||
questionSong song = {s = variants {
|
||||
( song.s );
|
||||
( (itemForm ! Song) ++ song.s )
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
|
||||
answerArtistPlay artist = {s = variants {
|
||||
( artist.s );
|
||||
( (itemForm ! Artist) ++ artist.s )
|
||||
}
|
||||
};
|
||||
answerArtistAdd artist = {s = variants {
|
||||
( artist.s );
|
||||
( (itemForm ! Artist) ++ artist.s )
|
||||
}
|
||||
};
|
||||
answerArtistRemove artist = {s = variants {
|
||||
( artist.s );
|
||||
( (itemForm ! Artist) ++ artist.s )
|
||||
}
|
||||
};
|
||||
questionArtist artist = { s = variants {
|
||||
( artist.s );
|
||||
( (itemForm ! Artist) ++ artist.s )
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
|
||||
answerStationPlay station = {s = variants {
|
||||
( station.s);
|
||||
( ["the station"] ++ station.s)
|
||||
}
|
||||
};
|
||||
answerStationAdd station = {s = variants {
|
||||
( station.s);
|
||||
( ["the station"] ++ station.s)
|
||||
}
|
||||
};
|
||||
answerStationRemove station = {s = variants {
|
||||
( station.s);
|
||||
( ["the station"] ++ station.s)
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
|
||||
-- LIST RELATED ANSWERS
|
||||
|
||||
-- nummer fem
|
||||
-- fem
|
||||
answerNumberInListPlay numb = {s = variants {
|
||||
( (listForm ! Numeric) ++ numb.s );
|
||||
( numb.s )
|
||||
}
|
||||
};
|
||||
|
||||
answerNumberInListRemove numb = {s = variants {
|
||||
( (listForm ! Numeric) ++ numb.s );
|
||||
( numb.s )
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
-- den femte låten
|
||||
-- den femte
|
||||
answerOrderInListPlay ordNum =
|
||||
{s = variants {
|
||||
("the" ++ ordNum.s ++ (itemForm ! Post));
|
||||
("the" ++ ordNum.s)
|
||||
}
|
||||
};
|
||||
answerOrderInListRemove ordNum =
|
||||
{s = variants {
|
||||
("the" ++ ordNum.s ++ (itemForm ! Post));
|
||||
("the" ++ ordNum.s)
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
-- LEXICON
|
||||
|
||||
pattern
|
||||
|
||||
play_spec = (variants {["play"] ; ["listen to"] ; "hear"});
|
||||
play_spec_alone = variants {["play a specific"] ; ["play a specific song"] ; ["listen to a specific song"] ; ["hear a specific song"]};
|
||||
play = (variants {["start from the beginning"] ; ["play"] ; ["start"]});
|
||||
stop = (variants {["stop"]});
|
||||
pause = ["pause"];
|
||||
resume = (variants {["resume"] ; ["resume playing"]});
|
||||
|
||||
next = "next";
|
||||
previous = "previous";
|
||||
|
||||
raise_volume = ["raise the volume"] ;
|
||||
lower_volume = ["lower the volume"];
|
||||
|
||||
shift = "shift" ++ variants{ ["the balance"] ; ""};
|
||||
right = variants{"" ; ["to the"]} ++ "right";
|
||||
left = variants{"" ; ["to the"]} ++ "left";
|
||||
center = variants{"" ; ["to the"]} ++ "middle";
|
||||
|
||||
show_list = ["show the list"];
|
||||
|
||||
add = ["add"];
|
||||
remove = ["remove"];
|
||||
|
||||
handle_list = ["manage the playlist"];
|
||||
handle_player = ["talk to the player"];
|
||||
handle_stations = ["choose a station"];
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -1,77 +0,0 @@
|
||||
-- SWEDISH VERSION, UNCOMMENT AS NEEDED
|
||||
--# -path=.:../:../DBase/Swedish:../DBase:../Shared:../System:../Numbers
|
||||
concrete sharedDomainPro of sharedDomain = sharedCorePro, numbersEng, orderNumEng, swedishDBPro ** {
|
||||
|
||||
-- ENGLISH VERSION, UNCOMMENT AS NEEDED
|
||||
-- --# -path=.:../:../DBase/English:../DBase:../Shared:../System:../Numbers
|
||||
|
||||
|
||||
-- concrete sharedDomainPro of sharedDomain = sharedCorePro, numbersEng, orderNumEng, englishDBPro ** {
|
||||
|
||||
flags lexer=code ; unlexer=code ;
|
||||
|
||||
lin
|
||||
|
||||
-- ANSWERS
|
||||
|
||||
answerSongPlay song = { s = "item" ++ "(" ++ song.s ++ ")"};
|
||||
answerSongAdd song = { s = "item" ++ "(" ++ song.s ++ ")"};
|
||||
answerSongRemove song = { s = "item" ++ "(" ++ song.s ++ ")"};
|
||||
questionSong song = { s = "item" ++ "(" ++ song.s ++ ")"};
|
||||
|
||||
|
||||
answerArtistPlay artist = { s = "group" ++ "(" ++ artist.s ++ ")"};
|
||||
answerArtistAdd artist = { s = "group" ++ "(" ++ artist.s ++ ")"};
|
||||
answerArtistRemove artist = { s = "group" ++ "(" ++ artist.s ++ ")"};
|
||||
questionArtist artist = {s = "group" ++ "(" ++ artist.s ++ ")"};
|
||||
|
||||
|
||||
answerStationPlay station = { s = "station" ++ "(" ++ station.s ++ ")"};
|
||||
answerStationAdd station = { s = "station" ++ "(" ++ station.s ++ ")"};
|
||||
answerStationRemove station = { s = "station" ++ "(" ++ station.s ++ ")"};
|
||||
|
||||
|
||||
answerNumberInListPlay numb = {s = "index" ++ "(" ++ "[" ++ numb.s ++ "]" ++ ")"};
|
||||
answerNumberInListRemove numb = {s = "index" ++ "(" ++ "[" ++ numb.s ++ "]" ++ ")"};
|
||||
|
||||
answerOrderInListPlay ordNum = {s = "index" ++ "(" ++ "[" ++ ordNum.s ++ "]" ++ ")"};
|
||||
answerOrderInListRemove ordNum = {s = "index" ++ "(" ++ "[" ++ ordNum.s ++ "]" ++ ")"};
|
||||
|
||||
|
||||
|
||||
-- LEXICON
|
||||
pattern
|
||||
|
||||
play_spec = "start_specific";
|
||||
play_spec_alone = "start_specific";
|
||||
play = "start";
|
||||
stop = "stop";
|
||||
pause = "pause";
|
||||
resume = "resume";
|
||||
|
||||
next = "next";
|
||||
previous = "previous";
|
||||
|
||||
raise_volume = "vol_up" ;
|
||||
lower_volume = "vol_down" ;
|
||||
|
||||
shift = "set_balance";
|
||||
right = "1.0";
|
||||
left = "-1.0";
|
||||
center = "0.0";
|
||||
|
||||
show_list = "show_list";
|
||||
|
||||
add = "playlist_add";
|
||||
remove = "playlist_del";
|
||||
|
||||
handle_list = "handle_playlist";
|
||||
handle_player = "handle_player";
|
||||
handle_stations = "handle_stations";
|
||||
|
||||
askArtist = "songs_by_artist";
|
||||
askSong = "artists_song";
|
||||
|
||||
askCurrent = "current_song";
|
||||
|
||||
}
|
||||
@@ -1,42 +0,0 @@
|
||||
--# -path=.:../:../../../Resource/Time:../Shared:../../../Core:../../../Core/Shared:
|
||||
|
||||
concrete sharedDomainSwe of sharedDomain = sharedCoreSwe, DBSwe, TimeSwe, WeekdaySwe ** open SpecResSwe in{
|
||||
|
||||
lin
|
||||
-- ANSWERS
|
||||
|
||||
|
||||
makeAddEventAnswer event = {s = event.s};
|
||||
makeRemEventAnswer event = {s = event.s};
|
||||
makeCheckupAnswer event = {s = "om" ++ event.s};
|
||||
makeCheckTimeAnswer event = {s = event.s};
|
||||
makeAddInfoAnswer event = {s = "om" ++ event.s};
|
||||
|
||||
makeAddEventTimeAnswer time = {s = time.s};
|
||||
makeRemEventTimeAnswer time = {s = time.s};
|
||||
makeCheckupTimeAnswer time = {s = time.s};
|
||||
makeCheckTimeTimeAnswer time = {s = time.s};
|
||||
makeAddInfoTimeAnswer time = {s = time.s};
|
||||
|
||||
makeAddEventDayAnswer weekday = {s = "på" ++ weekday.s};
|
||||
makeRemEventDayAnswer weekday = {s = "på" ++ weekday.s};
|
||||
makeCheckupDayAnswer weekday = {s = "på" ++ weekday.s};
|
||||
makeCheckTimeDayAnswer weekday = {s = "på" ++ weekday.s};
|
||||
makeAddInfoDayAnswer weekday = {s = "på" ++ weekday.s};
|
||||
|
||||
makeCheckAnswer location = {s = location.s};
|
||||
makeAddInfoLocAnswer location = {s = "om" ++ location.s};
|
||||
makeCheckTimeLocAnswer location = {s = location.s};
|
||||
|
||||
-- LEXICON
|
||||
|
||||
pattern
|
||||
addEntry = varaints {["lägga till"] ; ["anteckna"] ; ["göra en anteckning om"]};
|
||||
removeEntry = variants{ ["ta bort"] ; ["radera en anteckning"]};
|
||||
changeEntry = ["ändra en anteckning om"];
|
||||
augmentEntry = ["lägga till mer information"];
|
||||
checkupEntry = ["kolla tiden för"];
|
||||
|
||||
checkup = ["vad har jag uppskrivet"];
|
||||
|
||||
}
|
||||
@@ -1,53 +0,0 @@
|
||||
-- SWEDISH VERSION, UNCOMMENT AS NEEDED
|
||||
--# -path=.:../:../DBase/Swedish:../DBase:../Shared:../System:../Numbers
|
||||
|
||||
-- ENGLISH VERSION, UNCOMMENT AS NEEDED
|
||||
-- --# -path=.:../:../DBase/English:../DBase:../Shared:../System:../Numbers
|
||||
|
||||
abstract systemDomain = sharedDomain, systemCore ** {
|
||||
|
||||
|
||||
cat
|
||||
|
||||
Proposition;
|
||||
|
||||
|
||||
fun
|
||||
|
||||
-- PROPOSITIONS.
|
||||
--
|
||||
|
||||
songProp : Song -> Proposition;
|
||||
itemProp : Song -> Proposition;
|
||||
currentSongProp : Song -> Proposition;
|
||||
|
||||
whatToPlayPropNum : Number -> Proposition;
|
||||
whatToPlayPropOrd : Number -> Proposition;
|
||||
|
||||
itemRemPropNum : Number -> Proposition;
|
||||
itemRemPropOrd : Number -> Proposition;
|
||||
|
||||
groupToAddProp : Artist -> Proposition;
|
||||
artistProp : Artist -> Proposition;
|
||||
groupProp : Artist -> Proposition;
|
||||
songArtistProp : Artist -> Proposition;
|
||||
|
||||
albumProp : Album -> Proposition;
|
||||
|
||||
artistsSongProp : Artist -> Proposition;
|
||||
artistsAlbumProp : Artist -> Proposition;
|
||||
|
||||
albumArtistProp : Album -> Proposition;
|
||||
|
||||
songsArtistProp : Song -> Proposition;
|
||||
|
||||
stationProp : Station -> Proposition;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -1,74 +0,0 @@
|
||||
--# -path=.:../:../DBase/English:../DBase:../Shared:../System:../Numbers
|
||||
|
||||
|
||||
concrete systemDomainEng of systemDomain = sharedDomainEng, systemCoreEng ** {
|
||||
|
||||
|
||||
lin
|
||||
|
||||
-- PROPOSITIONS
|
||||
|
||||
songProp song = { s = song.s };
|
||||
itemProp song = { s = song.s };
|
||||
currentSongProp song = { s = song.s };
|
||||
|
||||
whatToPlayPropNum number = { s = number.s };
|
||||
whatToPlayPropOrd order = { s = order.s };
|
||||
|
||||
itemRemPropNum number = { s = number.s };
|
||||
itemRemPropOrd order = { s = order.s };
|
||||
|
||||
groupToAddProp artist = { s = artist.s };
|
||||
artistProp artist = { s = artist.s};
|
||||
groupProp artist = { s = artist.s };
|
||||
songArtistProp artist = { s = artist.s };
|
||||
|
||||
albumProp album = { s = album.s };
|
||||
|
||||
artistsSongProp artist = { s = artist.s };
|
||||
artistsAlbumProp artist = { s = artist.s };
|
||||
|
||||
albumArtistProp album = { s = album.s };
|
||||
|
||||
songsArtistProp song = { s = song.s };
|
||||
|
||||
stationProp station = { s = station.s };
|
||||
|
||||
-- sort_restr( song(X) ):- sem_sort(X,item).
|
||||
-- sort_restr( item(X) ):- sem_sort(X,item).
|
||||
-- sort_restr( current_song(X) ):- sem_sort(X,song).
|
||||
-- sort_restr( what_to_play(X) ):- sem_sort(X,index).
|
||||
-- sort_restr( itemRem(X) ):- sem_sort(X,index).
|
||||
-- sort_restr( itemRem(X) ):- sem_sort(X,index).
|
||||
-- sort_restr( groupToAdd(X) ):- group( X ).
|
||||
-- sort_restr( artist(X) ):- group( X ).
|
||||
-- sort_restr( group(X) ):- group( X ).
|
||||
-- sort_restr( song_artist(X) ):- group( X ).
|
||||
-- sort_restr( album(X) ):- album( X ).
|
||||
-- sort_restr( artists_song(X) ):- group_atom( X ).
|
||||
-- sort_restr( artists_album(X) ):- group_atom( X ).
|
||||
-- sort_restr( albums_by_artist(X) ):- album_atom( X ).
|
||||
-- sort_restr( songs_by_artist(X) ):- song_atom( X ).
|
||||
-- sort_restr( station(X) ):- radio_station( X ).
|
||||
-- sort_restr( year(X) ):- sem_sort( X, year ).
|
||||
-- sort_restr( path(X) ):- atomic( X ).%,format("hallå: ~w\n",[X]).
|
||||
-- %sort_restr( X^path(X) ):- atomic( X ),format("hallå: ~w\n",[X]).
|
||||
-- sort_restr( not path(X) ):- format("hallå: ~w\n",[X]), atomic( X ).
|
||||
-- sort_restr( fail(Path^path(Path),no_matches) ).
|
||||
|
||||
|
||||
pattern
|
||||
|
||||
|
||||
-- Because of differing linearisations in User and System usage these functions are not linearized in Shared.
|
||||
|
||||
askArtist = "songs" ;
|
||||
|
||||
|
||||
askSong = "artist" ;
|
||||
askCurrent = ["the current song"];
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -1,65 +0,0 @@
|
||||
-- SWEDISH VERSION, UNCOMMENT AS NEEDED
|
||||
--# -path=.:../:../DBase/Swedish:../DBase:../Shared:../System:../Numbers
|
||||
|
||||
-- ENGLISH VERSION, UNCOMMENT AS NEEDED
|
||||
-- --# -path=.:../:../DBase/English:../DBase:../Shared:../System:../Numbers
|
||||
|
||||
|
||||
concrete systemDomainPro of systemDomain = sharedDomainPro, systemCorePro ** {
|
||||
|
||||
|
||||
lin
|
||||
-- PROPOSITIONS
|
||||
|
||||
-- Ok hur ska jag göra med propositions tro? Och vad menar David med song_to_add(Song).
|
||||
-- Hur blir de till? Skulle man kunna göra som nedan?
|
||||
|
||||
songProp song = { s = "song" ++ "(" ++ song.s ++ ")" };
|
||||
itemProp song = { s = "item" ++ "(" ++ song.s ++ ")" };
|
||||
currentSongProp song = { s = "current_song" ++ "(" ++ song.s ++ ")" };
|
||||
|
||||
whatToPlayPropNum number = { s = "what_to_play" ++ "(" ++ number.s ++ ")" };
|
||||
whatToPlayPropOrd order = { s = "what_to_play" ++ "(" ++ order.s ++ ")" };
|
||||
|
||||
itemRemPropNum number = { s = "itemRem" ++ "(" ++ number.s ++ ")" };
|
||||
itemRemPropOrd order = { s = "itemRem" ++ "(" ++ order.s ++ ")" };
|
||||
|
||||
groupToAddProp artist = { s = "groupToAdd" ++ "(" ++ artist.s ++ ")" };
|
||||
artistProp artist = { s = "artist" ++ "(" ++ artist.s ++ ")"};
|
||||
groupProp artist = { s = "group" ++ "(" ++ artist.s ++ ")" };
|
||||
songArtistProp artist = { s = "song_artist" ++ "(" ++ artist.s ++ ")" };
|
||||
|
||||
albumProp album = { s = "album" ++ "(" ++ album.s ++ ")" };
|
||||
|
||||
artistsSongProp artist = { s = "artist_song" ++ "(" ++ artist.s ++ ")" };
|
||||
artistsAlbumProp artist = { s = "artists_album" ++ "(" ++ artist.s ++ ")" };
|
||||
|
||||
albumArtistProp album = { s = "albums_by_artist" ++ "(" ++ album.s ++ ")" };
|
||||
|
||||
songsArtistProp song = { s = "songs_by_artist" ++ "(" ++ song.s ++ ")" };
|
||||
|
||||
stationProp station = { s = "station" ++ "(" ++ station.s ++ ")" };
|
||||
|
||||
-- sort_restr( song(X) ):- sem_sort(X,item).
|
||||
-- sort_restr( item(X) ):- sem_sort(X,item).
|
||||
-- sort_restr( current_song(X) ):- sem_sort(X,song).
|
||||
-- sort_restr( what_to_play(X) ):- sem_sort(X,index).
|
||||
-- sort_restr( itemRem(X) ):- sem_sort(X,index).
|
||||
-- sort_restr( itemRem(X) ):- sem_sort(X,index).
|
||||
-- sort_restr( groupToAdd(X) ):- group( X ).
|
||||
-- sort_restr( artist(X) ):- group( X ).
|
||||
-- sort_restr( group(X) ):- group( X ).
|
||||
-- sort_restr( song_artist(X) ):- group( X ).
|
||||
-- sort_restr( album(X) ):- album( X ).
|
||||
-- sort_restr( artists_song(X) ):- group_atom( X ).
|
||||
-- sort_restr( artists_album(X) ):- group_atom( X ).
|
||||
-- sort_restr( albums_by_artist(X) ):- album_atom( X ).
|
||||
-- sort_restr( songs_by_artist(X) ):- song_atom( X ).
|
||||
-- sort_restr( station(X) ):- radio_station( X ).
|
||||
-- sort_restr( year(X) ):- sem_sort( X, year ).
|
||||
-- sort_restr( path(X) ):- atomic( X ).%,format("hallå: ~w\n",[X]).
|
||||
-- %sort_restr( X^path(X) ):- atomic( X ),format("hallå: ~w\n",[X]).
|
||||
-- sort_restr( not path(X) ):- format("hallå: ~w\n",[X]), atomic( X ).
|
||||
-- sort_restr( fail(Path^path(Path),no_matches) ).
|
||||
|
||||
}
|
||||
@@ -1,74 +0,0 @@
|
||||
--# -path=.:../:../DBase/Swedish:../DBase:../Shared:../System:../Numbers
|
||||
|
||||
|
||||
concrete systemDomainSwe of systemDomain = sharedDomainSwe, systemCoreSwe ** {
|
||||
|
||||
|
||||
lin
|
||||
|
||||
-- PROPOSITIONS
|
||||
|
||||
songProp song = { s = song.s };
|
||||
itemProp song = { s = song.s };
|
||||
currentSongProp song = { s = song.s };
|
||||
|
||||
whatToPlayPropNum number = { s = number.s };
|
||||
whatToPlayPropOrd order = { s = order.s };
|
||||
|
||||
itemRemPropNum number = { s = number.s };
|
||||
itemRemPropOrd order = { s = order.s };
|
||||
|
||||
groupToAddProp artist = { s = artist.s };
|
||||
artistProp artist = { s = artist.s};
|
||||
groupProp artist = { s = artist.s };
|
||||
songArtistProp artist = { s = artist.s };
|
||||
|
||||
albumProp album = { s = album.s };
|
||||
|
||||
artistsSongProp artist = { s = artist.s };
|
||||
artistsAlbumProp artist = { s = artist.s };
|
||||
|
||||
albumArtistProp album = { s = album.s };
|
||||
|
||||
songsArtistProp song = { s = song.s };
|
||||
|
||||
stationProp station = { s = station.s };
|
||||
|
||||
-- sort_restr( song(X) ):- sem_sort(X,item).
|
||||
-- sort_restr( item(X) ):- sem_sort(X,item).
|
||||
-- sort_restr( current_song(X) ):- sem_sort(X,song).
|
||||
-- sort_restr( what_to_play(X) ):- sem_sort(X,index).
|
||||
-- sort_restr( itemRem(X) ):- sem_sort(X,index).
|
||||
-- sort_restr( itemRem(X) ):- sem_sort(X,index).
|
||||
-- sort_restr( groupToAdd(X) ):- group( X ).
|
||||
-- sort_restr( artist(X) ):- group( X ).
|
||||
-- sort_restr( group(X) ):- group( X ).
|
||||
-- sort_restr( song_artist(X) ):- group( X ).
|
||||
-- sort_restr( album(X) ):- album( X ).
|
||||
-- sort_restr( artists_song(X) ):- group_atom( X ).
|
||||
-- sort_restr( artists_album(X) ):- group_atom( X ).
|
||||
-- sort_restr( albums_by_artist(X) ):- album_atom( X ).
|
||||
-- sort_restr( songs_by_artist(X) ):- song_atom( X ).
|
||||
-- sort_restr( station(X) ):- radio_station( X ).
|
||||
-- sort_restr( year(X) ):- sem_sort( X, year ).
|
||||
-- sort_restr( path(X) ):- atomic( X ).%,format("hallå: ~w\n",[X]).
|
||||
-- %sort_restr( X^path(X) ):- atomic( X ),format("hallå: ~w\n",[X]).
|
||||
-- sort_restr( not path(X) ):- format("hallå: ~w\n",[X]), atomic( X ).
|
||||
-- sort_restr( fail(Path^path(Path),no_matches) ).
|
||||
|
||||
|
||||
pattern
|
||||
|
||||
|
||||
-- Because of differing linearisations in User and System usage these functions are not linearized in Shared.
|
||||
|
||||
askArtist = "låtar" ;
|
||||
|
||||
|
||||
askSong = "artister" ;
|
||||
askCurrent = ["låten som spelas nu"];
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -1,13 +0,0 @@
|
||||
--# -path=.:../:../../../Resource/Time:../../../Resource/Media:../Shared:../../../Core:../../../Core/Shared:../../../Core/User
|
||||
|
||||
abstract userDomain = userCore, sharedDomain ** {
|
||||
|
||||
|
||||
fun
|
||||
-- CompoundedAnswers
|
||||
|
||||
answerEventLocAdd : Event -> Location -> AnswerList addTask;
|
||||
answerEventLocRem : Event -> Location -> AnswerList removeTask;
|
||||
|
||||
answerEventLocTimeDay : Event -> Location -> Time -> Weekday -> AnswerList removeTask;
|
||||
}
|
||||
@@ -1,25 +0,0 @@
|
||||
--# -path=.:../:../DBase/English:../DBase:../Numbers:../Shared
|
||||
|
||||
concrete userDomainEng of userDomain = userCoreEng, sharedDomainEng ** {
|
||||
|
||||
lin
|
||||
|
||||
-- CompoundedAnswers
|
||||
answerSongArtistPlay song artist = {s = variants {(song.s ++ "with" ++ artist.s)
|
||||
; (artist.s ++ "with" ++ song.s)} };
|
||||
|
||||
answerSongArtistAdd song artist = {s = variants {(song.s ++ "with" ++ artist.s)
|
||||
; (artist.s ++ "with" ++ song.s)} };
|
||||
|
||||
|
||||
pattern
|
||||
askArtist = variants { ["what do i have"] ; ["what songs do i have"] ; ["do i have anything"]}
|
||||
++ variants {"with" ; "by"};
|
||||
|
||||
|
||||
askSong = ["who"] ++ variants {"made"; "wrote"};
|
||||
|
||||
askCurrent = ["what"] ++ variants {["song is this"] ; ["is this called"]};
|
||||
|
||||
|
||||
}
|
||||
@@ -1,18 +0,0 @@
|
||||
-- SWEDISH VERSION, UNCOMMENT AS NEEDED
|
||||
--# -path=.:../:../DBase/Swedish:../DBase:../Numbers:../Shared
|
||||
|
||||
-- ENGLISH VERSION, UNCOMMENT AS NEEDED
|
||||
-- --# -path=.:../:../DBase/English/:../DBase/:../Numbers:../Shared
|
||||
|
||||
|
||||
concrete userDomainPro of userDomain = userCorePro, sharedDomainPro ** {
|
||||
|
||||
lin
|
||||
answerSongArtistPlay song artist = { s = "answer(item(" ++ song.s ++ ")," ++
|
||||
"answer(group(" ++ artist.s ++ ")"};
|
||||
answerSongArtistAdd song artist = { s = "answer(item(" ++ song.s ++ ")," ++
|
||||
"answer(group(" ++ artist.s ++ ")"};
|
||||
|
||||
|
||||
|
||||
}
|
||||
@@ -1,24 +0,0 @@
|
||||
--# -path=.:../:../../:../../../Resource/Time:../../../Resource/Media/:../Shared:../../../Core:../../../Core/Shared:../../../Core/User
|
||||
|
||||
concrete userDomainSwe of userDomain = userCoreSwe, sharedDomainSwe ** {
|
||||
|
||||
lin
|
||||
|
||||
-- CompoundedAnswers
|
||||
answerEventLocAdd event loc = {s = event.s ++ loc.s };
|
||||
|
||||
answerEventLocRem event loc = {s = event.s ++ loc.s };
|
||||
|
||||
answerEventLocTimeDay event loc time day = {s = variants {
|
||||
(event.s ++ loc.s ++ time.s ++ "på" ++ day.s);
|
||||
(event.s ++ loc.s ++ "på" ++ day.s ++ time.s);
|
||||
}
|
||||
};
|
||||
|
||||
-- (event.s ++ "på" ++ day.s ++ time.s);
|
||||
-- (loc.s ++ time.s ++ "på" ++ day.s);
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
@@ -1,6 +0,0 @@
|
||||
--# -path=.:../../Resource/Media/English:../../Resource/Media/Swedish:../../../Resource/Numbers/
|
||||
|
||||
abstract DB = SwedishAlbums, SwedishArtists, SwedishRadioStations, SwedishSongs, numbers, orderNum ** {
|
||||
--abstract DB = EnglishAlbums, EnglishArtists, EnglishRadioStations, EnglishSongs, numbers, orderNum ** {
|
||||
|
||||
}
|
||||
@@ -1,7 +0,0 @@
|
||||
--# -path=.:../../Resource/Media/English:../../Resource/Media/Swedish:../../Resource/Numbers/
|
||||
|
||||
concrete DBEng of DB = EnglishAlbumsEng, EnglishArtistsEng,
|
||||
--EnglishSongsEng,
|
||||
EnglishRadioStationsEng, SwedishSongsSwe, numbersEng, orderNumEng ** {
|
||||
|
||||
}
|
||||
@@ -1,6 +0,0 @@
|
||||
--# -path=.:../../Resource/Media/English:../../Resource/Media/Swedish
|
||||
|
||||
--concrete DBPro of DB = EnglishAlbumsPro, EnglishSongsPro, EnglishArtistsPro, EnglishRadioStationsPro, numbersPro, orderNumPro ** {
|
||||
concrete DBPro of DB = SwedishAlbumsPro, SwedishSongsPro, SwedishArtistsPro, SwedishRadioStationsPro, numbersPro, orderNumPro ** {
|
||||
|
||||
}
|
||||
@@ -1,5 +0,0 @@
|
||||
--# -path=.:../../Resource/Media/English:../../Resource/Media/Swedish:../../Resource/Numbers/
|
||||
|
||||
concrete DBSwe of DB = SwedishAlbumsSwe, SwedishArtistsSwe, SwedishSongsSwe, SwedishRadioStationsSwe, numbersSwe, orderNumSwe ** {
|
||||
|
||||
}
|
||||
@@ -1,105 +0,0 @@
|
||||
-- SWEDISH version, uncomment as needed.
|
||||
-- --# -path=.:../:../../:../Shared/:../../../Resource/Media/:../../../Resource/Media/Swedish/:../../../Resource/Numbers/:../../../Core:../../../Core/Shared/
|
||||
-- abstract sharedDomain = sharedCore, numbers, orderNum, swedishDB ** {
|
||||
|
||||
|
||||
-- ENGLISH version, uncomment as needed.
|
||||
--# -path=.:../:../../:../Shared/:../../../Resource/Media/:../../../Resource/Media/English/:../../../Resource/Numbers/:../../../Core:../../../Core/Shared/
|
||||
|
||||
abstract sharedDomain = sharedCore, DB ** {
|
||||
|
||||
fun
|
||||
|
||||
-- ANSWERS
|
||||
|
||||
-- Request Answers
|
||||
|
||||
answerSongPlay : Song -> Proposition playTask;
|
||||
answerSongAdd : Song -> Proposition addTask;
|
||||
answerSongRemove : Song -> Proposition removeTask;
|
||||
|
||||
answerArtistPlay : Artist -> Proposition playTask;
|
||||
answerArtistAdd : Artist -> Proposition addTask;
|
||||
answerArtistRemove : Artist -> Proposition removeTask;
|
||||
|
||||
answerStationPlay : Station -> Proposition playTask;
|
||||
answerStationAdd : Station -> Proposition addTask;
|
||||
answerStationRemove : Station -> Proposition removeTask;
|
||||
|
||||
answerNumberInListPlay : Number -> Proposition playTask;
|
||||
answerNumberInListRemove: Number -> Proposition removeTask;
|
||||
|
||||
answerOrderInListPlay : OrderNumber -> Proposition playTask;
|
||||
answerOrderInListRemove : OrderNumber -> Proposition removeTask;
|
||||
|
||||
|
||||
|
||||
|
||||
-- Ask Answers
|
||||
questionSong : Song -> Proposition songQuestion;
|
||||
questionArtist : Artist -> Proposition artistQuestion;
|
||||
|
||||
-- LEXICON
|
||||
|
||||
playTask : Task;
|
||||
addTask : Task;
|
||||
removeTask : Task;
|
||||
speakerTask : Task;
|
||||
|
||||
artistQuestion : Task;
|
||||
songQuestion : Task;
|
||||
|
||||
|
||||
play_spec : Action playTask;
|
||||
|
||||
play_spec_alone : SingleAction;
|
||||
play : SingleAction;
|
||||
stop : SingleAction;
|
||||
pause : SingleAction;
|
||||
resume : SingleAction;
|
||||
|
||||
next : OrderNumber;
|
||||
previous : OrderNumber;
|
||||
|
||||
raise_volume : SingleAction;
|
||||
lower_volume : SingleAction;
|
||||
|
||||
fastforward : SingleAction;
|
||||
rewind : SingleAction;
|
||||
|
||||
shift : Action speakerTask;
|
||||
right : Proposition speakerTask;
|
||||
left : Proposition speakerTask;
|
||||
center : Proposition speakerTask;
|
||||
|
||||
show_list : SingleAction;
|
||||
|
||||
add : Action addTask;
|
||||
add_alone : SingleAction;
|
||||
remove : Action removeTask;
|
||||
remove_alone : SingleAction;
|
||||
|
||||
remove_all : SingleAction;
|
||||
|
||||
|
||||
handle_list : SingleAction;
|
||||
handle_player : SingleAction;
|
||||
handle_stations : SingleAction;
|
||||
|
||||
askArtist : Ask artistQuestion;
|
||||
askSong : Ask songQuestion;
|
||||
|
||||
askCurrent : SingleAsk;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -1,154 +0,0 @@
|
||||
--# -path=.:../:../../:../Shared/:../../../Resource/Media/:../../../Resource/Media/English/:../../../Resource/Numbers/:../../../Core:../../../Core/Shared/
|
||||
|
||||
concrete sharedDomainEng of sharedDomain = sharedCoreEng, DBEng **
|
||||
open SpecResEng in {
|
||||
|
||||
flags conversion=finite;
|
||||
|
||||
|
||||
|
||||
lin
|
||||
-- ANSWERS
|
||||
answerSongPlay song = {s = variants {
|
||||
( song.s );
|
||||
( (itemForm ! Song) ++ song.s )
|
||||
}
|
||||
};
|
||||
answerSongAdd song = {s = variants {
|
||||
( song.s );
|
||||
( (itemForm ! Song) ++ song.s )
|
||||
}
|
||||
};
|
||||
answerSongRemove song = {s = variants {
|
||||
( song.s );
|
||||
( (itemForm ! Song) ++ song.s )
|
||||
}
|
||||
};
|
||||
questionSong song = {s = variants {
|
||||
( song.s );
|
||||
( (itemForm ! Song) ++ song.s )
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
|
||||
answerArtistPlay artist = {s = variants {
|
||||
( artist.s );
|
||||
( (itemForm ! Artist) ++ artist.s )
|
||||
}
|
||||
};
|
||||
answerArtistAdd artist = {s = variants {
|
||||
( artist.s );
|
||||
( (itemForm ! Artist) ++ artist.s )
|
||||
}
|
||||
};
|
||||
answerArtistRemove artist = {s = variants {
|
||||
( artist.s );
|
||||
( (itemForm ! Artist) ++ artist.s )
|
||||
}
|
||||
};
|
||||
questionArtist artist = { s = variants {
|
||||
( artist.s );
|
||||
( (itemForm ! Artist) ++ artist.s )
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
|
||||
answerStationPlay station = {s = variants {
|
||||
( station.s);
|
||||
( ["the station"] ++ station.s)
|
||||
}
|
||||
};
|
||||
answerStationAdd station = {s = variants {
|
||||
( station.s);
|
||||
( ["the station"] ++ station.s)
|
||||
}
|
||||
};
|
||||
answerStationRemove station = {s = variants {
|
||||
( station.s);
|
||||
( ["the station"] ++ station.s)
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
|
||||
-- LIST RELATED ANSWERS
|
||||
|
||||
-- nummer fem
|
||||
-- fem
|
||||
answerNumberInListPlay numb = {s = variants {
|
||||
( (listForm ! Numeric) ++ numb.s );
|
||||
( numb.s )
|
||||
}
|
||||
};
|
||||
|
||||
answerNumberInListRemove numb = {s = variants {
|
||||
( (listForm ! Numeric) ++ numb.s );
|
||||
( numb.s )
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
-- den femte låten
|
||||
-- den femte
|
||||
answerOrderInListPlay ordNum =
|
||||
{s = variants {
|
||||
("the" ++ ordNum.s ++ (itemForm ! Post));
|
||||
("the" ++ ordNum.s)
|
||||
}
|
||||
};
|
||||
answerOrderInListRemove ordNum =
|
||||
{s = variants {
|
||||
("the" ++ ordNum.s ++ (itemForm ! Post));
|
||||
("the" ++ ordNum.s)
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
-- LEXICON
|
||||
|
||||
pattern
|
||||
|
||||
play_spec = (variants {["play"] ; ["listen to"] ; "hear"});
|
||||
play_spec_alone = variants {["play a specific song"] ; ["play a specific"] ; ["listen to a specific song"] ; ["hear a specific song"]};
|
||||
play = (variants {["start from the beginning"] ; ["play"] ; ["start"]});
|
||||
stop = (variants {["stop"]});
|
||||
pause = ["pause"];
|
||||
resume = (variants {["resume"] ; ["resume playing"]});
|
||||
|
||||
next = "next";
|
||||
previous = "previous";
|
||||
|
||||
raise_volume = ["raise the volume"] ;
|
||||
lower_volume = ["lower the volume"];
|
||||
|
||||
fastforward = ["fast forward"];
|
||||
rewind = "rewind";
|
||||
|
||||
shift = "shift" ++ variants{ ["the balance"] ; ""};
|
||||
right = variants{"" ; ["to the"]} ++ "right";
|
||||
left = variants{"" ; ["to the"]} ++ "left";
|
||||
center = variants{"" ; ["to the"]} ++ "middle";
|
||||
|
||||
show_list = ["show the list"];
|
||||
|
||||
add = ["add"];
|
||||
add_alone = variants {["add a specific song"] ; ["add this"] ; ["add this one"]};
|
||||
remove = ["remove"];
|
||||
remove_alone = variants {["remove"] ; ["renmove this"] ; ["remove this one"]};
|
||||
|
||||
remove_all = ["clear the playlist"];
|
||||
|
||||
handle_list = ["manage the playlist"];
|
||||
handle_player = ["talk to the player"];
|
||||
handle_stations = ["choose a station"];
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -1,87 +0,0 @@
|
||||
-- SWEDISH VERSION, UNCOMMENT AS NEEDED
|
||||
-- --# -path=.:../:../../:../Shared/:../../../Resource/Media/:../../../Resource/Media/Swedish/:../../../Resource/Numbers/:../../../Core:../../../Core/Shared/
|
||||
--concrete sharedDomainPro of sharedDomain = sharedCorePro, numbersEng, orderNumEng, swedishDBPro ** {
|
||||
|
||||
|
||||
-- ENGLISH VERSION, UNCOMMENT AS NEEDED
|
||||
--# -path=.:../:../../:../Shared/:../../../Resource/Media/:../../../Resource/Media/English/:../../../Resource/Numbers/:../../../Core:../../../Core/Shared/
|
||||
|
||||
concrete sharedDomainPro of sharedDomain = sharedCorePro, DBPro ** {
|
||||
|
||||
flags lexer=code ; unlexer=code ;
|
||||
flags conversion=finite;
|
||||
|
||||
lin
|
||||
|
||||
-- ANSWERS
|
||||
|
||||
answerSongPlay song = { s = "item" ++ "(" ++ song.s ++ ")"};
|
||||
answerSongAdd song = { s = "item" ++ "(" ++ song.s ++ ")"};
|
||||
answerSongRemove song = { s = "item" ++ "(" ++ song.s ++ ")"};
|
||||
questionSong song = { s = "item" ++ "(" ++ song.s ++ ")"};
|
||||
|
||||
|
||||
answerArtistPlay artist = { s = "group" ++ "(" ++ artist.s ++ ")"};
|
||||
answerArtistAdd artist = { s = "groupToAdd" ++ "(" ++ artist.s ++ ")"};
|
||||
answerArtistRemove artist = { s = "group" ++ "(" ++ artist.s ++ ")"};
|
||||
questionArtist artist = {s = "group" ++ "(" ++ artist.s ++ ")"};
|
||||
|
||||
|
||||
answerStationPlay station = { s = "station" ++ "(" ++ station.s ++ ")"};
|
||||
answerStationAdd station = { s = "station" ++ "(" ++ station.s ++ ")"};
|
||||
answerStationRemove station = { s = "station" ++ "(" ++ station.s ++ ")"};
|
||||
|
||||
|
||||
answerNumberInListPlay numb = {s = "index" ++ "(" ++ "[" ++ numb.s ++ "]" ++ ")"};
|
||||
answerNumberInListRemove numb = {s = "itemRem" ++ "(" ++ "[" ++ numb.s ++ "]" ++ ")"};
|
||||
|
||||
answerOrderInListPlay ordNum = {s = "index" ++ "(" ++ "[" ++ ordNum.s ++ "]" ++ ")"};
|
||||
answerOrderInListRemove ordNum = {s = "itemRem" ++ "(" ++ "[" ++ ordNum.s ++ "]" ++ ")"};
|
||||
|
||||
|
||||
|
||||
-- LEXICON
|
||||
pattern
|
||||
|
||||
play_spec = "start_specific";
|
||||
play_spec_alone = "start_specific";
|
||||
play = "start";
|
||||
stop = "stop";
|
||||
pause = "pause";
|
||||
resume = "resume";
|
||||
|
||||
next = "next";
|
||||
previous = "previous";
|
||||
|
||||
raise_volume = "vol_up" ;
|
||||
lower_volume = "vol_down" ;
|
||||
|
||||
|
||||
fastforward = "fast_forward";
|
||||
rewind = "rewind";
|
||||
|
||||
|
||||
shift = "set_balance";
|
||||
right = "1.0";
|
||||
left = "-1.0";
|
||||
center = "0.0";
|
||||
|
||||
show_list = "show_list";
|
||||
|
||||
add = "playlist_add";
|
||||
add_alone = "playlist_add";
|
||||
remove = "playlist_del";
|
||||
remove_alone = "playlist_del";
|
||||
|
||||
remove_all = "playlist_clear";
|
||||
|
||||
handle_list = "handle_playlist";
|
||||
handle_player = "handle_player";
|
||||
handle_stations = "handle_stations";
|
||||
|
||||
askArtist = "songs_by_artist";
|
||||
askSong = "artists_song";
|
||||
|
||||
askCurrent = "current_song";
|
||||
|
||||
}
|
||||
@@ -1,170 +0,0 @@
|
||||
--# -path=.:../:../../:../Shared/:../../../Resource/Media/:../../../Resource/Media/Swedish/:../../../Resource/Numbers/:../../../Core:../../../Core/Shared/
|
||||
|
||||
concrete sharedDomainSwe of sharedDomain = sharedCoreSwe, DBSwe ** open SpecResSwe in{
|
||||
|
||||
|
||||
flags conversion=finite;
|
||||
|
||||
|
||||
lin
|
||||
-- ANSWERS
|
||||
answerSongPlay song = {s = variants {
|
||||
( song.s );
|
||||
( (itemForm ! Song) ++ song.s )
|
||||
}
|
||||
};
|
||||
answerSongAdd song = {s = variants {
|
||||
( song.s );
|
||||
( (itemForm ! Song) ++ song.s )
|
||||
}
|
||||
};
|
||||
answerSongRemove song = {s = variants {
|
||||
( song.s );
|
||||
( (itemForm ! Song) ++ song.s )
|
||||
}
|
||||
};
|
||||
questionSong song = {s = variants {
|
||||
( song.s );
|
||||
( (itemForm ! Song) ++ song.s )
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
|
||||
answerArtistPlay artist = {s = variants {
|
||||
( artist.s );
|
||||
( (itemForm ! Artist) ++ artist.s )
|
||||
}
|
||||
};
|
||||
answerArtistAdd artist = {s = variants {
|
||||
( artist.s );
|
||||
( (itemForm ! Artist) ++ artist.s )
|
||||
}
|
||||
};
|
||||
answerArtistRemove artist = {s = variants {
|
||||
( artist.s );
|
||||
( (itemForm ! Artist) ++ artist.s )
|
||||
}
|
||||
};
|
||||
questionArtist artist = { s = variants {
|
||||
( artist.s );
|
||||
( (itemForm ! Artist) ++ artist.s )
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
|
||||
answerStationPlay station = {s = variants {
|
||||
( station.s);
|
||||
( "stationen" ++ station.s)
|
||||
}
|
||||
};
|
||||
answerStationAdd station = {s = variants {
|
||||
( station.s);
|
||||
( "stationen" ++ station.s)
|
||||
}
|
||||
};
|
||||
answerStationRemove station = {s = variants {
|
||||
( station.s);
|
||||
( "stationen" ++ station.s)
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
|
||||
-- LIST RELATED ANSWERS
|
||||
|
||||
-- nummer fem
|
||||
-- fem
|
||||
answerNumberInListPlay numb = {s = variants {
|
||||
( (listForm ! Numeric) ++ numb.s );
|
||||
( numb.s )
|
||||
}
|
||||
};
|
||||
|
||||
answerNumberInListRemove numb = {s = variants {
|
||||
( (listForm ! Numeric) ++ numb.s );
|
||||
( numb.s )
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
-- den femte låten
|
||||
-- den femte
|
||||
answerOrderInListPlay ordNum =
|
||||
{s = variants {
|
||||
("den" ++ ordNum.s ++ (itemForm ! Post));
|
||||
("den" ++ ordNum.s)
|
||||
}
|
||||
};
|
||||
answerOrderInListRemove ordNum =
|
||||
{s = variants {
|
||||
("den" ++ ordNum.s ++ (itemForm ! Post));
|
||||
("den" ++ ordNum.s)
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
-- LEXICON
|
||||
|
||||
pattern
|
||||
|
||||
play_spec = (variants {["spela"] ; ["starta"] ; ["höra"] ; ["lyssna på"]});
|
||||
play_spec_alone = variants {["spela"] ; ["spela den här"] ; ["spela den"] ; ["spela en speciell"] ; ["spela en speciell låt"]};
|
||||
play = (variants {["spela från början"] ; ["spela"] ; ["starta"]});
|
||||
stop = (variants {["stoppa"] ; ["avbryta"]});
|
||||
pause = (variants {["pausa"] });
|
||||
resume = (variants {["återuppta spelningen"] ; ["starta igen"]});
|
||||
|
||||
next = "nästa";
|
||||
previous = "föregående";
|
||||
|
||||
raise_volume = "höja" ++ variants { ("volymen") ; ("ljudet")};
|
||||
lower_volume = "sänka" ++ variants { ("volymen") ; ("ljudet")};
|
||||
|
||||
|
||||
fastforward = ["spola framåt"];
|
||||
rewind = ["spola bakåt"];
|
||||
|
||||
|
||||
shift = variants{ ["ändra balansen"] ; "skifta"};
|
||||
right = variants{"" ; "till"} ++ "höger";
|
||||
left = variants{"" ; "till"} ++ "vänster";
|
||||
center = variants{"" ; "till"} ++ "mitten";
|
||||
|
||||
show_list = ["visa listan"];
|
||||
|
||||
add = ["lägga till"];
|
||||
add_alone = variants {["lägga till"]; ["lägg till den här"] ; ["lägg till den"]};
|
||||
remove = ["ta bort"];
|
||||
remove_alone = variants { ["ta bort"] ; ["ta bort den"] ; ["ta bort den här"] };
|
||||
|
||||
remove_all = variants {["rensa listan"] ; ["ta bort allt"]};
|
||||
|
||||
handle_list = ["ändra i spellistan"];
|
||||
handle_player = ["prata med spelaren"];
|
||||
handle_stations = ["välja en radiostation"];
|
||||
|
||||
|
||||
|
||||
-- FLYTTAT TILL userSpecificSwe.gf och systemSpecificSwe.gf pga
|
||||
-- olika linearisering for system och användare.
|
||||
|
||||
--askArtist = variants { "låtar" ;
|
||||
-- variants { variants {"vad" ; ["vilka låtar"]} ++ ["har jag"] ;
|
||||
-- ["har jag någonting"]} ++ variants {"med" ; "av"}};
|
||||
|
||||
|
||||
--askSong = variants { "artister" ; (["vem har"] ++ variants {"skrivit"; "gjort"})};
|
||||
|
||||
--askCurrent = ["vad heter"] ++ variants {["den här"] ; ["låten som spelas nu"]};
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -1,75 +0,0 @@
|
||||
--# -path=.:../:../../:../Shared/:../../../Resource/Media/:../../../Resource/Media/Swedish/:../../../Resorce/Media/English:../../../Resource/Numbers/:../../../Core:../../../Core/Shared/:../../../Core/System
|
||||
|
||||
abstract systemDomain = sharedDomain, systemCore ** {
|
||||
|
||||
|
||||
fun
|
||||
|
||||
-- PROPOSITIONS.
|
||||
|
||||
songProp : Song -> Proposition;
|
||||
itemProp : Song -> Proposition;
|
||||
currentSongProp : Song -> Proposition;
|
||||
|
||||
whatToPlayPropNum : Number -> Proposition;
|
||||
whatToPlayPropOrd : Number -> Proposition;
|
||||
|
||||
itemRemPropNum : Number -> Proposition;
|
||||
itemRemPropOrd : Number -> Proposition;
|
||||
|
||||
groupToAddProp : Artist -> Proposition;
|
||||
artistProp : Artist -> Proposition;
|
||||
groupProp : Artist -> Proposition;
|
||||
songArtistProp : Artist -> Proposition;
|
||||
|
||||
albumProp : Album -> Proposition;
|
||||
|
||||
artistsSongProp : Artist -> Proposition;
|
||||
artistsAlbumProp : Artist -> Proposition;
|
||||
|
||||
albumArtistProp : Album -> Proposition;
|
||||
songsArtistProp : Song -> Proposition;
|
||||
stationProp : Station -> Proposition;
|
||||
|
||||
actionProp : (t: Task) -> Action (t) -> Proposition;
|
||||
|
||||
|
||||
|
||||
-- Asks
|
||||
whatSongQuestion : SingleAsk; -- "what song do you mean?"
|
||||
whatArtistQuestion : SingleAsk; -- "what artist do you mean?"
|
||||
whatIndexQuestion : SingleAsk; -- "what index do you mean?"
|
||||
whatToRemoveQuestion : SingleAsk;
|
||||
whatStationQuestion : SingleAsk; -- "what station do you want?"
|
||||
whatAlbumQuestion : SingleAsk; -- "what album do you mean?"
|
||||
whatToPlayQuestion : SingleAsk; -- "which song in the playlist do you want to lay?"
|
||||
whatToRemove : SingleAsk; -- "What number do you want to remove?"
|
||||
|
||||
|
||||
-- Confirms
|
||||
|
||||
addedToPlaylist : Confirm; -- "The playlist is increased"
|
||||
removedFromPLaylist : Confirm; -- "The playlist is reduced"
|
||||
clearedPlaylist : Confirm; -- "The playlist is cleared"
|
||||
turnedUpVolume : Confirm; -- "Turning up the volume"
|
||||
loweredVolume : Confirm; -- "Lowering the volume"
|
||||
startingThePlayer : Confirm; -- "Starting the music"
|
||||
stoppingThePlayer : Confirm; -- "Stopping the music"
|
||||
pausingThePlayer : Confirm; -- "Pausing the music"
|
||||
resumingThePlayer : Confirm; -- "Resuming the music"
|
||||
shuffleTheList : Confirm; -- "The list has been shuffled"
|
||||
ffing : Confirm;
|
||||
rewinding : Confirm;
|
||||
handlingstations : Confirm;
|
||||
handlingplayer : Confirm;
|
||||
handlingplaylist : Confirm;
|
||||
showedList : Confirm;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -1,106 +0,0 @@
|
||||
--# -path=.:../:../../:../Shared/:../../../Resource/Media/:../../../Resource/Media/English/:../../../Resorce/Media/Swedish:../../../Resource/Numbers/:../../../Core:../../../Core/Shared/:../../../Core/System
|
||||
|
||||
concrete systemDomainEng of systemDomain = sharedDomainEng, systemCoreEng ** {
|
||||
|
||||
|
||||
flags conversion=finite;
|
||||
|
||||
|
||||
lin
|
||||
|
||||
-- PROPOSITIONS
|
||||
|
||||
songProp song = { s = song.s };
|
||||
itemProp song = { s = song.s };
|
||||
currentSongProp song = { s = song.s };
|
||||
|
||||
whatToPlayPropNum number = { s = number.s };
|
||||
whatToPlayPropOrd order = { s = order.s };
|
||||
|
||||
itemRemPropNum number = { s = number.s };
|
||||
itemRemPropOrd order = { s = order.s };
|
||||
|
||||
groupToAddProp artist = { s = artist.s };
|
||||
artistProp artist = { s = artist.s};
|
||||
groupProp artist = { s = artist.s };
|
||||
songArtistProp artist = { s = artist.s };
|
||||
|
||||
albumProp album = { s = album.s };
|
||||
|
||||
artistsSongProp artist = { s = artist.s };
|
||||
artistsAlbumProp artist = { s = artist.s };
|
||||
|
||||
albumArtistProp album = { s = album.s };
|
||||
|
||||
songsArtistProp song = { s = song.s };
|
||||
|
||||
stationProp station = { s = station.s };
|
||||
|
||||
actionProp _ action = {s = action.s };
|
||||
|
||||
-- sort_restr( song(X) ):- sem_sort(X,item).
|
||||
-- sort_restr( item(X) ):- sem_sort(X,item).
|
||||
-- sort_restr( current_song(X) ):- sem_sort(X,song).
|
||||
-- sort_restr( what_to_play(X) ):- sem_sort(X,index).
|
||||
-- sort_restr( itemRem(X) ):- sem_sort(X,index).
|
||||
-- sort_restr( itemRem(X) ):- sem_sort(X,index).
|
||||
-- sort_restr( groupToAdd(X) ):- group( X ).
|
||||
-- sort_restr( artist(X) ):- group( X ).
|
||||
-- sort_restr( group(X) ):- group( X ).
|
||||
-- sort_restr( song_artist(X) ):- group( X ).
|
||||
-- sort_restr( album(X) ):- album( X ).
|
||||
-- sort_restr( artists_song(X) ):- group_atom( X ).
|
||||
-- sort_restr( artists_album(X) ):- group_atom( X ).
|
||||
-- sort_restr( albums_by_artist(X) ):- album_atom( X ).
|
||||
-- sort_restr( songs_by_artist(X) ):- song_atom( X ).
|
||||
-- sort_restr( station(X) ):- radio_station( X ).
|
||||
-- sort_restr( year(X) ):- sem_sort( X, year ).
|
||||
-- sort_restr( path(X) ):- atomic( X ).%,format("hallå: ~w\n",[X]).
|
||||
-- %sort_restr( X^path(X) ):- atomic( X ),format("hallå: ~w\n",[X]).
|
||||
-- sort_restr( not path(X) ):- format("hallå: ~w\n",[X]), atomic( X ).
|
||||
-- sort_restr( fail(Path^path(Path),no_matches) ).
|
||||
|
||||
|
||||
pattern
|
||||
|
||||
|
||||
-- Because of differing linearisations in User and System usage these functions are not linearized in Shared.
|
||||
|
||||
askArtist = "song" ;
|
||||
askSong = "artist" ;
|
||||
askCurrent = ["the current song"];
|
||||
|
||||
|
||||
-- Asks
|
||||
whatSongQuestion = ["what song do you mean"];
|
||||
whatArtistQuestion = ["what artist do you mean"];
|
||||
whatIndexQuestion = ["what index number do you want to play"];
|
||||
whatToRemoveQuestion = ["what song do you want to remove from the playlist"];
|
||||
whatStationQuestion = ["what radio station do you want to listen to"];
|
||||
whatAlbumQuestion = ["what album do you mean"];
|
||||
whatToPlayQuestion = ["what song in the playlist do you want to play"];
|
||||
whatToRemove = ["what song in the playlist do you want to remove"];
|
||||
|
||||
|
||||
-- Confirms
|
||||
|
||||
addedToPlaylist = ["the playlist is increased"];
|
||||
removedFromPLaylist = ["the playlist is reduced"];
|
||||
clearedPlaylist = ["the playlist is cleared"];
|
||||
turnedUpVolume = ["turning up the volume"];
|
||||
loweredVolume = ["lowering the volume"];
|
||||
startingThePlayer = ["starting the music"];
|
||||
stoppingThePlayer = ["the player is stopped"];
|
||||
pausingThePlayer = ["pausing the player"];
|
||||
resumingThePlayer = ["resuming the music"];
|
||||
shuffleTheList = ["the playlist has been shuffled"];
|
||||
ffing = ["performing fast forward"];
|
||||
rewinding = ["rewinding"];
|
||||
handlingstations = ["done with choosing a station"];
|
||||
handlingplayer = ["your wish is my command"];
|
||||
handlingplaylist = ["done fiddling with the playlist"];
|
||||
showedList = ["finished showing the list"];
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -1,98 +0,0 @@
|
||||
-- --# -path=.:../:../../:../Shared/:../../../Resource/Media/:../../../Resource/Media/Swedish/:../../../Resource/Numbers/:../../../Core:../../../Core/Shared/:../../../Core/System
|
||||
--# -path=.:../:../../:../Shared/:../../../Resource/Media/:../../../Resource/Media/English/:../../../Resorce/Media/Swedish:../../../Resource/Numbers/:../../../Core:../../../Core/Shared/:../../../Core/System
|
||||
|
||||
|
||||
|
||||
concrete systemDomainPro of systemDomain = sharedDomainPro, systemCorePro ** {
|
||||
|
||||
flags conversion=finite;
|
||||
|
||||
|
||||
lin
|
||||
-- PROPOSITIONS
|
||||
|
||||
songProp song = { s = "song" ++ "(" ++ song.s ++ ")" };
|
||||
itemProp song = { s = "item" ++ "(" ++ song.s ++ ")" };
|
||||
currentSongProp song = { s = "current_song" ++ "(" ++ song.s ++ ")" };
|
||||
|
||||
whatToPlayPropNum number = { s = "what_to_play" ++ "(" ++ number.s ++ ")" };
|
||||
whatToPlayPropOrd order = { s = "what_to_play" ++ "(" ++ order.s ++ ")" };
|
||||
|
||||
itemRemPropNum number = { s = "itemRem" ++ "(" ++ number.s ++ ")" };
|
||||
itemRemPropOrd order = { s = "itemRem" ++ "(" ++ order.s ++ ")" };
|
||||
|
||||
groupToAddProp artist = { s = "groupToAdd" ++ "(" ++ artist.s ++ ")" };
|
||||
artistProp artist = { s = "artist" ++ "(" ++ artist.s ++ ")"};
|
||||
groupProp artist = { s = "group" ++ "(" ++ artist.s ++ ")" };
|
||||
songArtistProp artist = { s = "song_artist" ++ "(" ++ artist.s ++ ")" };
|
||||
|
||||
albumProp album = { s = "album" ++ "(" ++ album.s ++ ")" };
|
||||
|
||||
artistsSongProp artist = { s = "artist_song" ++ "(" ++ artist.s ++ ")" };
|
||||
artistsAlbumProp artist = { s = "artists_album" ++ "(" ++ artist.s ++ ")" };
|
||||
|
||||
albumArtistProp album = { s = "albums_by_artist" ++ "(" ++ album.s ++ ")" };
|
||||
|
||||
songsArtistProp song = { s = "songs_by_artist" ++ "(" ++ song.s ++ ")" };
|
||||
|
||||
stationProp station = { s = "station" ++ "(" ++ station.s ++ ")" };
|
||||
|
||||
actionProp _ action = {s = "action" ++ "(" ++ action.s ++ ")"};
|
||||
|
||||
-- sort_restr( song(X) ):- sem_sort(X,item).
|
||||
-- sort_restr( item(X) ):- sem_sort(X,item).
|
||||
-- sort_restr( current_song(X) ):- sem_sort(X,song).
|
||||
-- sort_restr( what_to_play(X) ):- sem_sort(X,index).
|
||||
-- sort_restr( itemRem(X) ):- sem_sort(X,index).
|
||||
-- sort_restr( itemRem(X) ):- sem_sort(X,index).
|
||||
-- sort_restr( groupToAdd(X) ):- group( X ).
|
||||
-- sort_restr( artist(X) ):- group( X ).
|
||||
-- sort_restr( group(X) ):- group( X ).
|
||||
-- sort_restr( song_artist(X) ):- group( X ).
|
||||
-- sort_restr( album(X) ):- album( X ).
|
||||
-- sort_restr( artists_song(X) ):- group_atom( X ).
|
||||
-- sort_restr( artists_album(X) ):- group_atom( X ).
|
||||
-- sort_restr( albums_by_artist(X) ):- album_atom( X ).
|
||||
-- sort_restr( songs_by_artist(X) ):- song_atom( X ).
|
||||
-- sort_restr( station(X) ):- radio_station( X ).
|
||||
-- sort_restr( year(X) ):- sem_sort( X, year ).
|
||||
-- sort_restr( path(X) ):- atomic( X ).%,format("hallå: ~w\n",[X]).
|
||||
-- %sort_restr( X^path(X) ):- atomic( X ),format("hallå: ~w\n",[X]).
|
||||
-- sort_restr( not path(X) ):- format("hallå: ~w\n",[X]), atomic( X ).
|
||||
-- sort_restr( fail(Path^path(Path),no_matches) ).
|
||||
|
||||
pattern
|
||||
-- Asks
|
||||
whatSongQuestion = ["x ^ item ( x )"];
|
||||
whatArtistQuestion = ["x ^ group ( x )"];
|
||||
whatIndexQuestion = ["x ^ index ( x )"];
|
||||
whatToRemoveQuestion = ["x ^ song_to_remove ( x )"];
|
||||
whatStationQuestion = ["x ^ station ( x )"];
|
||||
whatAlbumQuestion = ["x ^ album ( x )"];
|
||||
whatToPlayQuestion = ["x ^ what_to_play ( x )"];
|
||||
whatToRemove = ["x ^ itemRem ( x )"];
|
||||
|
||||
|
||||
|
||||
|
||||
-- Confirms
|
||||
|
||||
addedToPlaylist = "playlist_add"; -- "The playlist is increased"
|
||||
removedFromPLaylist = "playlist_del"; -- "The playlist is reduced"
|
||||
clearedPlaylist = "playlist_clear"; -- "The playlist is cleared"
|
||||
turnedUpVolume = "vol_up"; -- "Turning up the volume"
|
||||
loweredVolume = "vol_down"; -- "Lowering the volume"
|
||||
startingThePlayer = variants {"start" ; "start_specific"};
|
||||
stoppingThePlayer = "stop"; -- "Stopping the music"
|
||||
pausingThePlayer = "pause"; -- "Pausing the music"
|
||||
resumingThePlayer = "resume"; -- "Resuming the music"
|
||||
shuffleTheList = "shuffle"; -- "The list has been shuffled"
|
||||
ffing = "fast_fowrward";
|
||||
rewinding = "rewind";
|
||||
handlingstations = "handle_stations";
|
||||
handlingplayer = "handle_player";
|
||||
handlingplaylist = "handle_playlist";
|
||||
showedList = "show_list";
|
||||
|
||||
|
||||
}
|
||||
@@ -1,105 +0,0 @@
|
||||
--# -path=.:../:../../:../Shared/:../../../Resource/Media/:../../../Resource/Media/Swedish/:../../../Resorce/Media/English:../../../Resource/Numbers/:../../../Core:../../../Core/Shared/:../../../Core/System
|
||||
|
||||
concrete systemDomainSwe of systemDomain = sharedDomainSwe, systemCoreSwe ** {
|
||||
|
||||
flags conversion=finite;
|
||||
|
||||
|
||||
lin
|
||||
|
||||
-- PROPOSITIONS
|
||||
|
||||
songProp song = { s = song.s };
|
||||
itemProp song = { s = song.s };
|
||||
currentSongProp song = { s = song.s };
|
||||
|
||||
whatToPlayPropNum number = { s = number.s };
|
||||
whatToPlayPropOrd order = { s = order.s };
|
||||
|
||||
itemRemPropNum number = { s = number.s };
|
||||
itemRemPropOrd order = { s = order.s };
|
||||
|
||||
groupToAddProp artist = { s = artist.s };
|
||||
artistProp artist = { s = artist.s};
|
||||
groupProp artist = { s = artist.s };
|
||||
songArtistProp artist = { s = artist.s };
|
||||
|
||||
albumProp album = { s = album.s };
|
||||
|
||||
artistsSongProp artist = { s = artist.s };
|
||||
artistsAlbumProp artist = { s = artist.s };
|
||||
|
||||
albumArtistProp album = { s = album.s };
|
||||
|
||||
songsArtistProp song = { s = song.s };
|
||||
|
||||
stationProp station = { s = station.s };
|
||||
|
||||
-- sort_restr( song(X) ):- sem_sort(X,item).
|
||||
-- sort_restr( item(X) ):- sem_sort(X,item).
|
||||
-- sort_restr( current_song(X) ):- sem_sort(X,song).
|
||||
-- sort_restr( what_to_play(X) ):- sem_sort(X,index).
|
||||
-- sort_restr( itemRem(X) ):- sem_sort(X,index).
|
||||
-- sort_restr( itemRem(X) ):- sem_sort(X,index).
|
||||
-- sort_restr( groupToAdd(X) ):- group( X ).
|
||||
-- sort_restr( artist(X) ):- group( X ).
|
||||
-- sort_restr( group(X) ):- group( X ).
|
||||
-- sort_restr( song_artist(X) ):- group( X ).
|
||||
-- sort_restr( album(X) ):- album( X ).
|
||||
-- sort_restr( artists_song(X) ):- group_atom( X ).
|
||||
-- sort_restr( artists_album(X) ):- group_atom( X ).
|
||||
-- sort_restr( albums_by_artist(X) ):- album_atom( X ).
|
||||
-- sort_restr( songs_by_artist(X) ):- song_atom( X ).
|
||||
-- sort_restr( station(X) ):- radio_station( X ).
|
||||
-- sort_restr( year(X) ):- sem_sort( X, year ).
|
||||
-- sort_restr( path(X) ):- atomic( X ).%,format("hallå: ~w\n",[X]).
|
||||
-- %sort_restr( X^path(X) ):- atomic( X ),format("hallå: ~w\n",[X]).
|
||||
-- sort_restr( not path(X) ):- format("hallå: ~w\n",[X]), atomic( X ).
|
||||
-- sort_restr( fail(Path^path(Path),no_matches) ).
|
||||
|
||||
|
||||
pattern
|
||||
|
||||
|
||||
-- Because of differing linearisations in User and System usage these functions are not linearized in Shared.
|
||||
|
||||
askArtist = "låtar" ;
|
||||
|
||||
|
||||
askSong = "artister" ;
|
||||
askCurrent = ["låten som spelas nu"];
|
||||
|
||||
|
||||
-- Asks
|
||||
whatSongQuestion = ["vilken sång menar du"];
|
||||
whatArtistQuestion = ["vilken artist menar du"];
|
||||
whatIndexQuestion = ["vilket index nummer vill du spela"];
|
||||
whatToRemoveQuestion = ["vilken sång vill du ta bort från spellistan"];
|
||||
whatStationQuestion = ["vilken radiostation vill du lyssna på"];
|
||||
whatAlbumQuestion = ["vilket album menar du"];
|
||||
whatToPlayQuestion = ["vad i spellistan vill du spela"];
|
||||
whatToRemove = ["vad i spellistan vill du ta bort"];
|
||||
|
||||
|
||||
|
||||
-- Confirms
|
||||
|
||||
addedToPlaylist = ["spellistan är utökad"];
|
||||
removedFromPLaylist = ["spellistan är reducerad"];
|
||||
clearedPlaylist = ["spellistan är rensad"];
|
||||
turnedUpVolume = ["höjer volymen"];
|
||||
loweredVolume = ["sänker volymen"];
|
||||
startingThePlayer = ["startar uppspelningen"];
|
||||
stoppingThePlayer = ["spelaren är stoppad"];
|
||||
pausingThePlayer = ["pausar uppspelningen"];
|
||||
resumingThePlayer = ["återupptar uppspelningen"];
|
||||
shuffleTheList = ["spellistan har blandats"];
|
||||
ffing = ["spolar frammåt"];
|
||||
rewinding = ["spolar bakåt"];
|
||||
handlingstations = ["klar med att välja radiostation"];
|
||||
handlingplayer = ["jag fixar"];
|
||||
handlingplaylist = ["klar med spellistan"];
|
||||
showedList = ["spellistan är visad"];
|
||||
}
|
||||
|
||||
|
||||
@@ -1,19 +0,0 @@
|
||||
-- SWEDISH VERSION, UNCOMMENT WHEN NEEDED
|
||||
----# -path=.:../:../../:../Shared/:../../../Resource/Media/:../../../Resource/Media/Swedish/:../../../Resource/Numbers/:../../../Core:../../../Core/Shared/:../../../Core/User
|
||||
|
||||
|
||||
-- ENGLISH VERSION, UNCOMMENT WHEN NEEDED
|
||||
--# -path=.:../:../../:../Shared/:../../../Resource/Media/:../../../Resource/Media/English/:../../../Resorce/Media/Swedish:../../../Resource/Numbers/:../../../Core:../../../Core/Shared/:../../../Core/User
|
||||
|
||||
|
||||
abstract userDomain = userCore, sharedDomain ** {
|
||||
|
||||
|
||||
fun
|
||||
-- CompoundedAnswers
|
||||
|
||||
answerSongArtistPlay : Song -> Artist -> AnswerList playTask;
|
||||
answerSongArtistAdd : Song -> Artist -> AnswerList addTask;
|
||||
|
||||
|
||||
}
|
||||
@@ -1,29 +0,0 @@
|
||||
|
||||
--# -path=.:../:../../:../Shared/:../../../Resource/Media/:../../../Resource/Media/Swedish/:../../../Resource/Media/English:../../../Resource/Numbers/:../../../Core:../../../Core/Shared/:../../../Core/User
|
||||
|
||||
concrete userDomainEng of userDomain = userCoreEng, sharedDomainEng ** {
|
||||
|
||||
flags conversion=finite;
|
||||
|
||||
|
||||
lin
|
||||
|
||||
-- CompoundedAnswers
|
||||
answerSongArtistPlay song artist = {s = variants {(song.s ++ "with" ++ artist.s)
|
||||
; (artist.s ++ "with" ++ song.s)} };
|
||||
|
||||
answerSongArtistAdd song artist = {s = variants {(song.s ++ "with" ++ artist.s)
|
||||
; (artist.s ++ "with" ++ song.s)} };
|
||||
|
||||
|
||||
pattern
|
||||
askArtist = variants { ["what do i have"] ; ["what songs do i have"] ; ["do i have anything"]}
|
||||
++ variants {"with" ; "by"};
|
||||
|
||||
|
||||
askSong = ["who"] ++ variants {"made"; "wrote"};
|
||||
|
||||
askCurrent = ["what"] ++ variants {["song is this"] ; ["is this called"]};
|
||||
|
||||
|
||||
}
|
||||
@@ -1,15 +0,0 @@
|
||||
--# -path=.:../:../../:../Shared/:../../../Resource/Media/:../../../Resource/Media/English/:../../../Resource/Media/Swedish:../../../Resorce/Media/Swedish:../../../Resource/Numbers/:../../../Core:../../../Core/Shared/:../../../Core/User
|
||||
|
||||
|
||||
|
||||
concrete userDomainPro of userDomain = userCorePro, sharedDomainPro ** {
|
||||
|
||||
flags conversion=finite;
|
||||
|
||||
|
||||
lin
|
||||
answerSongArtistPlay song artist = { s = ["answer ( item ("] ++ song.s ++ [" ) ) ,"] ++
|
||||
["answer ( group ("] ++ artist.s ++ [") )"]};
|
||||
answerSongArtistAdd song artist = { s = ["answer ( item ("] ++ song.s ++ [" ) ) ,"] ++
|
||||
["answer ( group ("] ++ artist.s ++ [") )"]};
|
||||
}
|
||||
@@ -1,29 +0,0 @@
|
||||
--# -path=.:../:../../:../Shared/:../../../Resource/Media/:../../../Resource/Media/Swedish/:../../../Resorce/Media/English:../../../Resource/Numbers/:../../../Core:../../../Core/Shared/:../../../Core/User
|
||||
|
||||
|
||||
concrete userDomainSwe of userDomain = userCoreSwe, sharedDomainSwe ** {
|
||||
|
||||
flags conversion=finite;
|
||||
|
||||
|
||||
lin
|
||||
|
||||
-- CompoundedAnswers
|
||||
answerSongArtistPlay song artist = {s = variants {(song.s ++ "med" ++ artist.s)
|
||||
; (artist.s ++ "med" ++ song.s)} };
|
||||
|
||||
answerSongArtistAdd song artist = {s = variants {(song.s ++ "med" ++ artist.s)
|
||||
; (artist.s ++ "med" ++ song.s)} };
|
||||
|
||||
|
||||
pattern
|
||||
askArtist = variants { ["vad har jag"] ; ["vilka låtar har jag"] ; ["har jag någonting"]}
|
||||
++ variants {"med" ; "av"};
|
||||
|
||||
|
||||
askSong = ["vem har"] ++ variants {"skrivit"; "gjort"};
|
||||
|
||||
askCurrent = ["vad heter"] ++ variants {["den här"] ; ["låten som spelas nu"]};
|
||||
|
||||
|
||||
}
|
||||
@@ -1,27 +0,0 @@
|
||||
-- A file with Pointers...
|
||||
-- With pointers I mean the phrases that point out a specific semantics of a segment.
|
||||
-- Example "I want to listen to the artist Sting" where "the artist" makes clear
|
||||
-- that "Sting" is an artist and not a song for instance.
|
||||
|
||||
resource SpecResEng = {
|
||||
|
||||
param ListInfo = Numeric | Ordered ;
|
||||
param ItemChoice = Artist | Song | Post;
|
||||
|
||||
oper listForm : ListInfo => Str
|
||||
= table {
|
||||
Numeric => ["number"];
|
||||
Ordered => ["the"]
|
||||
|
||||
};
|
||||
|
||||
|
||||
oper itemForm : ItemChoice => Str
|
||||
= table {
|
||||
Artist => ["the artist"];
|
||||
Song => ["the song"];
|
||||
Post => ""
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -1,27 +0,0 @@
|
||||
-- A file with Pointers...
|
||||
-- With pointers I mean the phrases that point out a specific semantics of a segment.
|
||||
-- Example "I want to listen to the artist Sting" where "the artist" makes clear
|
||||
-- that "Sting" is an artist and not a song for instance.
|
||||
|
||||
resource SpecResSwe = {
|
||||
|
||||
param ListInfo = Numeric | Ordered ;
|
||||
param ItemChoice = Artist | Song | Post;
|
||||
|
||||
oper listForm : ListInfo => Str
|
||||
= table {
|
||||
Numeric => ["nummer"];
|
||||
Ordered => ["den"]
|
||||
|
||||
};
|
||||
|
||||
|
||||
oper itemForm : ItemChoice => Str
|
||||
= table {
|
||||
Artist => "artisten";
|
||||
Song => "låten";
|
||||
Post => ""
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -1,5 +0,0 @@
|
||||
--# -path=.:../../Resource/Home
|
||||
|
||||
abstract DB = Lamps, Rooms ** {
|
||||
|
||||
}
|
||||
@@ -1,5 +0,0 @@
|
||||
--# -path=.:../../Resource/Home
|
||||
|
||||
concrete DBEng of DB= LampsEng, RoomsEng ** {
|
||||
|
||||
}
|
||||
@@ -1,5 +0,0 @@
|
||||
--# -path=.:../../Resource/Home
|
||||
|
||||
concrete DBPro of DB= LampsPro, RoomsPro ** {
|
||||
|
||||
}
|
||||
@@ -1,5 +0,0 @@
|
||||
--# -path=.:../../Resource/Home
|
||||
|
||||
concrete DBSwe of DB= LampsSwe, RoomsSwe ** {
|
||||
|
||||
}
|
||||
@@ -1,50 +0,0 @@
|
||||
--# -path=.:../:../../:../Shared/:../../../Resource/Home/:../../../Core:../../../Core/Shared/:../../../Core/System
|
||||
|
||||
abstract sharedDomain = sharedCore, DB ** {
|
||||
|
||||
fun
|
||||
|
||||
-- ANSWERS
|
||||
|
||||
answerLampOn : Lamp -> Proposition onTask;
|
||||
answerLampOff : Lamp -> Proposition offTask;
|
||||
|
||||
answerLocation : Room -> Proposition locateTask;
|
||||
|
||||
-- Ask Answers
|
||||
questionWhichLamp : Lamp -> Proposition lampQuestion;
|
||||
questionLocation : Room -> Proposition locQuestion;
|
||||
|
||||
-- LEXICON
|
||||
|
||||
onTask : Task;
|
||||
offTask : Task;
|
||||
locateTask : Task;
|
||||
lampQuestion : Task;
|
||||
locQuestion : Task;
|
||||
|
||||
turnOn : Action onTask;
|
||||
turnOff : Action offTask;
|
||||
|
||||
turnOnThis : SingleAction;
|
||||
turnOffThis : SingleAction;
|
||||
|
||||
dimmerUp : SingleAction;
|
||||
dimmerDown : SingleAction;
|
||||
|
||||
--askLamp : Ask lampQuestion;
|
||||
--askLocation : Ask locQuestion;
|
||||
|
||||
askStatusLamp : SingleAsk;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -1,46 +0,0 @@
|
||||
--# -path=.:../:../../:../Shared/:../../../Resource/Home/:../../../Core:../../../Core/Shared/:../../../Core/System
|
||||
|
||||
|
||||
concrete sharedDomainEng of sharedDomain = sharedCoreEng, DBEng **
|
||||
open SpecResEng in {
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
lin
|
||||
-- ANSWERS
|
||||
|
||||
answerLampOn lamp = {s = lamp.s};
|
||||
answerLampOff lamp = {s = lamp.s};
|
||||
answerLocation loc = {s = loc.s};
|
||||
|
||||
questionWhichLamp lamp = {s = lamp.s};
|
||||
questionLocation loc = {s = loc.s};
|
||||
|
||||
-- LEXICON
|
||||
|
||||
pattern
|
||||
|
||||
turnOn = ["turn on"];
|
||||
turnOff = ["turn off"];
|
||||
|
||||
turnOnThis = ["turn on"];
|
||||
turnOffThis = ["turn off"];
|
||||
|
||||
dimmerUp = ["dim up"];
|
||||
dimmerDown = ["dim down"];
|
||||
|
||||
--askLamp = ["do i have a"];
|
||||
--askLocation = ["is there a"];
|
||||
|
||||
askStatusLamp = ["what lights are on"];
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -1,43 +0,0 @@
|
||||
--# -path=.:../:../../:../Shared/:../../../Resource/Home/:../../../Core:../../../Core/Shared/:../../../Core/System
|
||||
|
||||
|
||||
|
||||
concrete sharedDomainPro of sharedDomain = sharedCorePro, DBPro ** {
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
lin
|
||||
-- ANSWERS
|
||||
|
||||
answerLampOn lamp = {s = lamp.s};
|
||||
answerLampOff lamp = {s = lamp.s};
|
||||
answerLocation loc = {s = loc.s};
|
||||
|
||||
questionWhichLamp lamp = {s = lamp.s};
|
||||
questionLocation loc = {s = loc.s};
|
||||
|
||||
|
||||
-- LEXICON
|
||||
|
||||
pattern
|
||||
|
||||
turnOn = "turnOn";
|
||||
turnOff = "turnOff";
|
||||
|
||||
turnOnThis = "turnOn_closest";
|
||||
turnOffThis = "turnOff_closest";
|
||||
|
||||
dimmerUp = "dimmer_up";
|
||||
dimmerDown = "dimmer_down";
|
||||
|
||||
--askLamp = "lamps";
|
||||
--askLocation = "locations";
|
||||
|
||||
askStatusLamp = "status";
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -1,48 +0,0 @@
|
||||
--# -path=.:../:../../:../Shared/:../../../Resource/Home/:../../../Core:../../../Core/Shared/:../../../Core/System
|
||||
|
||||
|
||||
|
||||
concrete sharedDomainSwe of sharedDomain = sharedCoreSwe, DBSwe ** {
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
lin
|
||||
-- ANSWERS
|
||||
|
||||
answerLampOn lamp = {s = lamp.s};
|
||||
answerLampOff lamp = {s = lamp.s};
|
||||
answerLocation loc = {s = loc.s};
|
||||
|
||||
questionWhichLamp lamp = {s = lamp.s};
|
||||
questionLocation loc = {s = loc.s};
|
||||
|
||||
|
||||
-- LEXICON
|
||||
|
||||
pattern
|
||||
|
||||
turnOn = "tända";
|
||||
turnOff = "släcka";
|
||||
|
||||
turnOnThis = "tända";
|
||||
turnOffThis = "släcka";
|
||||
|
||||
dimmerUp = ["dimma upp"];
|
||||
dimmerDown = ["dimma ner"];
|
||||
|
||||
--askLamp = ["har jag en"];
|
||||
--askLocation = ["finns det ett"];
|
||||
|
||||
askStatusLamp = ["vilka lampor är tända"];
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -1,58 +0,0 @@
|
||||
--# -path=.:../:../../:../Shared/:../../../Resource/Home/:../../../Core:../../../Core/Shared/:../../../Core/System
|
||||
|
||||
abstract sharedDomain = sharedCore, DB ** {
|
||||
|
||||
fun
|
||||
|
||||
-- ANSWERS
|
||||
|
||||
|
||||
-- Ett alternativ är att gära en Task för varje action som
|
||||
-- finns i domänen. Alltså En erase Task, en play Task och en add Task
|
||||
-- på det sattet kan man gora funktioner som tar "nummer fem" och gör en
|
||||
-- "Object play" och en "Object erase" men inte en "Object add".
|
||||
|
||||
-- Request Answers
|
||||
|
||||
answerLampOn : Lamp -> Object onTask;
|
||||
answerLampOff : Lamp -> Object offTask;
|
||||
|
||||
answerLocation : Location -> Object locateTask;
|
||||
|
||||
-- Ask Answers
|
||||
questionWhichLamp : Lamp -> Object lampQuestion;
|
||||
questionLocation : Location -> Object locQuestion;
|
||||
|
||||
-- LEXICON
|
||||
|
||||
onTask : Task;
|
||||
offTask : Task;
|
||||
locateTask : Task;
|
||||
lampQuestion : Task;
|
||||
locQuestion : Task;
|
||||
|
||||
turnOn : Action onTask;
|
||||
turnOff : Action offTask;
|
||||
|
||||
turnOnThis : SingleAction;
|
||||
turnOffThis : SingleAction;
|
||||
|
||||
dimmerUp : SingleAction;
|
||||
dimmerDown : SingleAction;
|
||||
|
||||
--askLamp : Ask lampQuestion;
|
||||
--askLocation : Ask locQuestion;
|
||||
|
||||
askStatusLamp : SingleAsk;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -1,34 +0,0 @@
|
||||
--# -path=.:../:../../:../Shared/:../../../Resource/Home/:../../../Core:../../../Core/Shared/:../../../Core/System
|
||||
|
||||
abstract systemDomain = sharedDomain, systemCore ** {
|
||||
|
||||
|
||||
fun
|
||||
|
||||
-- PROPOSITIONS.
|
||||
--
|
||||
|
||||
|
||||
lampProp : Lamp -> Proposition onTask;
|
||||
locProp : Room -> Proposition onTask;
|
||||
|
||||
whatToTurnOffProp : Lamp -> Proposition offTask;
|
||||
whatToTurnOnProp : Lamp -> Proposition onTask;
|
||||
|
||||
-- Asks
|
||||
whatLampQuestion : SingleAsk; -- "what song do you mean?"
|
||||
whatLocQuestion : SingleAsk; -- "what artist do you mean?"
|
||||
|
||||
-- Confirms
|
||||
|
||||
turnedOnLamp : Confirm;
|
||||
turnedOffLamp : Confirm;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -1,32 +0,0 @@
|
||||
--# -path=.:../:../../:../Shared/:../../../Resource/Home/:../../../Core:../../../Core/Shared/:../../../Core/System
|
||||
|
||||
--# -path=.:../:../DBase/:../Shared
|
||||
|
||||
|
||||
concrete systemDomainEng of systemDomain = sharedDomainEng, systemCoreEng ** {
|
||||
|
||||
|
||||
lin
|
||||
|
||||
-- PROPOSITIONS
|
||||
|
||||
lampProp lamp = { s = lamp.s };
|
||||
locProp loc = { s = loc.s };
|
||||
|
||||
whatToTurnOffProp lamp = { s = lamp.s };
|
||||
whatToTurnOnProp lamp = { s = lamp.s };
|
||||
|
||||
pattern
|
||||
|
||||
-- Asks
|
||||
|
||||
whatLampQuestion = ["what lamp do you mean"];
|
||||
whatLocQuestion = ["what room do you mean"];
|
||||
|
||||
-- Confirms
|
||||
|
||||
turnedOnLamp = ["the light is on"];
|
||||
turnedOffLamp = ["the light is turned off"];
|
||||
}
|
||||
|
||||
|
||||
@@ -1,28 +0,0 @@
|
||||
--# -path=.:../:../../:../Shared/:../../../Resource/Home/:../../../Core:../../../Core/Shared/:../../../Core/System
|
||||
|
||||
concrete systemDomainPro of systemDomain = sharedDomainPro, systemCorePro ** {
|
||||
|
||||
lin
|
||||
|
||||
-- PROPOSITIONS
|
||||
|
||||
lampProp lamp = { s = lamp.s };
|
||||
locProp loc = { s = loc.s };
|
||||
|
||||
whatToTurnOffProp lamp = { s = lamp.s };
|
||||
whatToTurnOnProp lamp = { s = lamp.s };
|
||||
|
||||
pattern
|
||||
|
||||
-- Asks
|
||||
|
||||
whatLampQuestion = ["X^lamp(X)"];
|
||||
whatLocQuestion = ["X^loc(X)"];
|
||||
|
||||
-- Confirms
|
||||
|
||||
turnedOnLamp = ["turnOn"];
|
||||
turnedOffLamp = ["turnOff"];
|
||||
|
||||
|
||||
}
|
||||
@@ -1,28 +0,0 @@
|
||||
--# -path=.:../:../../:../Shared/:../../../Resource/Home/:../../../Core:../../../Core/Shared/:../../../Core/System
|
||||
|
||||
concrete systemDomainSwe of systemDomain = sharedDomainSwe, systemCoreSwe ** {
|
||||
|
||||
lin
|
||||
|
||||
-- PROPOSITIONS
|
||||
|
||||
lampProp lamp = { s = lamp.s };
|
||||
locProp loc = { s = loc.s };
|
||||
|
||||
whatToTurnOffProp lamp = { s = lamp.s };
|
||||
whatToTurnOnProp lamp = { s = lamp.s };
|
||||
|
||||
pattern
|
||||
|
||||
-- Asks
|
||||
|
||||
whatLampQuestion = ["vilken lampa menar du"];
|
||||
whatLocQuestion = ["vilket rum menar du"];
|
||||
|
||||
-- Confirms
|
||||
|
||||
turnedOnLamp = ["lampan är tänd"];
|
||||
turnedOffLamp = ["lampan är släckt"];
|
||||
}
|
||||
|
||||
|
||||
@@ -1,13 +0,0 @@
|
||||
--# -path=.:../:../../:../Shared/:../../../Resource/Home/:../../../Core:../../../Core/Shared/:../../../Core/User
|
||||
|
||||
abstract userDomain = userCore, sharedDomain ** {
|
||||
|
||||
|
||||
fun
|
||||
-- CompoundedAnswers
|
||||
|
||||
answerLampLocTurnOn : Lamp -> Room -> AnswerList onTask;
|
||||
answerLampLocTurnOff : Lamp -> Room -> AnswerList offTask;
|
||||
|
||||
|
||||
}
|
||||
@@ -1,12 +0,0 @@
|
||||
--# -path=.:../:../../:../Shared/:../../../Resource/Home/:../../../Core:../../../Core/Shared/:../../../Core/User
|
||||
|
||||
concrete userDomainEng of userDomain = userCoreEng, sharedDomainEng ** {
|
||||
|
||||
lin
|
||||
|
||||
-- CompoundedAnswers
|
||||
-- CompoundedAnswers
|
||||
answerLampLocTurnOn lamp loc = {s = lamp.s ++ "in" ++ loc.s};
|
||||
|
||||
answerLampLocTurnOff lamp loc = {s = lamp.s ++ "in" ++ loc.s};
|
||||
}
|
||||
@@ -1,14 +0,0 @@
|
||||
--# -path=.:../:../../:../Shared/:../../../Resource/Home/:../../../Core:../../../Core/Shared/:../../../Core/User
|
||||
|
||||
concrete userDomainPro of userDomain = userCorePro, sharedDomainPro ** {
|
||||
|
||||
lin
|
||||
|
||||
-- CompoundedAnswers
|
||||
answerLampLocTurnOn lamp loc = {s = "answer(lamp(" ++ lamp.s ++ ")," ++
|
||||
"answer(loc(" ++ loc.s ++ ")"};
|
||||
|
||||
answerLampLocTurnOff lamp loc = {s = "answer(lamp(" ++ lamp.s ++ ")," ++
|
||||
"answer(loc(" ++ loc.s ++ ")"};
|
||||
|
||||
}
|
||||
@@ -1,11 +0,0 @@
|
||||
--# -path=.:../:../../:../Shared/:../../../Resource/Home/:../../../Core:../../../Core/Shared/:../../../Core/User
|
||||
|
||||
concrete userDomainSwe of userDomain = userCoreSwe, sharedDomainSwe ** {
|
||||
|
||||
lin
|
||||
|
||||
-- CompoundedAnswers
|
||||
answerLampLocTurnOn lamp loc = {s = lamp.s ++ "i" ++ loc.s};
|
||||
|
||||
answerLampLocTurnOff lamp loc = {s = lamp.s ++ "i" ++ loc.s};
|
||||
}
|
||||
@@ -1,37 +0,0 @@
|
||||
abstract DB = {
|
||||
|
||||
cat
|
||||
Event;
|
||||
Location;
|
||||
|
||||
fun
|
||||
|
||||
-- anEvent : Event;
|
||||
meeting : Event;
|
||||
presentation : Event;
|
||||
date : Event;
|
||||
lecture : Event;
|
||||
|
||||
{-
|
||||
appointment : Event;
|
||||
class : Event;
|
||||
converence : Event;
|
||||
hairdresser : Event;
|
||||
dentist : Event;
|
||||
party : Event;
|
||||
deadline : Event;
|
||||
-}
|
||||
|
||||
-- aLocation : Location;
|
||||
plaza : Location;
|
||||
station : Location;
|
||||
university : Location;
|
||||
{-
|
||||
fair : Location;
|
||||
ritz : Location;
|
||||
cafe : Location;
|
||||
-}
|
||||
|
||||
|
||||
|
||||
}
|
||||
@@ -1,17 +0,0 @@
|
||||
concrete DBPro of DB = {
|
||||
|
||||
pattern
|
||||
|
||||
-- anEvent = "EVENT";
|
||||
meeting = "meeting";
|
||||
presentation = "presentation";
|
||||
date = "appointment";
|
||||
lecture = "lecture";
|
||||
|
||||
|
||||
-- aLocation = "LOCATION";
|
||||
plaza = "plaza";
|
||||
station = "station";
|
||||
university = "university";
|
||||
|
||||
}
|
||||
@@ -1,29 +0,0 @@
|
||||
concrete DBSwe of DB = {
|
||||
|
||||
pattern
|
||||
|
||||
|
||||
-- anEvent = "EVENT";
|
||||
meeting = ["ett möte"];
|
||||
presentation = ["en presentation"];
|
||||
date = ["en träff"];
|
||||
lecture = ["en lektion"];
|
||||
|
||||
-- aLocation = "LOCATION";
|
||||
plaza = ["på plaza"];
|
||||
station = ["på stationen"];
|
||||
university = ["på universitetet"];
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -1,14 +0,0 @@
|
||||
abstract Lamps = {
|
||||
|
||||
cat Lamp;
|
||||
|
||||
fun
|
||||
|
||||
--aLamp : Lamp;
|
||||
ceilinglamp : Lamp;
|
||||
tablelamp : Lamp;
|
||||
desklamp : Lamp;
|
||||
floorlamp : Lamp;
|
||||
|
||||
|
||||
}
|
||||
@@ -1,12 +0,0 @@
|
||||
concrete LampsEng of Lamps = {
|
||||
|
||||
pattern
|
||||
|
||||
--aLamp = "LIGHT";
|
||||
ceilinglamp = ["the ceiling light"];
|
||||
tablelamp = ["the table light"];
|
||||
desklamp = ["the desk light"];
|
||||
floorlamp = ["the floor light"];
|
||||
|
||||
|
||||
}
|
||||
@@ -1,11 +0,0 @@
|
||||
concrete LampsPro of Lamps = {
|
||||
|
||||
pattern
|
||||
|
||||
--aLamp = "LIGHT";
|
||||
ceilinglamp = "[ceilinglamp]";
|
||||
tablelamp = "[tablelamp]";
|
||||
desklamp = "[desklamp]";
|
||||
floorlamp = "[floorlamp]";
|
||||
|
||||
}
|
||||
@@ -1,11 +0,0 @@
|
||||
concrete LampsSwe of Lamps = {
|
||||
|
||||
pattern
|
||||
|
||||
--aLamp = "LAMPA";
|
||||
ceilinglamp = variants{"taklampan" ; ["en taklampa"]};
|
||||
tablelamp = variants{ "bordslampan" ; ["en bordslampa"]};
|
||||
desklamp = variants{ "skrivbordslampan" ; ["en skrivbordslampa"]};
|
||||
floorlamp = variants{ "golvlampan" ; ["en golvlampa"]};
|
||||
|
||||
}
|
||||
@@ -1,15 +0,0 @@
|
||||
abstract Rooms = {
|
||||
|
||||
cat Room;
|
||||
|
||||
fun
|
||||
|
||||
--aRoom : Room;
|
||||
kitchen : Room;
|
||||
bedroom : Room;
|
||||
hall : Room;
|
||||
livingroom : Room;
|
||||
|
||||
|
||||
|
||||
}
|
||||
@@ -1,12 +0,0 @@
|
||||
concrete RoomsEng of Rooms = {
|
||||
|
||||
pattern
|
||||
|
||||
--aRoom = "ROOM";
|
||||
kitchen = ["the kitchen"];
|
||||
bedroom = ["the bedroom"];
|
||||
hall = ["the hall"];
|
||||
livingroom = ["the living room"];
|
||||
|
||||
|
||||
}
|
||||
@@ -1,11 +0,0 @@
|
||||
concrete RoomsPro of Rooms = {
|
||||
|
||||
pattern
|
||||
|
||||
--aLocation = "ROOM";
|
||||
kitchen = "[kitchen]";
|
||||
bedroom = "[bedroom]";
|
||||
hall = "[hall]";
|
||||
livingroom = "[livingroom]";
|
||||
|
||||
}
|
||||
@@ -1,12 +0,0 @@
|
||||
concrete RoomsSwe of Rooms = {
|
||||
|
||||
pattern
|
||||
|
||||
--aRoom = "RUM";
|
||||
kitchen = "köket";
|
||||
bedroom = "sovrumet";
|
||||
hall = "hallen";
|
||||
livingroom = "vardagsrumet";
|
||||
|
||||
|
||||
}
|
||||
@@ -1,23 +0,0 @@
|
||||
abstract EnglishAlbums = {
|
||||
|
||||
cat Album;
|
||||
|
||||
fun
|
||||
|
||||
london_calling_album : Album;
|
||||
singles_album : Album;
|
||||
wish_album : Album;
|
||||
in_the_city_album : Album;
|
||||
the_sidewinder_album : Album;
|
||||
the_immaculate_collection_album : Album;
|
||||
lets_get_it_on_album : Album;
|
||||
mezzanine_album : Album;
|
||||
protection_album : Album;
|
||||
heads_high_album : Album;
|
||||
every_good_boy_deserves_fudge_album : Album;
|
||||
please_album : Album;
|
||||
doolittle_album : Album;
|
||||
music_for_the_jilted_generation_album : Album;
|
||||
swedish_classics : Album;
|
||||
|
||||
}
|
||||
@@ -1,21 +0,0 @@
|
||||
concrete EnglishAlbumsEng of EnglishAlbums = {
|
||||
|
||||
pattern
|
||||
|
||||
london_calling_album = ["london calling"];
|
||||
singles_album = ["singles"];
|
||||
wish_album = ["wish"];
|
||||
in_the_city_album = ["in the city"];
|
||||
the_sidewinder_album = ["the sidewinder"];
|
||||
the_immaculate_collection_album = ["the immaculate collection"];
|
||||
lets_get_it_on_album = ["lets get it on"];
|
||||
mezzanine_album = ["mezzanine"];
|
||||
protection_album = ["protection"];
|
||||
heads_high_album = ["heads high"];
|
||||
every_good_boy_deserves_fudge_album = ["every good boy deserves fudge"];
|
||||
please_album = ["please"];
|
||||
doolittle_album = ["doolittle"];
|
||||
music_for_the_jilted_generation_album = ["music for the jilted generation"];
|
||||
swedish_classics = ["swedish classics"];
|
||||
|
||||
}
|
||||
@@ -1,21 +0,0 @@
|
||||
concrete EnglishAlbumsPro of EnglishAlbums = {
|
||||
|
||||
pattern
|
||||
|
||||
london_calling_album = "[london,calling]";
|
||||
singles_album = "[singles]";
|
||||
wish_album = "[wish]";
|
||||
in_the_city_album = "[in,the,city]";
|
||||
the_sidewinder_album = "[the,sidewinder]";
|
||||
the_immaculate_collection_album = "[the,immaculate,collection]";
|
||||
lets_get_it_on_album = "[lets,get,it,on]";
|
||||
mezzanine_album = "[mezzanine]";
|
||||
protection_album = "[protection]";
|
||||
heads_high_album = "[heads,high]";
|
||||
every_good_boy_deserves_fudge_album = "[every,good,boy,deserves,fudge]";
|
||||
please_album = "[please]";
|
||||
doolittle_album = "[doolittle]";
|
||||
music_for_the_jilted_generation_album = "[music,for,the,jilted,generation]";
|
||||
swedish_classics = "[svenska,klassiker]";
|
||||
|
||||
}
|
||||
@@ -1,62 +0,0 @@
|
||||
abstract EnglishArtists = {
|
||||
|
||||
cat
|
||||
|
||||
Artist;
|
||||
|
||||
fun
|
||||
-- ENGELSKA
|
||||
|
||||
-- ARTIST
|
||||
beborn_beton : Artist;
|
||||
clash : Artist;
|
||||
covenant : Artist;
|
||||
cure : Artist;
|
||||
enigma : Artist;
|
||||
garbage : Artist;
|
||||
jam : Artist;
|
||||
kate_bush : Artist;
|
||||
lee_morgan : Artist;
|
||||
madonna : Artist;
|
||||
marvin_gaye : Artist;
|
||||
massive_attack : Artist;
|
||||
michael_jackson : Artist;
|
||||
morlocks : Artist;
|
||||
morrisey : Artist;
|
||||
mr_vegas : Artist;
|
||||
mudhoney : Artist;
|
||||
nitzer_ebb : Artist;
|
||||
pain : Artist;
|
||||
pet_shop_boys : Artist;
|
||||
pixies : Artist;
|
||||
prodigy : Artist;
|
||||
project_pitchfork : Artist;
|
||||
vnv_nation : Artist;
|
||||
britney_spears : Artist;
|
||||
usher : Artist;
|
||||
fifty_cent : Artist;
|
||||
green_day : Artist;
|
||||
billy_idol : Artist;
|
||||
elvis_presley : Artist;
|
||||
shania_twain : Artist;
|
||||
trace_adkins : Artist;
|
||||
the_chemical_brothers : Artist;
|
||||
eminem : Artist;
|
||||
ozzy_osbourne : Artist;
|
||||
norah_jones : Artist;
|
||||
jessica_simpson : Artist;
|
||||
guns_and_roses : Artist;
|
||||
europe : Artist;
|
||||
led_zeppelin : Artist;
|
||||
the_cardigans : Artist;
|
||||
ace_of_base : Artist;
|
||||
atomic_swing : Artist;
|
||||
jessica_simpson : Artist;
|
||||
creeps : Artist;
|
||||
eagle_eye_cherry : Artist;
|
||||
stephen_simmonds : Artist;
|
||||
the_ark : Artist;
|
||||
trance_dance : Artist;
|
||||
vacuum : Artist;
|
||||
|
||||
}
|
||||
@@ -1,56 +0,0 @@
|
||||
concrete EnglishArtistsEng of EnglishArtists = {
|
||||
|
||||
pattern
|
||||
|
||||
beborn_beton = ["beborn beton"];
|
||||
clash = "clash";
|
||||
covenant = "covenant";
|
||||
cure = "cure";
|
||||
enigma = "enigma";
|
||||
garbage = "garbage";
|
||||
jam = "jam";
|
||||
kate_bush = ["kate bush"];
|
||||
lee_morgan = ["lee morgan"];
|
||||
madonna = "madonna";
|
||||
marvin_gaye = ["mavin gaye"];
|
||||
massive_attack = ["massive attack"];
|
||||
michael_jackson = ["michael jackson"];
|
||||
morlocks = "morlocks";
|
||||
morrisey = "morrisey";
|
||||
mr_vegas = ["mister vegas"];
|
||||
mudhoney = "mudhoney";
|
||||
nitzer_ebb = ["nitzer ebb"];
|
||||
pain = "pain";
|
||||
pet_shop_boys = ["pet shop boys"];
|
||||
pixies = "pixies";
|
||||
prodigy = "prodigy";
|
||||
project_pitchfork = ["project pitchfork"];
|
||||
vnv_nation = ["vnv nation"];
|
||||
britney_spears = ["britney spears"];
|
||||
usher = "usher";
|
||||
fifty_cent = ["fifty cent"];
|
||||
green_day = ["green day"];
|
||||
billy_idol = ["billy idol"];
|
||||
elvis_presley = ["elvis presley"];
|
||||
shania_twain = ["shania twain"];
|
||||
trace_adkins = ["trace adkins"];
|
||||
the_chemical_brothers = ["the chemical brothers"];
|
||||
eminem = "eminem";
|
||||
ozzy_osbourne = ["ozzy osbourne"];
|
||||
norah_jones = ["norah jones"];
|
||||
jessica_simpson = ["jessica simpson"];
|
||||
guns_and_roses = ["guns and roses"];
|
||||
europe = "europe";
|
||||
led_zeppelin = ["led zeppelin"];
|
||||
the_cardigans = ["the cardigans"];
|
||||
ace_of_base = ["ace of base"];
|
||||
atomic_swing = ["atomic swing"];
|
||||
jessica_simpson = ["jessica simpson"];
|
||||
creeps = "creeps";
|
||||
eagle_eye_cherry = ["eagle eye cherry"];
|
||||
stephen_simmonds = ["stephen simmonds"];
|
||||
the_ark = ["the ark"];
|
||||
trance_dance = ["trance dance"];
|
||||
vacuum = "vacuum";
|
||||
|
||||
}
|
||||
@@ -1,57 +0,0 @@
|
||||
concrete EnglishArtistsPro of EnglishArtists = {
|
||||
|
||||
pattern
|
||||
|
||||
beborn_beton = "[beborn,beton]";
|
||||
clash = "[clash]";
|
||||
covenant = "[covenant]";
|
||||
cure = "[cure]";
|
||||
enigma = "[enigma]";
|
||||
garbage = "[garbage]";
|
||||
jam = "[jam]";
|
||||
kate_bush = "[kate,bush]";
|
||||
lee_morgan = "[lee,morgan]";
|
||||
madonna = "[madonna]";
|
||||
marvin_gaye = "[mavin,gaye]";
|
||||
massive_attack = "[massive,attack]";
|
||||
michael_jackson = "[michael,jackson]";
|
||||
morlocks = "[morlocks]";
|
||||
morrisey = "[morrisey]";
|
||||
mr_vegas = "[mister,vegas]";
|
||||
mudhoney = "[mudhoney]";
|
||||
nitzer_ebb = "[nitzer,ebb]";
|
||||
pain = "[pain]";
|
||||
pet_shop_boys = "[pet,shop,boys]";
|
||||
pixies = "[pixies]";
|
||||
prodigy = "[prodigy]";
|
||||
project_pitchfork = "[project,pitchfork]";
|
||||
vnv_nation = "[vnv,nation]";
|
||||
britney_spears = "[britney,spears]";
|
||||
usher = "[usher]";
|
||||
fifty_cent = "[fifty,cent]";
|
||||
green_day = "[green,day]";
|
||||
billy_idol = "[billy,idol]";
|
||||
elvis_presley = "[elvis,presley]";
|
||||
shania_twain = "[shania,twain]";
|
||||
trace_adkins = "[trace,adkins]";
|
||||
the_chemical_brothers = "[the,chemical,brothers]";
|
||||
eminem = "[eminem]";
|
||||
ozzy_osbourne = "[ozzy,osbourne]";
|
||||
norah_jones = "[norah,jones]";
|
||||
jessica_simpson = "[jessica,simpson]";
|
||||
guns_and_roses = "[guns,and,roses]";
|
||||
europe = "[europe]";
|
||||
led_zeppelin = "[led,zeppelin]";
|
||||
the_cardigans = "[the,cardigans]";
|
||||
ace_of_base = "[ace,of,base]";
|
||||
atomic_swing = "[atomic,swing]";
|
||||
jessica_simpson = "[jessica,simpson]";
|
||||
creeps = "[creeps]";
|
||||
eagle_eye_cherry = "[eagle,eye,cherry]";
|
||||
stephen_simmonds = "[stephen,simmonds]";
|
||||
the_ark = "[the,ark]";
|
||||
trance_dance = "[trance,dance]";
|
||||
vacuum = "[vacuum]";
|
||||
|
||||
|
||||
}
|
||||
@@ -1,11 +0,0 @@
|
||||
abstract EnglishRadioStations = {
|
||||
|
||||
cat Station;
|
||||
|
||||
fun
|
||||
|
||||
digital_gunfire : Station;
|
||||
rant_radio : Station;
|
||||
|
||||
|
||||
}
|
||||
@@ -1,8 +0,0 @@
|
||||
concrete EnglishRadioStationsEng of EnglishRadioStations = {
|
||||
|
||||
pattern
|
||||
|
||||
digital_gunfire = ["digital gunfire"];
|
||||
rant_radio = ["rant radio"];
|
||||
|
||||
}
|
||||
@@ -1,8 +0,0 @@
|
||||
concrete EnglishRadioStationsPro of EnglishRadioStations = {
|
||||
|
||||
pattern
|
||||
|
||||
digital_gunfire = "[digital,gunfire]";
|
||||
rant_radio = "[rant,radio]";
|
||||
|
||||
}
|
||||
@@ -1,57 +0,0 @@
|
||||
abstract EnglishSongs = {
|
||||
cat Song;
|
||||
|
||||
fun
|
||||
|
||||
another_world : Song;
|
||||
deeper_than_the_usual_feeling : Song;
|
||||
london_calling : Song;
|
||||
should_i_stay_or_should_i_go : Song;
|
||||
dead_stars : Song;
|
||||
like_tears_in_rain : Song;
|
||||
figurehead : Song;
|
||||
leviathan : Song;
|
||||
stalker : Song;
|
||||
friday_im_in_love : Song;
|
||||
sadness : Song;
|
||||
i_think_im_paranoid : Song;
|
||||
in_the_city : Song;
|
||||
time_for_truth : Song;
|
||||
the_man_with_the_child_in_his_eyes : Song;
|
||||
totem_pole : Song;
|
||||
lucky_star : Song;
|
||||
material_girl : Song;
|
||||
if_i_should_die_tonight : Song;
|
||||
angel : Song;
|
||||
teardrop : Song;
|
||||
sly : Song;
|
||||
sex_by_force : Song;
|
||||
ars_magica : Song;
|
||||
razors_through_flesh : Song;
|
||||
heads_high : Song;
|
||||
latest_news : Song;
|
||||
good_enough : Song;
|
||||
thorn : Song;
|
||||
let_beauty_loose : Song;
|
||||
eleanor_rigby : Song;
|
||||
west_end_girls : Song;
|
||||
suburbia : Song;
|
||||
debaser : Song;
|
||||
poison : Song;
|
||||
existence : Song;
|
||||
darkangel : Song;
|
||||
rubicon : Song;
|
||||
all_that_she_wants : Song;
|
||||
the_final_countdown : Song;
|
||||
stone_me_into_the_groove : Song;
|
||||
oh_i_like_it : Song;
|
||||
save_tonight : Song;
|
||||
tears_never_dry : Song;
|
||||
it_takes_a_fool_to_remain_sain : Song;
|
||||
youre_gonna_get_it : Song;
|
||||
i_breathe : Song;
|
||||
legion : Song;
|
||||
standing : Song;
|
||||
like_a_prayer : Song;
|
||||
|
||||
}
|
||||
@@ -1,56 +0,0 @@
|
||||
concrete EnglishSongsEng of EnglishSongs = {
|
||||
|
||||
pattern
|
||||
|
||||
another_world = ["another world"];
|
||||
deeper_than_the_usual_feeling = ["deeper then the usual feeling"];
|
||||
london_calling = ["london calling"];
|
||||
should_i_stay_or_should_i_go = ["should i stay or should i go"];
|
||||
dead_stars = ["dead stars"];
|
||||
like_tears_in_rain = ["like tears in rain"];
|
||||
figurehead = ["figurehead"];
|
||||
leviathan = ["leviathan"];
|
||||
stalker = ["stalker"];
|
||||
friday_im_in_love = ["friday im in love"];
|
||||
sadness = ["sadness"];
|
||||
i_think_im_paranoid = ["i think im paranoid"];
|
||||
in_the_city = ["in the city"];
|
||||
time_for_truth = ["time for truth"];
|
||||
the_man_with_the_child_in_his_eyes = ["the man with the child in his eyes"];
|
||||
totem_pole = ["totem pole"];
|
||||
lucky_star = ["lucky star"];
|
||||
material_girl = ["material girl"];
|
||||
if_i_should_die_tonight = ["if i should die tonight"];
|
||||
angel = ["angel"];
|
||||
teardrop = ["teardrop"];
|
||||
sly = ["sly"];
|
||||
sex_by_force = ["sex by force"];
|
||||
ars_magica = ["ars magica"];
|
||||
razors_through_flesh = ["razors through flesh"];
|
||||
heads_high = ["heads high"];
|
||||
latest_news = ["latest news"];
|
||||
good_enough = ["good enough"];
|
||||
thorn = ["thorn"];
|
||||
let_beauty_loose = ["let beauty loose"];
|
||||
eleanor_rigby = ["eleanor rigby"];
|
||||
west_end_girls = ["west end girls"];
|
||||
suburbia = ["suburbia"];
|
||||
debaser = ["debaser"];
|
||||
poison = ["poison"];
|
||||
existence = ["existance"];
|
||||
darkangel = ["darkangel"];
|
||||
rubicon = ["rubicon"];
|
||||
all_that_she_wants = ["all that she wants"];
|
||||
the_final_countdown = ["the final countown"];
|
||||
stone_me_into_the_groove = ["stone me into the groove"];
|
||||
oh_i_like_it = ["oh i like it"];
|
||||
save_tonight = ["save tonight"];
|
||||
tears_never_dry = ["tears never dry"];
|
||||
it_takes_a_fool_to_remain_sain = ["it takes s fool to remain sain"];
|
||||
youre_gonna_get_it = ["youre gonna get it"];
|
||||
i_breathe = ["i breathe"];
|
||||
legion = ["legion"];
|
||||
standing = ["standing"];
|
||||
like_a_prayer = ["like a prayer"];
|
||||
|
||||
}
|
||||
@@ -1,56 +0,0 @@
|
||||
concrete EnglishSongsPro of EnglishSongs = {
|
||||
|
||||
pattern
|
||||
|
||||
another_world = "[another,world]";
|
||||
deeper_than_the_usual_feeling = "[deeper,then,the,usual,feeling]";
|
||||
london_calling = "[london,calling]";
|
||||
should_i_stay_or_should_i_go = "[should,i,stay,or,should,i,go]";
|
||||
dead_stars = "[dead,stars]";
|
||||
like_tears_in_rain = "[like,tears,in,rain]";
|
||||
figurehead = "[figurehead]";
|
||||
leviathan = "[leviathan]";
|
||||
stalker = "[stalker]";
|
||||
friday_im_in_love = "[friday,im,in,love]";
|
||||
sadness = "[sadness]";
|
||||
i_think_im_paranoid = "[i,think,im,paranoid]";
|
||||
in_the_city = "[in,the,city]";
|
||||
time_for_truth = "[time,for,truth]";
|
||||
the_man_with_the_child_in_his_eyes = "[the,man,with,the,child,in,his,eyes]";
|
||||
totem_pole = "[totem,pole]";
|
||||
lucky_star = "[lucky,star]";
|
||||
material_girl = "[material,girl]";
|
||||
if_i_should_die_tonight = "[if,i,should,die,tonight]";
|
||||
angel = "[angel]";
|
||||
teardrop = "[teardrop]";
|
||||
sly = "[sly]";
|
||||
sex_by_force = "[sex,by,force]";
|
||||
ars_magica = "[ars,magica]";
|
||||
razors_through_flesh = "[razors,through,flesh]";
|
||||
heads_high = "[heads,high]";
|
||||
latest_news = "[latest,news]";
|
||||
good_enough = "[good,enough]";
|
||||
thorn = "[thorn]";
|
||||
let_beauty_loose = "[let,beauty,loose]";
|
||||
eleanor_rigby = "[eleanor,rigby]";
|
||||
west_end_girls = "[west,end,girls]";
|
||||
suburbia = "[suburbia]";
|
||||
debaser = "[debaser]";
|
||||
poison = "[poison]";
|
||||
existence = "[existance]";
|
||||
darkangel = "[darkangel]";
|
||||
rubicon = "[rubicon]";
|
||||
all_that_she_wants = "[all,that,she,wants]";
|
||||
the_final_countdown = "[the,final,countown]";
|
||||
stone_me_into_the_groove = "[stone,me,into,trh,groove]";
|
||||
oh_i_like_it = "[oh,i,like,it]";
|
||||
save_tonight = "[save,tonight]";
|
||||
tears_never_dry = "[tears,never,dry]";
|
||||
it_takes_a_fool_to_remain_sain = "[it,takes,s,fool,to,remain,sain]";
|
||||
youre_gonna_get_it = "[youre,gonna,get,it]";
|
||||
i_breathe = "[i,breathe]";
|
||||
legion = "[legion]";
|
||||
standing = "[standing]";
|
||||
like_a_prayer = "[like,a,prayer]";
|
||||
|
||||
}
|
||||
@@ -1,11 +0,0 @@
|
||||
abstract SwedishAlbums = {
|
||||
|
||||
cat Album;
|
||||
|
||||
fun
|
||||
|
||||
peps_one : Album;
|
||||
peps_two : Album;
|
||||
swedish_classics : Album;
|
||||
|
||||
}
|
||||
@@ -1,10 +0,0 @@
|
||||
concrete SwedishAlbumsPro of SwedishAlbums = {
|
||||
|
||||
pattern
|
||||
|
||||
peps_one = "[peps,bitar,ett]";
|
||||
peps_two = "[peps,bitar,två]";
|
||||
swedish_classics = "[svenska,klassiker]";
|
||||
|
||||
|
||||
}
|
||||
@@ -1,10 +0,0 @@
|
||||
concrete SwedishAlbumsSwe of SwedishAlbums = {
|
||||
|
||||
pattern
|
||||
|
||||
swedish_classics = ["svenska klassiker"];
|
||||
peps_one = ["peps bitar ett"];
|
||||
peps_two = ["peps bitar två"];
|
||||
|
||||
|
||||
}
|
||||
@@ -1,58 +0,0 @@
|
||||
abstract SwedishArtists = {
|
||||
|
||||
cat Artist;
|
||||
|
||||
fun
|
||||
|
||||
abba : Artist;
|
||||
adolphson_och_falk : Artist;
|
||||
anne_lie_ryde : Artist;
|
||||
bo_kaspers_orkester : Artist;
|
||||
christer_sandelin : Artist;
|
||||
dan_hylander_och_rmb : Artist;
|
||||
di_leva : Artist;
|
||||
dilba : Artist;
|
||||
docent_dod : Artist;
|
||||
dr_alban : Artist;
|
||||
ebba_gron : Artist;
|
||||
eldkvarn : Artist;
|
||||
eric_gadd : Artist;
|
||||
eva_dahlgren : Artist;
|
||||
freda : Artist;
|
||||
gyllende_tider : Artist;
|
||||
imperiet : Artist;
|
||||
irma : Artist;
|
||||
jakob_hellman : Artist;
|
||||
jumper : Artist;
|
||||
kent : Artist;
|
||||
lars_winnerback : Artist;
|
||||
lisa_ekdahl : Artist;
|
||||
lisa_nilsson : Artist;
|
||||
lolita_pop : Artist;
|
||||
lustans_lakejer : Artist;
|
||||
marie_fredriksson : Artist;
|
||||
mauro_scocco : Artist;
|
||||
mikael_rickfors : Artist;
|
||||
mikael_wiehe : Artist;
|
||||
monica_tornell : Artist;
|
||||
nordman : Artist;
|
||||
norum_och_nilsson : Artist;
|
||||
orup : Artist;
|
||||
patrik_isaksson : Artist;
|
||||
peter_lemarc : Artist;
|
||||
petter : Artist;
|
||||
peps_persson : Artist;
|
||||
ratata : Artist;
|
||||
robyn : Artist;
|
||||
roger_pontare : Artist;
|
||||
roxette : Artist;
|
||||
staffan_hellstrand : Artist;
|
||||
stakka_bo : Artist;
|
||||
stefan_andersson : Artist;
|
||||
stina_nordenstam : Artist;
|
||||
tomas_ledin : Artist;
|
||||
ulf_lundell : Artist;
|
||||
uno_svenningsson : Artist;
|
||||
viba_femba : Artist;
|
||||
|
||||
}
|
||||
@@ -1,56 +0,0 @@
|
||||
concrete SwedishArtistsPro of SwedishArtists = {
|
||||
|
||||
pattern
|
||||
|
||||
abba = "[abba]";
|
||||
adolphson_och_falk = "[adolphson,och,falk]";
|
||||
anne_lie_ryde = "[anne-lie,ryde]";
|
||||
bo_kaspers_orkester = "[bo,kaspers,orkester]";
|
||||
christer_sandelin = "[christer,sandelin]";
|
||||
dan_hylander_och_rmb = "[dan,hylander,och,rmb]";
|
||||
di_leva = "[di,leva]";
|
||||
dilba = "[dilba]";
|
||||
docent_dod = "[docent,dod]";
|
||||
dr_alban = "[dr,alban]";
|
||||
ebba_gron = "[ebba,gron]";
|
||||
eldkvarn = "[eldkvarn]";
|
||||
eric_gadd = "[eric,gadd]";
|
||||
eva_dahlgren = "[eva,dahlgren]";
|
||||
freda = "[freda]";
|
||||
gyllende_tider = "[gyllende,tider]";
|
||||
imperiet = "[imperiet]";
|
||||
irma = "[irma]";
|
||||
jakob_hellman = "[jakob,hellman]";
|
||||
jumper = "[jumper]";
|
||||
kent = "[kent]";
|
||||
lars_winnerback = "[lars,winnerback]";
|
||||
lisa_ekdahl = "[lisa,ekdahl]";
|
||||
lisa_nilsson = "[lisa,nilsson]";
|
||||
lolita_pop = "[lolita,pop]";
|
||||
lustans_lakejer = "[lustans,lakejer]";
|
||||
marie_fredriksson = "[marie,fredriksson]";
|
||||
mauro_scocco = "[mauro,scocco]";
|
||||
mikael_rickfors = "[mikael,rickfors]";
|
||||
mikael_wiehe = "[mikael,wiehe]";
|
||||
monica_tornell = "[monica,tornell]";
|
||||
nordman = "[nordman]";
|
||||
norum_och_nilsson = "[norum,och,nilsson]";
|
||||
orup = "[orup]";
|
||||
patrik_isaksson = "[patrik,isaksson]";
|
||||
peter_lemarc = "[peter,lemarc]";
|
||||
petter = "[petter]";
|
||||
peps_persson = "[peps,persson]";
|
||||
ratata = "[ratata]";
|
||||
robyn = "[robyn]";
|
||||
roger_pontare = "[roger,pontare]";
|
||||
roxette = "[roxette]";
|
||||
staffan_hellstrand = "[staffan,hellstrand]";
|
||||
stakka_bo = "[stakka_bo]";
|
||||
stefan_andersson = "[stefan,andersson]";
|
||||
stina_nordenstam = "[stina,nordenstam]";
|
||||
tomas_ledin = "[tomas,ledin]";
|
||||
ulf_lundell = "[ulf,lundell]";
|
||||
uno_svenningsson = "[uno,svenningsson]";
|
||||
viba_femba = "[viba,femba]";
|
||||
|
||||
}
|
||||
@@ -1,55 +0,0 @@
|
||||
concrete SwedishArtistsSwe of SwedishArtists = {
|
||||
|
||||
pattern
|
||||
|
||||
abba = ["abba"];
|
||||
adolphson_och_falk = ["adolphson och falk"];
|
||||
anne_lie_ryde = ["anne-lie rydé"];
|
||||
bo_kaspers_orkester = ["bo kaspers orkester"];
|
||||
christer_sandelin = ["christer sandelin"];
|
||||
dan_hylander_och_rmb = ["dan hylander och rmb"];
|
||||
di_leva = ["di leva"];
|
||||
dilba = ["dilba"];
|
||||
docent_dod = ["docent död"];
|
||||
dr_alban = ["dr alban"];
|
||||
ebba_gron = ["ebba grön"];
|
||||
eldkvarn = ["eldkvarn"];
|
||||
eric_gadd = ["eric gadd"];
|
||||
eva_dahlgren = ["eva dahlgren"];
|
||||
freda = ["freda"];
|
||||
gyllende_tider = ["gyllene tider"];
|
||||
imperiet = ["imperiet"];
|
||||
irma = ["irma"];
|
||||
jakob_hellman = ["jakob hellman"];
|
||||
jumper = ["jumper"];
|
||||
kent = ["kent"];
|
||||
lars_winnerback = ["lars winnerbäck"];
|
||||
lisa_ekdahl = ["lisa ekdahl"];
|
||||
lisa_nilsson = ["lisa nilsson"];
|
||||
lolita_pop = ["lolita pop"];
|
||||
lustans_lakejer = ["lustans lakejer"];
|
||||
marie_fredriksson = ["marie fredriksson"];
|
||||
mauro_scocco = ["mauro scocco"];
|
||||
mikael_rickfors = ["mikael rickfors"];
|
||||
mikael_wiehe = ["mikael wiehe"];
|
||||
monica_tornell = ["monica törnell"];
|
||||
nordman = ["nordman"];
|
||||
norum_och_nilsson = ["norum och nilsson"];
|
||||
orup = ["orup"];
|
||||
patrik_isaksson = ["patrik isaksson"];
|
||||
peter_lemarc = ["peter lemarc"];
|
||||
petter = ["petter"];
|
||||
peps_persson = ["peps persson"];
|
||||
ratata = ["ratata"];
|
||||
robyn = ["robyn"];
|
||||
roger_pontare = ["roger pontare"];
|
||||
roxette = ["roxette"];
|
||||
staffan_hellstrand = ["staffan hellstrand"];
|
||||
stakka_bo = ["stakka_bo"];
|
||||
stefan_andersson = ["stefan andersson"];
|
||||
stina_nordenstam = ["stina nordenstam"];
|
||||
tomas_ledin = ["tomas ledin"];
|
||||
ulf_lundell = ["ulf lundell"];
|
||||
uno_svenningsson = ["uno svenningsson"];
|
||||
viba_femba = ["viba femba"];
|
||||
}
|
||||
@@ -1,12 +0,0 @@
|
||||
abstract SwedishRadioStations = {
|
||||
|
||||
cat Station;
|
||||
|
||||
fun
|
||||
|
||||
lugna_favoriter : Station;
|
||||
sveriges_radio : Station;
|
||||
mix_megapol : Station;
|
||||
stockholm : Station;
|
||||
|
||||
}
|
||||
@@ -1,10 +0,0 @@
|
||||
concrete SwedishRadioStationsPro of SwedishRadioStations = {
|
||||
|
||||
pattern
|
||||
|
||||
lugna_favoriter = "[lugna,favoriter]";
|
||||
sveriges_radio = "[sveriges,radio]";
|
||||
mix_megapol = "[mix,megapol]";
|
||||
stockholm = "[stockholm,närradio]";
|
||||
|
||||
}
|
||||
@@ -1,10 +0,0 @@
|
||||
concrete SwedishRadioStationsSwe of SwedishRadioStations = {
|
||||
|
||||
pattern
|
||||
|
||||
lugna_favoriter = ["lugna favoriter"];
|
||||
sveriges_radio = ["sveriges radio"];
|
||||
mix_megapol = ["mix megapol"];
|
||||
stockholm = ["stockholm närradio"];
|
||||
|
||||
}
|
||||
@@ -1,58 +0,0 @@
|
||||
abstract SwedishSongs = {
|
||||
|
||||
cat Song;
|
||||
|
||||
fun
|
||||
|
||||
blinkar_bla : Song;
|
||||
segla_pa_ett_moln : Song;
|
||||
undantag : Song;
|
||||
det_hon_vill_ha : Song;
|
||||
skuggor_i_skymningen : Song;
|
||||
vem_ska_jag_tro_pa : Song;
|
||||
solglasogon : Song;
|
||||
atta_hundra_grader : Song;
|
||||
karlekens_tunga : Song;
|
||||
angeln_i_rummet : Song;
|
||||
vem_tander_stjarnorna : Song;
|
||||
vindarna : Song;
|
||||
flickorna_pa_tv_tva : Song;
|
||||
du_ska_va_president : Song;
|
||||
precis_som_du : Song;
|
||||
vara_vanner : Song;
|
||||
om_du_var_har : Song;
|
||||
kom_ihag_mig : Song;
|
||||
vem_vet : Song;
|
||||
himlen_runt_hornet : Song;
|
||||
diamanter : Song;
|
||||
efter_stormen : Song;
|
||||
det_finns : Song;
|
||||
sarah : Song;
|
||||
vingar : Song;
|
||||
flickan_och_krakan : Song;
|
||||
vintersaga : Song;
|
||||
allt_som_jag_kanner : Song;
|
||||
jag_blir_hellre_jagad_av_vargar : Song;
|
||||
du_far_gora_som_du_vill : Song;
|
||||
hall_om_mig : Song;
|
||||
sag_som_det_ar : Song;
|
||||
vinden_har_vant : Song;
|
||||
jackie : Song;
|
||||
lilla_fagel_bla : Song;
|
||||
sommaren_ar_kort : Song;
|
||||
en_del_av_mitt_hjarta : Song;
|
||||
oppna_landskap : Song;
|
||||
under_ytan : Song;
|
||||
teknikens_under : Song;
|
||||
tva_av_oss : Song;
|
||||
vandraren : Song;
|
||||
under_norrskenet : Song;
|
||||
vill_ha_mer : Song;
|
||||
flykting : Song;
|
||||
sanningens_krigare : Song;
|
||||
i_vargens_spar : Song;
|
||||
nu_tandas_tusen_julejus : Song;
|
||||
alla_alskar_dig : Song;
|
||||
hon_far : Song;
|
||||
|
||||
}
|
||||
@@ -1,56 +0,0 @@
|
||||
concrete SwedishSongsPro of SwedishSongs = {
|
||||
|
||||
pattern
|
||||
|
||||
blinkar_bla = "[blinkar,blå]";
|
||||
segla_pa_ett_moln = "[segla,på,ett,moln]";
|
||||
undantag = "[undantag]";
|
||||
det_hon_vill_ha = "[det,hon,vill,ha]";
|
||||
skuggor_i_skymningen = "[skuggor,i,skymningen]";
|
||||
vem_ska_jag_tro_pa = "[vem,ska,jag,tro,på]";
|
||||
solglasogon = "[solglasögon]";
|
||||
atta_hundra_grader = "[åtta,hundra,grader]";
|
||||
karlekens_tunga = "[kärlekens,tunga]";
|
||||
angeln_i_rummet = "[ängeln,i,rummet]";
|
||||
vem_tander_stjarnorna = "[vem,tänder,stjärnorna]";
|
||||
vindarna = "[vindarna]";
|
||||
flickorna_pa_tv_tva = "[flickorna,på,tv,två]";
|
||||
du_ska_va_president = "[du,ska,va,president]";
|
||||
precis_som_du = "[precis,som,du]";
|
||||
vara_vanner = "[vara,vänner]";
|
||||
om_du_var_har = "[om,du,var,här]";
|
||||
kom_ihag_mig = "[kom,ihåg,mig]";
|
||||
vem_vet = "[vem,vet]";
|
||||
himlen_runt_hornet = "[himlen,runt,hörnet]";
|
||||
diamanter = "[diamanter]";
|
||||
efter_stormen = "[efter,stormen]";
|
||||
det_finns = "[det,finns]";
|
||||
sarah = "[sarah]";
|
||||
vingar = "[vingar]";
|
||||
flickan_och_krakan = "[flickan,och,kråkan]";
|
||||
vintersaga = "[vintersaga]";
|
||||
allt_som_jag_kanner = "[allt,som,jag,känner]";
|
||||
jag_blir_hellre_jagad_av_vargar = "[jag,blir,hellre,jagad,av,vargar]";
|
||||
du_far_gora_som_du_vill = "[du,får,göra,som,du,vill]";
|
||||
hall_om_mig = "[håll,om,mig]";
|
||||
sag_som_det_ar = "[säg,som,det,är]";
|
||||
vinden_har_vant = "[vinden,har,vänt]";
|
||||
jackie = "[jackie]";
|
||||
lilla_fagel_bla = "[lilla,fågel,blå]";
|
||||
sommaren_ar_kort = "[sommaren,är,kort]";
|
||||
en_del_av_mitt_hjarta = "[en,del,av,mitt,hjärta]";
|
||||
oppna_landskap = "[öppna,landskap]";
|
||||
under_ytan = "[under,ytan]";
|
||||
teknikens_under = "[teknikens,under]";
|
||||
tva_av_oss = "[två,av,oss]";
|
||||
vandraren = "[vandraren]";
|
||||
under_norrskenet = "[under,norrskenet]";
|
||||
vill_ha_mer = "[vill,ha,mer]";
|
||||
flykting = "[flykting]";
|
||||
sanningens_krigare = "[sanningens,krigare]";
|
||||
i_vargens_spar = "[i,vargens,spår]";
|
||||
nu_tandas_tusen_julejus = "[nu,tändas,tusen,julejus]";
|
||||
alla_alskar_dig = "[alla,älskar,dig]";
|
||||
hon_far = "[hon,får]";
|
||||
|
||||
}
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user