flora-commits Mailing List for Flora-2 (Page 118)
Brought to you by:
kifer
You can subscribe to this list here.
| 2002 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(59) |
Jun
(43) |
Jul
(4) |
Aug
(4) |
Sep
(102) |
Oct
(20) |
Nov
(47) |
Dec
(32) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2003 |
Jan
(24) |
Feb
(34) |
Mar
(72) |
Apr
(36) |
May
(10) |
Jun
(46) |
Jul
(36) |
Aug
(24) |
Sep
(37) |
Oct
(27) |
Nov
(43) |
Dec
(40) |
| 2004 |
Jan
(35) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(30) |
Aug
(83) |
Sep
(68) |
Oct
(38) |
Nov
(3) |
Dec
(7) |
| 2005 |
Jan
(9) |
Feb
(31) |
Mar
(46) |
Apr
(73) |
May
(21) |
Jun
(1) |
Jul
(32) |
Aug
(33) |
Sep
(3) |
Oct
(28) |
Nov
(4) |
Dec
(23) |
| 2006 |
Jan
(22) |
Feb
(2) |
Mar
(12) |
Apr
(23) |
May
(73) |
Jun
(14) |
Jul
|
Aug
(20) |
Sep
(14) |
Oct
(5) |
Nov
|
Dec
(14) |
| 2007 |
Jan
(54) |
Feb
(81) |
Mar
(286) |
Apr
(313) |
May
(154) |
Jun
(85) |
Jul
(8) |
Aug
(11) |
Sep
(12) |
Oct
(14) |
Nov
(6) |
Dec
(6) |
| 2008 |
Jan
|
Feb
|
Mar
(1) |
Apr
(12) |
May
(4) |
Jun
|
Jul
(13) |
Aug
(22) |
Sep
|
Oct
|
Nov
|
Dec
|
| 2013 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(46) |
Jun
(43) |
Jul
(46) |
Aug
(9) |
Sep
(13) |
Oct
(31) |
Nov
(42) |
Dec
(18) |
| 2014 |
Jan
(7) |
Feb
(7) |
Mar
(11) |
Apr
(13) |
May
(16) |
Jun
(6) |
Jul
(17) |
Aug
|
Sep
(2) |
Oct
|
Nov
(1) |
Dec
|
| 2015 |
Jan
|
Feb
(17) |
Mar
(4) |
Apr
(3) |
May
(2) |
Jun
(3) |
Jul
(2) |
Aug
(3) |
Sep
|
Oct
|
Nov
|
Dec
|
| 2016 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(1) |
Sep
|
Oct
|
Nov
|
Dec
(2) |
| 2017 |
Jan
|
Feb
|
Mar
(1) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
|
Nov
|
Dec
|
| 2019 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
|
From: <ki...@us...> - 2002-05-24 07:08:07
|
Update of /cvsroot/flora/flora-testsuite/apptests/programs
In directory usw-pr-cvs1:/tmp/cvs-serv14275/apptests/programs
Added Files:
GradingPolicy.flr Grade.flr Class.flr .cvsignore
Log Message:
added grading program as a test
--- NEW FILE: GradingPolicy.flr ---
%%%%%%%%%%%% Grading Policy -- Change values as appropriate %%%%%%%%%%%%%
%% After you look at the histogram, fill out
%% gradeMap(Course)[
%% 'A' ->100,
%% 'A-' ->90,
%% 'B+' ->82,
%% 'B' ->74,
%% 'B-' ->66,
%% 'C+' ->60,
%% 'C' ->54,
%% 'C-' ->48,
%% 'D' ->38,
%% 'F' ->1
%% 'NR' ->0
%% ].
%% Then let the program produce the full report and automatically grade
%% students. This also produces a listing suitable for posting on the Web.
weights(_Course):weights.
ranges(_Course):ranges.
thresholds(_Course):thresholds.
gradeMap(_Course):gradeMap.
/*
%% This overrides the default for cse587 -- an example
weights(cse587)[
%% Use -> here, not *->
proj1 ->10
,proj2 ->10
,proj3 ->10
,midterm ->20
,final ->30
].
*/
weights[
%% Use *-> here, not ->
proj1 *->20
,proj2 *->10
,midterm *->30
,final *->40
].
ranges[
%% Use *-> here, not ->
proj1 *->[0,100]
,proj2 *->[0,100]
,midterm *->[0,100]
,final *->[0,100]
].
ranges[averages *-> [Low,High]] :-
Low1 = avg{L | ranges[Asg *-> [L,_]], Asg \== averages},
High1 = avg{H | ranges[Asg *-> [_,H]], Asg \== averages},
round(Low1,Low)@grade,
round(High1,High)@grade.
ranges(Crs)[averages -> [Low,High]] :-
Low1 = avg{L | ranges(Crs)[Asg -> [L,_]], Asg \== averages},
High1 = avg{H | ranges(Crs)[Asg -> [_,H]], Asg \== averages},
round(Low1,Low)@grade,
round(High1,High)@grade.
%% Where to cut off irrelevant scores
thresholds[
%% Use *-> here, not ->
average *->30,
histogram *->40
].
/*
%% This overrides the default for cse306 -- an example
%% Note: -> should be used here, not *->
thresholds(cse306)[
average ->30,
histogram ->40
].
gradeMap(cse306)[
%% Use -> here, not *->
'A' ->84,
'A-' ->81,
'B+' ->76,
'B' ->72,
'B-' ->67,
'C+' ->60,
'C' ->52,
'C-' ->42,
'D' ->38,
'F' ->1,
%% Must be zero
'NR' ->0
].
*/
gradeMap[
%% Use *-> here, not ->
'A' *->90,
'A-' *->87,
'B+' *->82,
'B' *->76,
'B-' *->70,
'C+' *->62,
'C' *->55,
'C-' *->50,
'D' *->45,
'F' *->1,
%% Must be zero
'NR' *->0
].
--- NEW FILE: Grade.flr ---
%% Usage:
%% id_scorelist_report([midterm,proj1,proj2]).
%% id_scorelist_report(gradesForPosting,[midterm,proj1,proj2,final]).
%% full_report([midterm,proj1,proj2]).
%% full_report(finalGrades,[midterm,proj1,proj2,final]).
%% After you look at the histogram, fill out
%% gradeMap(Course)[
%% 'A' ->100,
%% 'A-' ->90,
%% 'B+' ->82,
%% 'B' ->74,
%% 'B-' ->66,
%% 'C+' ->60,
%% 'C' ->54,
%% 'C-' ->48,
%% 'D' ->38,
%% 'F' ->1
%% 'NR' ->0
%% ].
%% Then let the program produce the full report and automatically grade
%% students. This also produces listing suitable for posting on the Web.
#define SEPARATOR '______________________________________________________________________________'
#define MODULE class
:- arguments print_to_file(oid,meta).
%% to pacify undefinedness checker
histogram(null,null,null,null).
%% Redirect the output from Goal to File
print_to_file(File,Goal) :-
tell(File)@prolog(),
cputime(Start)@prolog(),
Goal,
cputime(End)@prolog(),
told@prolog(),
Delta is End - Start,
write('CPU time: ')@prolog(),
writeln(Delta)@flora(io).
%% This also updates the histogram
Stud[#weighted_average(AsgList,Val)] :-
Stud:student@MODULE,
weighted_sum(Stud,AsgList,Result),
totals(AsgList,Stud.course@MODULE, Total),
Val1 is Result/Total,
round(Val1,Val),
updateHistogram(Stud.course@MODULE,averages,Val).
Stud[grade(AsgList)->Val] :-
Stud:student@MODULE,
%% collectset sorts in ascending order
Bounds = collectset{V| gradeMap(Stud.course)[_G->V]@MODULE},
%% but we need in descending order
reverse(Bounds,DescendingBounds)@prolog(basics),
Stud[#weighted_average(AsgList,AvgVal)],
find_grade(Stud,AvgVal,DescendingBounds,Grade),
Val = Grade.
find_grade(Stud,[],_) :- !,
Stud[weighted_average->A],
abort(('Avg ', A, 'for ', Stud, ' is out of range'))@flora(sys).
find_grade(Stud,Avg,[B|Bounds],Grade) :-
B > Avg,
!,
find_grade(Stud,Avg,Bounds,Grade).
find_grade(Stud,Avg,[B|_],Grade) :-
B =< Avg,
!,
gradeMap(Stud.course)[Grade->B]@MODULE.
weighted_sum(_Stud,[],0) :- !.
weighted_sum(Stud,[Asg|AsgList],Res) :-
if (weights(Stud.course)[Asg->Weight]@MODULE,
integer(Weight)@prolog(), Weight > 0)
then (
if Stud[Asg->Score]@MODULE
then (
weighted_sum(Stud,AsgList,Res1),
Res is Weight*Score + Res1
) else
%% Assume Score=0
weighted_sum(Stud,AsgList,Res)
) else
abort(('Missing weight for assignment: ', Asg))@flora(sys).
average(Crs,Asg,Res) :-
if Res = avg{Score| (_Stud:student[course->Crs, Asg->Score])@MODULE,
Score > thresholds(Crs).average@MODULE}
then true
else Res = 0.
%% Does error checking
get_score(Stud,Asg,Score) :-
if ranges(Stud.course)[Asg->[Beg,End]]@MODULE
then true
else abort(('No range information for assignment: ', Asg))@flora(sys),
if Stud[Asg->Score]@MODULE
then
(Score >= Beg, Score =< End, !
; abort(('Out of range score for assignment ',
Asg, ' student ', Stud))@flora(sys)
)
else
Score=Beg.
%% ID_GRADELIST/student
Stud[#print_id_scorelist(AsgList)] :-
print_id(Stud),
Stud[#print_id_scorelist_internal(AsgList)].
_Stud[#print_id_scorelist_internal([])] :- !.
Stud[#print_id_scorelist_internal([Asg|AsgList])] :-
get_score(Stud,Asg,Score),
fmt_write('%7d ',arg(Score))@flora(io),
Stud[#print_id_scorelist_internal(AsgList)].
Stud[#print_id_scorelist_grade(AsgList)] :-
Stud[#print_id_scorelist(AsgList)],
fmt_write(' %s', arg(Stud.grade(AsgList)@grade))@flora(io).
%% Print ID with the first 2 digits stripped
print_id(Stud) :-
%%substring(Stud,2,-1,StrippedID)@prolog(),
if str_sub('USB',Stud,0)@prolog()
then
StrippedID=Stud
else
string_substitute(Stud,[s(7,9)@prolog()],
['XX'],StrippedID)@prolog(string),
fmt_write('%-9s',arg(StrippedID))@flora(io).
Stud[#print_full(AsgList)] :-
Stud[#print_basic_info],
Stud[#print_scores(AsgList)],
Stud[#weighted_average(AsgList,AvgVal)],
fmt_write(' Average: %d\n', arg(AvgVal))@flora(io),
fmt_write(' Grade: %s\n',
arg(Stud.grade(AsgList)@grade))@flora(io),
nl@prolog().
Stud[#print_basic_info] :-
Stud[last->L,first->F,course->C]@MODULE,
fmt_write('%s, %s %s\n', args(L,F,Stud))@flora(io),
fmt_write(' Course: %s\n', args(C))@flora(io).
_Stud[#print_scores([])] :- true.
Stud[#print_scores([Asg|AsgList])] :-
if Stud[Asg->Score]@MODULE
then
fmt_write(' %-9s = %d', asg(Asg,Score))@flora(io)
else
fmt_write(' %-9s = 0', asg(Asg))@flora(io),
nl@prolog(),
Stud[#print_scores(AsgList)].
%%%%%%%%%%% Reports %%%%%%%%%%%%%%%%%%%%%%%%%%
%% Compute total possible scores
init_report(AsgList) :-
insertall{courses(_Crs)|_[course->_Crs]@MODULE},
( courses(Crs),
Total = sum{Val | weights(Crs)[Asg->Val]@MODULE,
member(Asg,AsgList)@prolog(basics)},
insert{totals(AsgList,Crs,Total)},
fail
; true).
print_report(ReportMethod,StudList,AsgList) :-
init_report(AsgList),
keysort(StudList,SortedStud)@prolog(),
print_report_internal(ReportMethod,SortedStud,AsgList).
print_report_internal(_ReportMethod,[],_AsgList) :- !.
print_report_internal(ReportMethod,[_-Stud|StudList],AsgList) :-
Stud[#ReportMethod(AsgList)],
nl@prolog(),
print_report_internal(ReportMethod,StudList,AsgList).
print_averages(_Crs,[]) :- nl@prolog().
print_averages(Crs,[Asg|AsgList]) :-
average(Crs,Asg,Res),
fmt_write('%7.4S ', arg(Res))@flora(io),
print_averages(Crs,AsgList).
%%---------------------------------------------------
%% E.g., id_scorelist_report([proj1,midterm,proj2]).
id_scorelist_report(AsgList) :-
StudList = collectset{V| S:student@MODULE, V=S-S},
print_report(print_id_scorelist,StudList,AsgList),
writeln(SEPARATOR)@prolog(),
( courses(Crs),
fmt_write('Averages (%s):\n\t ',arg(Crs))@flora(io),
print_averages(Crs,AsgList),
fail
; true
).
%% like id_scorelist_report, but also assigns grade
id_scorelist_grade_report(AsgList) :-
StudList = collectset{V| S:student@MODULE, V=S-S},
print_report(print_id_scorelist_grade,StudList,AsgList),
writeln(SEPARATOR)@prolog(),
( courses(Crs),
fmt_write('Averages (%s):\n\t ',arg(Crs))@flora(io),
print_averages(Crs,AsgList),
fail
; true
).
id_scorelist_report(File,AsgList) :-
print_to_file(File, id_scorelist_report(AsgList)).
%% E.g., full_report([proj1,midterm,proj2]).
full_report(AsgList) :-
StudList = collectset{V| (S:student[last->L])@MODULE, V=L-S},
print_report(print_full,StudList,AsgList),
nl@prolog(),
nl@prolog(),
nl@prolog(),
id_scorelist_grade_report(AsgList),
nl@prolog(),
nl@prolog(),
printAllHistograms(averages).
full_report(File,AsgList) :-
print_to_file(File, full_report(AsgList)).
%% Histograms
updateHistogram(Course,Assignment,Value) :-
if histogram(Course,Assignment,Value,NumOfStuds)
then (
delete{histogram(Course,Assignment,Value,NumOfStuds)},
NewVal is NumOfStuds+1,
insert{histogram(Course,Assignment,Value,NewVal)}
)
else
insert{histogram(Course,Assignment,Value,1)}.
printHistogram(Course,Assignment) :-
fmt_write('\nHistogram for: %s/%s\n',
args(Assignment,Course))@flora(io),
writeln('-------------------------------------------')@prolog(),
ranges(Course)[Assignment->[Low,High]]@MODULE,
printHistogramInternal(Course,Assignment,Low,High).
printHistogramInternal(_Course,_Assignment,Low,High) :-
Low > High,
abort(('Bug: Low ', Low, ' exceeds ', High))@flora(sys).
printHistogramInternal(Course,Assignment,Low,High) :-
Low < High,
!,
printHistogramItem(Course,Assignment,High),
NewHigh is High - 1,
printHistogramInternal(Course,Assignment,Low,NewHigh).
printHistogramInternal(Course,Assignment,Low,Low) :-
!,
printHistogramItem(Course,Assignment,Low).
printHistogramItem(Course,Assignment,Val) :-
histogram(Course,Assignment,Val,Number),
!,
fmt_write('%3d %d\n', args(Val,Number))@flora(io).
printHistogramItem(_Course,_Assignment,Val) :-
fmt_write('%3d -\n', arg(Val))@flora(io).
%% Print histograms for all courses that occur in the class file
printAllHistograms(Assignment) :-
( courses(C),
printHistogram(C,Assignment),
nl@prolog(),
fail
; true).
round(X,Result) :- Result is floor(X+0.5)@prolog().
--- NEW FILE: Class.flr ---
%%%%%%%%%%%%%%%%%%%%%%% INSTRUCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% %%
%% Record numeric scores following the -> symbol for the %%
%% corresponding assignments. %%
%% If there are assignments submitted by people who aren't on this %%
%% list, add them at the end of the file in the "Auditors" section. %%
%% The "Auditors" section contains templates, which you should use %%
%% to insert information about these people, as in the example below. %%
%% %%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
#include "GradingPolicy.flr"
%%%%%%%%%%%%%%%%%%%%%%%% Class roster: CS 123 %%%%%%%%%%%%%%%%%%%%%%%%
'111111111':student[
last->'John111',
first->'Doe111',
course->cs123
%%-------------
,quiz->52
,proj1->89
,proj2->90
,midterm->84
,final->79
].
'211111111':student[
last->'John112',
first->'Doe112',
course->cs123
%%-------------
,quiz->89
,proj1->96
,proj2->100
,midterm->85
,final->95
].
'311111111':student[
last->'John113',
first->'Doe113',
course->cs123
%%-------------
,quiz->95
,proj1->94
,proj2->100
,midterm->87
,final->87
].
'411111111':student[
last->'John114',
first->'Doe114',
course->cs123
%%-------------
,quiz->30
,proj1->0
,proj2->0
,midterm->0
,final->0
].
'511111111':student[
last->'John115',
first->'Doe115',
course->cs123
%%-------------
,quiz->45
,proj1->91
,proj2->97
,midterm->84
,final->77
].
'611111111':student[
last->'John116',
first->'Doe116',
course->cs123
%%-------------
,quiz->50
,proj1->93
,proj2->100
,midterm->84
,final->85
].
'711111111':student[
last->'John117',
first->'Doe117',
course->cs123
%%-------------
,quiz->94
,proj1->85
,proj2->100
,midterm->72
,final->75
].
'811111111':student[
last->'John118',
first->'Doe118',
course->cs123
%%-------------
,quiz->59
,proj1->96
,proj2->100
,midterm->86
,final->93
].
'911111111':student[
last->'John119',
first->'Doe119',
course->cs123
%%-------------
,quiz->51
,proj1->93
,proj2->100
,midterm->81
,final->76
].
'101111111':student[
last->'John110',
first->'Doe110',
course->cs123
%%-------------
,quiz->58
,proj1->85
,proj2->97
,midterm->85
,final->90
].
'121111111':student[
last->'John121',
first->'Doe121 Ding',
course->cs123
%%-------------
,quiz->72
,proj1->94
,proj2->96
,midterm->79
,final->65
].
'131111111':student[
last->'John131',
first->'Doe131',
course->cs123
%%-------------
,quiz->42
,proj1->93
,proj2->100
,midterm->90
,final->87
].
'141111111':student[
last->'John141',
first->'Doe141',
course->cs123
%%-------------
,quiz->87
,proj1->92
,proj2->100
,midterm->92
,final->93
].
'151111111':student[
last->'John151',
first->'Doe151',
course->cs123
%%-------------
,quiz->66
,proj1->93
,proj2->100
,midterm->76
,final->84
].
'161111111':student[
last->'John161',
first->'Doe161',
course->cs123
%%-------------
,quiz->74
,proj1->94
,proj2->95
,midterm->67
,final->63
].
'171111111':student[
last->'John171',
first->'Doe171',
course->cs123
%%-------------
,quiz->0
,proj1->0
,proj2->0
,midterm->0
,final->0
].
'181111111':student[
last->'John181',
first->'Doe181',
course->cs123,
remarks->''
%%-------------
,quiz->75
,proj1->0
,proj2->0
,midterm->0
,final->0
].
'191111111':student[
last->'John191',
first->'Doe191',
course->cs123
%%-------------
,quiz->15
,proj1->0
,proj2->0
,midterm->0
,final->0
].
'112111111':student[
last->'John211',
first->'Doe211',
course->cs123
%%-------------
,quiz->18
,proj1->0
,proj2->0
,midterm->0
,final->0
].
'113111111':student[
last->'John311',
first->'Doe311',
course->cs123,
remarks->''
%%-------------
,quiz->80
,proj1->92
,proj2->100
,midterm->82
,final->46
].
'114111111':student[
last->'John411',
first->'Doe411',
course->cs123
%%-------------
,quiz->81
,proj1->87
,proj2->90
,midterm->83
,final->72
].
'115111111':student[
last->'John511',
first->'Doe511',
course->cs123
%%-------------
,quiz->57
,proj1->90
,proj2->98
,midterm->92
,final->63
].
'116111111':student[
last->'John611',
first->'Doe611',
course->cs123,
emil->xsong,
remarks->''
%%-------------
,quiz->79
,proj1->91
,proj2->95
,midterm->75
,final->71
].
'117111111':student[
last->'John711',
first->'Doe711',
course->cs123
%%-------------
,quiz->74
,proj1->92
,proj2->96
,midterm->81
,final->88
].
'118111111':student[
last->'John811',
first->'Doe811',
course->cs123
%%-------------
,quiz->32
,proj1->0
,proj2->0
,midterm->0
,final->0
].
'111911111':student[
last->'John911',
first->'Doe911',
course->cs123
%%-------------
,quiz->76
,proj1->91
,proj2->100
,midterm->90
,final->89
].
'111511111':student[
last->'John011',
first->'Doe011',
course->cs123
%%-------------
,quiz->0
,proj1->0
,proj2->0
,midterm->0
,final->0
].
'111141111':student[
last->'John2111',
first->'Doe2111',
course->cs123
%%-------------
,quiz->62
,proj1->90
,proj2->95
,midterm->82
,final->84
].
'111161111':student[
last->'John5111',
first->'Doe5111',
course->cs123
%%-------------
,quiz->48
,proj1->87
,proj2->100
,midterm->79
,final->75
].
--- NEW FILE: .cvsignore ---
*.xwam
*.P
*_new
temp
*.fdb
*.fld
|
|
From: <ki...@us...> - 2002-05-24 07:08:07
|
Update of /cvsroot/flora/flora-testsuite/apptests In directory usw-pr-cvs1:/tmp/cvs-serv14275/apptests Modified Files: gradetest.flr Log Message: added grading program as a test Index: gradetest.flr =================================================================== RCS file: /cvsroot/flora/flora-testsuite/apptests/gradetest.flr,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- gradetest.flr 24 May 2002 07:04:46 -0000 1.1 +++ gradetest.flr 24 May 2002 07:08:04 -0000 1.2 @@ -1,5 +1,5 @@ -?- ['auxiliary/Grade' >> grade], ['auxiliary/Class' >> class]. +?- ['programs/Grade' >> grade], ['programs/Class' >> class]. pretest :- |
|
From: <ki...@us...> - 2002-05-24 07:07:00
|
Update of /cvsroot/flora/flora-testsuite/apptests/programs In directory usw-pr-cvs1:/tmp/cvs-serv14057/apptests/programs Log Message: Directory /cvsroot/flora/flora-testsuite/apptests/programs added to the repository |
|
From: <ki...@us...> - 2002-05-24 07:04:50
|
Update of /cvsroot/flora/flora-testsuite/apptests
In directory usw-pr-cvs1:/tmp/cvs-serv13572/apptests
Added Files:
gradetest_old gradetest.flr .cvsignore
Log Message:
added grading program as a test
--- NEW FILE: gradetest_old ---
John011, Doe011 111511111
Course: cs123
midterm = 0
proj1 = 0
proj2 = 0
final = 0
Average: 0
Grade: NR
John110, Doe110 101111111
Course: cs123
midterm = 85
proj1 = 85
proj2 = 97
final = 90
Average: 88
Grade: A-
John111, Doe111 111111111
Course: cs123
midterm = 84
proj1 = 89
proj2 = 90
final = 79
Average: 84
Grade: B+
John112, Doe112 211111111
Course: cs123
midterm = 85
proj1 = 96
proj2 = 100
final = 95
Average: 93
Grade: A
John113, Doe113 311111111
Course: cs123
midterm = 87
proj1 = 94
proj2 = 100
final = 87
Average: 90
Grade: A
John114, Doe114 411111111
Course: cs123
midterm = 0
proj1 = 0
proj2 = 0
final = 0
Average: 0
Grade: NR
John115, Doe115 511111111
Course: cs123
midterm = 84
proj1 = 91
proj2 = 97
final = 77
Average: 84
Grade: B+
John116, Doe116 611111111
Course: cs123
midterm = 84
proj1 = 93
proj2 = 100
final = 85
Average: 88
Grade: A-
John117, Doe117 711111111
Course: cs123
midterm = 72
proj1 = 85
proj2 = 100
final = 75
Average: 79
Grade: B
John118, Doe118 811111111
Course: cs123
midterm = 86
proj1 = 96
proj2 = 100
final = 93
Average: 92
Grade: A
John119, Doe119 911111111
Course: cs123
midterm = 81
proj1 = 93
proj2 = 100
final = 76
Average: 83
Grade: B+
John121, Doe121 Ding 121111111
Course: cs123
midterm = 79
proj1 = 94
proj2 = 96
final = 65
Average: 78
Grade: B
John131, Doe131 131111111
Course: cs123
midterm = 90
proj1 = 93
proj2 = 100
final = 87
Average: 90
Grade: A
John141, Doe141 141111111
Course: cs123
midterm = 92
proj1 = 92
proj2 = 100
final = 93
Average: 93
Grade: A
John151, Doe151 151111111
Course: cs123
midterm = 76
proj1 = 93
proj2 = 100
final = 84
Average: 85
Grade: B+
John161, Doe161 161111111
Course: cs123
midterm = 67
proj1 = 94
proj2 = 95
final = 63
Average: 74
Grade: B-
John171, Doe171 171111111
Course: cs123
midterm = 0
proj1 = 0
proj2 = 0
final = 0
Average: 0
Grade: NR
John181, Doe181 181111111
Course: cs123
midterm = 0
proj1 = 0
proj2 = 0
final = 0
Average: 0
Grade: NR
John191, Doe191 191111111
Course: cs123
midterm = 0
proj1 = 0
proj2 = 0
final = 0
Average: 0
Grade: NR
John211, Doe211 112111111
Course: cs123
midterm = 0
proj1 = 0
proj2 = 0
final = 0
Average: 0
Grade: NR
John2111, Doe2111 111141111
Course: cs123
midterm = 82
proj1 = 90
proj2 = 95
final = 84
Average: 86
Grade: B+
John311, Doe311 113111111
Course: cs123
midterm = 82
proj1 = 92
proj2 = 100
final = 46
Average: 71
Grade: B-
John411, Doe411 114111111
Course: cs123
midterm = 83
proj1 = 87
proj2 = 90
final = 72
Average: 80
Grade: B
John511, Doe511 115111111
Course: cs123
midterm = 92
proj1 = 90
proj2 = 98
final = 63
Average: 81
Grade: B
John5111, Doe5111 111161111
Course: cs123
midterm = 79
proj1 = 87
proj2 = 100
final = 75
Average: 81
Grade: B
John611, Doe611 116111111
Course: cs123
midterm = 75
proj1 = 91
proj2 = 95
final = 71
Average: 79
Grade: B
John711, Doe711 117111111
Course: cs123
midterm = 81
proj1 = 92
proj2 = 96
final = 88
Average: 88
Grade: A-
John811, Doe811 118111111
Course: cs123
midterm = 0
proj1 = 0
proj2 = 0
final = 0
Average: 0
Grade: NR
John911, Doe911 111911111
Course: cs123
midterm = 90
proj1 = 91
proj2 = 100
final = 89
Average: 91
Grade: A
1011111XX 85 85 97 90 A-
1111111XX 84 89 90 79 B+
1111411XX 82 90 95 84 B+
1111611XX 79 87 100 75 B
1115111XX 0 0 0 0 NR
1119111XX 90 91 100 89 A
1121111XX 0 0 0 0 NR
1131111XX 82 92 100 46 B-
1141111XX 83 87 90 72 B
1151111XX 92 90 98 63 B
1161111XX 75 91 95 71 B
1171111XX 81 92 96 88 A-
1181111XX 0 0 0 0 NR
1211111XX 79 94 96 65 B
1311111XX 90 93 100 87 A
1411111XX 92 92 100 93 A
1511111XX 76 93 100 84 B+
1611111XX 67 94 95 63 B-
1711111XX 0 0 0 0 NR
1811111XX 0 0 0 0 NR
1911111XX 0 0 0 0 NR
2111111XX 85 96 100 95 A
3111111XX 87 94 100 87 A
4111111XX 0 0 0 0 NR
5111111XX 84 91 97 77 B+
6111111XX 84 93 100 85 A-
7111111XX 72 85 100 75 B
8111111XX 86 96 100 93 A
9111111XX 81 93 100 76 B+
______________________________________________________________________________
Averages (cs123):
82.5 91.2 97.6 78.9
Histogram for: averages/cs123
-------------------------------------------
100 -
99 -
98 -
97 -
96 -
95 -
94 -
93 4
92 2
91 2
90 4
89 -
88 6
87 -
86 2
85 2
84 4
83 2
82 -
81 4
80 2
79 4
78 2
77 -
76 -
75 -
74 2
73 -
72 -
71 2
70 -
69 -
68 -
67 -
66 -
65 -
64 -
63 -
62 -
61 -
60 -
59 -
58 -
57 -
56 -
55 -
54 -
53 -
52 -
51 -
50 -
49 -
48 -
47 -
46 -
45 -
44 -
43 -
42 -
41 -
40 -
39 -
38 -
37 -
36 -
35 -
34 -
33 -
32 -
31 -
30 -
29 -
28 -
27 -
26 -
25 -
24 -
23 -
22 -
21 -
20 -
19 -
18 -
17 -
16 -
15 -
14 -
13 -
12 -
11 -
10 -
9 -
8 -
7 -
6 -
5 -
4 -
3 -
2 -
1 -
0 4
1011111XX 85 85 97 90
1111111XX 84 89 90 79
1111411XX 82 90 95 84
1111611XX 79 87 100 75
1115111XX 0 0 0 0
1119111XX 90 91 100 89
1121111XX 0 0 0 0
1131111XX 82 92 100 46
1141111XX 83 87 90 72
1151111XX 92 90 98 63
1161111XX 75 91 95 71
1171111XX 81 92 96 88
1181111XX 0 0 0 0
1211111XX 79 94 96 65
1311111XX 90 93 100 87
1411111XX 92 92 100 93
1511111XX 76 93 100 84
1611111XX 67 94 95 63
1711111XX 0 0 0 0
1811111XX 0 0 0 0
1911111XX 0 0 0 0
2111111XX 85 96 100 95
3111111XX 87 94 100 87
4111111XX 0 0 0 0
5111111XX 84 91 97 77
6111111XX 84 93 100 85
7111111XX 72 85 100 75
8111111XX 86 96 100 93
9111111XX 81 93 100 76
______________________________________________________________________________
Averages (cs123):
82.5 91.2 97.6 78.9
John011, Doe011 111511111
Course: cs123
midterm = 0
proj1 = 0
proj2 = 0
final = 0
Average: 0
Grade: NR
John110, Doe110 101111111
Course: cs123
midterm = 85
proj1 = 85
proj2 = 97
final = 90
Average: 88
Grade: A-
John111, Doe111 111111111
Course: cs123
midterm = 84
proj1 = 89
proj2 = 90
final = 79
Average: 84
Grade: B+
John112, Doe112 211111111
Course: cs123
midterm = 85
proj1 = 96
proj2 = 100
final = 95
Average: 93
Grade: A
John113, Doe113 311111111
Course: cs123
midterm = 87
proj1 = 94
proj2 = 100
final = 87
Average: 90
Grade: A
John114, Doe114 411111111
Course: cs123
midterm = 0
proj1 = 0
proj2 = 0
final = 0
Average: 0
Grade: NR
John115, Doe115 511111111
Course: cs123
midterm = 84
proj1 = 91
proj2 = 97
final = 77
Average: 84
Grade: B+
John116, Doe116 611111111
Course: cs123
midterm = 84
proj1 = 93
proj2 = 100
final = 85
Average: 88
Grade: A-
John117, Doe117 711111111
Course: cs123
midterm = 72
proj1 = 85
proj2 = 100
final = 75
Average: 79
Grade: B
John118, Doe118 811111111
Course: cs123
midterm = 86
proj1 = 96
proj2 = 100
final = 93
Average: 92
Grade: A
John119, Doe119 911111111
Course: cs123
midterm = 81
proj1 = 93
proj2 = 100
final = 76
Average: 83
Grade: B+
John121, Doe121 Ding 121111111
Course: cs123
midterm = 79
proj1 = 94
proj2 = 96
final = 65
Average: 78
Grade: B
John131, Doe131 131111111
Course: cs123
midterm = 90
proj1 = 93
proj2 = 100
final = 87
Average: 90
Grade: A
John141, Doe141 141111111
Course: cs123
midterm = 92
proj1 = 92
proj2 = 100
final = 93
Average: 93
Grade: A
John151, Doe151 151111111
Course: cs123
midterm = 76
proj1 = 93
proj2 = 100
final = 84
Average: 85
Grade: B+
John161, Doe161 161111111
Course: cs123
midterm = 67
proj1 = 94
proj2 = 95
final = 63
Average: 74
Grade: B-
John171, Doe171 171111111
Course: cs123
midterm = 0
proj1 = 0
proj2 = 0
final = 0
Average: 0
Grade: NR
John181, Doe181 181111111
Course: cs123
midterm = 0
proj1 = 0
proj2 = 0
final = 0
Average: 0
Grade: NR
John191, Doe191 191111111
Course: cs123
midterm = 0
proj1 = 0
proj2 = 0
final = 0
Average: 0
Grade: NR
John211, Doe211 112111111
Course: cs123
midterm = 0
proj1 = 0
proj2 = 0
final = 0
Average: 0
Grade: NR
John2111, Doe2111 111141111
Course: cs123
midterm = 82
proj1 = 90
proj2 = 95
final = 84
Average: 86
Grade: B+
John311, Doe311 113111111
Course: cs123
midterm = 82
proj1 = 92
proj2 = 100
final = 46
Average: 71
Grade: B-
John411, Doe411 114111111
Course: cs123
midterm = 83
proj1 = 87
proj2 = 90
final = 72
Average: 80
Grade: B
John511, Doe511 115111111
Course: cs123
midterm = 92
proj1 = 90
proj2 = 98
final = 63
Average: 81
Grade: B
John5111, Doe5111 111161111
Course: cs123
midterm = 79
proj1 = 87
proj2 = 100
final = 75
Average: 81
Grade: B
John611, Doe611 116111111
Course: cs123
midterm = 75
proj1 = 91
proj2 = 95
final = 71
Average: 79
Grade: B
John711, Doe711 117111111
Course: cs123
midterm = 81
proj1 = 92
proj2 = 96
final = 88
Average: 88
Grade: A-
John811, Doe811 118111111
Course: cs123
midterm = 0
proj1 = 0
proj2 = 0
final = 0
Average: 0
Grade: NR
John911, Doe911 111911111
Course: cs123
midterm = 90
proj1 = 91
proj2 = 100
final = 89
Average: 91
Grade: A
1011111XX 85 85 97 90 A-
1111111XX 84 89 90 79 B+
1111411XX 82 90 95 84 B+
1111611XX 79 87 100 75 B
1115111XX 0 0 0 0 NR
1119111XX 90 91 100 89 A
1121111XX 0 0 0 0 NR
1131111XX 82 92 100 46 B-
1141111XX 83 87 90 72 B
1151111XX 92 90 98 63 B
1161111XX 75 91 95 71 B
1171111XX 81 92 96 88 A-
1181111XX 0 0 0 0 NR
1211111XX 79 94 96 65 B
1311111XX 90 93 100 87 A
1411111XX 92 92 100 93 A
1511111XX 76 93 100 84 B+
1611111XX 67 94 95 63 B-
1711111XX 0 0 0 0 NR
1811111XX 0 0 0 0 NR
1911111XX 0 0 0 0 NR
2111111XX 85 96 100 95 A
3111111XX 87 94 100 87 A
4111111XX 0 0 0 0 NR
5111111XX 84 91 97 77 B+
6111111XX 84 93 100 85 A-
7111111XX 72 85 100 75 B
8111111XX 86 96 100 93 A
9111111XX 81 93 100 76 B+
______________________________________________________________________________
Averages (cs123):
82.5 91.2 97.6 78.9
Histogram for: averages/cs123
-------------------------------------------
100 -
99 -
98 -
97 -
96 -
95 -
94 -
93 6
92 3
91 3
90 6
89 -
88 1
87 -
86 3
85 3
84 6
83 3
82 -
81 6
80 3
79 6
78 3
77 -
76 -
75 -
74 3
73 -
72 -
71 3
70 -
69 -
68 -
67 -
66 -
65 -
64 -
63 -
62 -
61 -
60 -
59 -
58 -
57 -
56 -
55 -
54 -
53 -
52 -
51 -
50 -
49 -
48 -
47 -
46 -
45 -
44 -
43 -
42 -
41 -
40 -
39 -
38 -
37 -
36 -
35 -
34 -
33 -
32 -
31 -
30 -
29 -
28 -
27 -
26 -
25 -
24 -
23 -
22 -
21 -
20 -
19 -
18 -
17 -
16 -
15 -
14 -
13 -
12 -
11 -
10 -
9 -
8 -
7 -
6 -
5 -
4 -
3 -
2 -
1 -
0 16
1011111XX 85 85 97 90
1111111XX 84 89 90 79
1111411XX 82 90 95 84
1111611XX 79 87 100 75
1115111XX 0 0 0 0
1119111XX 90 91 100 89
1121111XX 0 0 0 0
1131111XX 82 92 100 46
1141111XX 83 87 90 72
1151111XX 92 90 98 63
1161111XX 75 91 95 71
1171111XX 81 92 96 88
1181111XX 0 0 0 0
1211111XX 79 94 96 65
1311111XX 90 93 100 87
1411111XX 92 92 100 93
1511111XX 76 93 100 84
1611111XX 67 94 95 63
1711111XX 0 0 0 0
1811111XX 0 0 0 0
1911111XX 0 0 0 0
2111111XX 85 96 100 95
3111111XX 87 94 100 87
4111111XX 0 0 0 0
5111111XX 84 91 97 77
6111111XX 84 93 100 85
7111111XX 72 85 100 75
8111111XX 86 96 100 93
9111111XX 81 93 100 76
______________________________________________________________________________
Averages (cs123):
82.5 91.2 97.6 78.9
--- NEW FILE: gradetest.flr ---
?- ['auxiliary/Grade' >> grade], ['auxiliary/Class' >> class].
pretest :-
full_report([midterm,proj1,proj2,final])@grade,
id_scorelist_report([midterm,proj1,proj2,final])@grade.
test :- tell(temp)@prolog(),
debug[#check_undefined(on)]@flora(sys),
pretest,
debug[#check_undefined(off)]@flora(sys),
pretest,
told@prolog().
--- NEW FILE: .cvsignore ---
*.xwam
*.P
*_new
temp
*.fdb
*.fld
|
|
From: <ki...@us...> - 2002-05-24 07:04:50
|
Update of /cvsroot/flora/flora-testsuite/apptests/auxiliary
In directory usw-pr-cvs1:/tmp/cvs-serv13572/apptests/programs
Added Files:
GradingPolicy.flr Grade.flr Class.flr .cvsignore
Log Message:
added grading program as a test
--- NEW FILE: GradingPolicy.flr ---
%%%%%%%%%%%% Grading Policy -- Change values as appropriate %%%%%%%%%%%%%
%% After you look at the histogram, fill out
%% gradeMap(Course)[
%% 'A' ->100,
%% 'A-' ->90,
%% 'B+' ->82,
%% 'B' ->74,
%% 'B-' ->66,
%% 'C+' ->60,
%% 'C' ->54,
%% 'C-' ->48,
%% 'D' ->38,
%% 'F' ->1
%% 'NR' ->0
%% ].
%% Then let the program produce the full report and automatically grade
%% students. This also produces a listing suitable for posting on the Web.
weights(_Course):weights.
ranges(_Course):ranges.
thresholds(_Course):thresholds.
gradeMap(_Course):gradeMap.
/*
%% This overrides the default for cse587 -- an example
weights(cse587)[
%% Use -> here, not *->
proj1 ->10
,proj2 ->10
,proj3 ->10
,midterm ->20
,final ->30
].
*/
weights[
%% Use *-> here, not ->
proj1 *->20
,proj2 *->10
,midterm *->30
,final *->40
].
ranges[
%% Use *-> here, not ->
proj1 *->[0,100]
,proj2 *->[0,100]
,midterm *->[0,100]
,final *->[0,100]
].
ranges[averages *-> [Low,High]] :-
Low1 = avg{L | ranges[Asg *-> [L,_]], Asg \== averages},
High1 = avg{H | ranges[Asg *-> [_,H]], Asg \== averages},
round(Low1,Low)@grade,
round(High1,High)@grade.
ranges(Crs)[averages -> [Low,High]] :-
Low1 = avg{L | ranges(Crs)[Asg -> [L,_]], Asg \== averages},
High1 = avg{H | ranges(Crs)[Asg -> [_,H]], Asg \== averages},
round(Low1,Low)@grade,
round(High1,High)@grade.
%% Where to cut off irrelevant scores
thresholds[
%% Use *-> here, not ->
average *->30,
histogram *->40
].
/*
%% This overrides the default for cse306 -- an example
%% Note: -> should be used here, not *->
thresholds(cse306)[
average ->30,
histogram ->40
].
gradeMap(cse306)[
%% Use -> here, not *->
'A' ->84,
'A-' ->81,
'B+' ->76,
'B' ->72,
'B-' ->67,
'C+' ->60,
'C' ->52,
'C-' ->42,
'D' ->38,
'F' ->1,
%% Must be zero
'NR' ->0
].
*/
gradeMap[
%% Use *-> here, not ->
'A' *->90,
'A-' *->87,
'B+' *->82,
'B' *->76,
'B-' *->70,
'C+' *->62,
'C' *->55,
'C-' *->50,
'D' *->45,
'F' *->1,
%% Must be zero
'NR' *->0
].
--- NEW FILE: Grade.flr ---
%% Usage:
%% id_scorelist_report([midterm,proj1,proj2]).
%% id_scorelist_report(gradesForPosting,[midterm,proj1,proj2,final]).
%% full_report([midterm,proj1,proj2]).
%% full_report(finalGrades,[midterm,proj1,proj2,final]).
%% After you look at the histogram, fill out
%% gradeMap(Course)[
%% 'A' ->100,
%% 'A-' ->90,
%% 'B+' ->82,
%% 'B' ->74,
%% 'B-' ->66,
%% 'C+' ->60,
%% 'C' ->54,
%% 'C-' ->48,
%% 'D' ->38,
%% 'F' ->1
%% 'NR' ->0
%% ].
%% Then let the program produce the full report and automatically grade
%% students. This also produces listing suitable for posting on the Web.
#define SEPARATOR '______________________________________________________________________________'
#define MODULE class
:- arguments print_to_file(oid,meta).
%% to pacify undefinedness checker
histogram(null,null,null,null).
%% Redirect the output from Goal to File
print_to_file(File,Goal) :-
tell(File)@prolog(),
cputime(Start)@prolog(),
Goal,
cputime(End)@prolog(),
told@prolog(),
Delta is End - Start,
write('CPU time: ')@prolog(),
writeln(Delta)@flora(io).
%% This also updates the histogram
Stud[#weighted_average(AsgList,Val)] :-
Stud:student@MODULE,
weighted_sum(Stud,AsgList,Result),
totals(AsgList,Stud.course@MODULE, Total),
Val1 is Result/Total,
round(Val1,Val),
updateHistogram(Stud.course@MODULE,averages,Val).
Stud[grade(AsgList)->Val] :-
Stud:student@MODULE,
%% collectset sorts in ascending order
Bounds = collectset{V| gradeMap(Stud.course)[_G->V]@MODULE},
%% but we need in descending order
reverse(Bounds,DescendingBounds)@prolog(basics),
Stud[#weighted_average(AsgList,AvgVal)],
find_grade(Stud,AvgVal,DescendingBounds,Grade),
Val = Grade.
find_grade(Stud,[],_) :- !,
Stud[weighted_average->A],
abort(('Avg ', A, 'for ', Stud, ' is out of range'))@flora(sys).
find_grade(Stud,Avg,[B|Bounds],Grade) :-
B > Avg,
!,
find_grade(Stud,Avg,Bounds,Grade).
find_grade(Stud,Avg,[B|_],Grade) :-
B =< Avg,
!,
gradeMap(Stud.course)[Grade->B]@MODULE.
weighted_sum(_Stud,[],0) :- !.
weighted_sum(Stud,[Asg|AsgList],Res) :-
if (weights(Stud.course)[Asg->Weight]@MODULE,
integer(Weight)@prolog(), Weight > 0)
then (
if Stud[Asg->Score]@MODULE
then (
weighted_sum(Stud,AsgList,Res1),
Res is Weight*Score + Res1
) else
%% Assume Score=0
weighted_sum(Stud,AsgList,Res)
) else
abort(('Missing weight for assignment: ', Asg))@flora(sys).
average(Crs,Asg,Res) :-
if Res = avg{Score| (_Stud:student[course->Crs, Asg->Score])@MODULE,
Score > thresholds(Crs).average@MODULE}
then true
else Res = 0.
%% Does error checking
get_score(Stud,Asg,Score) :-
if ranges(Stud.course)[Asg->[Beg,End]]@MODULE
then true
else abort(('No range information for assignment: ', Asg))@flora(sys),
if Stud[Asg->Score]@MODULE
then
(Score >= Beg, Score =< End, !
; abort(('Out of range score for assignment ',
Asg, ' student ', Stud))@flora(sys)
)
else
Score=Beg.
%% ID_GRADELIST/student
Stud[#print_id_scorelist(AsgList)] :-
print_id(Stud),
Stud[#print_id_scorelist_internal(AsgList)].
_Stud[#print_id_scorelist_internal([])] :- !.
Stud[#print_id_scorelist_internal([Asg|AsgList])] :-
get_score(Stud,Asg,Score),
fmt_write('%7d ',arg(Score))@flora(io),
Stud[#print_id_scorelist_internal(AsgList)].
Stud[#print_id_scorelist_grade(AsgList)] :-
Stud[#print_id_scorelist(AsgList)],
fmt_write(' %s', arg(Stud.grade(AsgList)@grade))@flora(io).
%% Print ID with the first 2 digits stripped
print_id(Stud) :-
%%substring(Stud,2,-1,StrippedID)@prolog(),
if str_sub('USB',Stud,0)@prolog()
then
StrippedID=Stud
else
string_substitute(Stud,[s(7,9)@prolog()],
['XX'],StrippedID)@prolog(string),
fmt_write('%-9s',arg(StrippedID))@flora(io).
Stud[#print_full(AsgList)] :-
Stud[#print_basic_info],
Stud[#print_scores(AsgList)],
Stud[#weighted_average(AsgList,AvgVal)],
fmt_write(' Average: %d\n', arg(AvgVal))@flora(io),
fmt_write(' Grade: %s\n',
arg(Stud.grade(AsgList)@grade))@flora(io),
nl@prolog().
Stud[#print_basic_info] :-
Stud[last->L,first->F,course->C]@MODULE,
fmt_write('%s, %s %s\n', args(L,F,Stud))@flora(io),
fmt_write(' Course: %s\n', args(C))@flora(io).
_Stud[#print_scores([])] :- true.
Stud[#print_scores([Asg|AsgList])] :-
if Stud[Asg->Score]@MODULE
then
fmt_write(' %-9s = %d', asg(Asg,Score))@flora(io)
else
fmt_write(' %-9s = 0', asg(Asg))@flora(io),
nl@prolog(),
Stud[#print_scores(AsgList)].
%%%%%%%%%%% Reports %%%%%%%%%%%%%%%%%%%%%%%%%%
%% Compute total possible scores
init_report(AsgList) :-
insertall{courses(_Crs)|_[course->_Crs]@MODULE},
( courses(Crs),
Total = sum{Val | weights(Crs)[Asg->Val]@MODULE,
member(Asg,AsgList)@prolog(basics)},
insert{totals(AsgList,Crs,Total)},
fail
; true).
print_report(ReportMethod,StudList,AsgList) :-
init_report(AsgList),
keysort(StudList,SortedStud)@prolog(),
print_report_internal(ReportMethod,SortedStud,AsgList).
print_report_internal(_ReportMethod,[],_AsgList) :- !.
print_report_internal(ReportMethod,[_-Stud|StudList],AsgList) :-
Stud[#ReportMethod(AsgList)],
nl@prolog(),
print_report_internal(ReportMethod,StudList,AsgList).
print_averages(_Crs,[]) :- nl@prolog().
print_averages(Crs,[Asg|AsgList]) :-
average(Crs,Asg,Res),
fmt_write('%7.4S ', arg(Res))@flora(io),
print_averages(Crs,AsgList).
%%---------------------------------------------------
%% E.g., id_scorelist_report([proj1,midterm,proj2]).
id_scorelist_report(AsgList) :-
StudList = collectset{V| S:student@MODULE, V=S-S},
print_report(print_id_scorelist,StudList,AsgList),
writeln(SEPARATOR)@prolog(),
( courses(Crs),
fmt_write('Averages (%s):\n\t ',arg(Crs))@flora(io),
print_averages(Crs,AsgList),
fail
; true
).
%% like id_scorelist_report, but also assigns grade
id_scorelist_grade_report(AsgList) :-
StudList = collectset{V| S:student@MODULE, V=S-S},
print_report(print_id_scorelist_grade,StudList,AsgList),
writeln(SEPARATOR)@prolog(),
( courses(Crs),
fmt_write('Averages (%s):\n\t ',arg(Crs))@flora(io),
print_averages(Crs,AsgList),
fail
; true
).
id_scorelist_report(File,AsgList) :-
print_to_file(File, id_scorelist_report(AsgList)).
%% E.g., full_report([proj1,midterm,proj2]).
full_report(AsgList) :-
StudList = collectset{V| (S:student[last->L])@MODULE, V=L-S},
print_report(print_full,StudList,AsgList),
nl@prolog(),
nl@prolog(),
nl@prolog(),
id_scorelist_grade_report(AsgList),
nl@prolog(),
nl@prolog(),
printAllHistograms(averages).
full_report(File,AsgList) :-
print_to_file(File, full_report(AsgList)).
%% Histograms
updateHistogram(Course,Assignment,Value) :-
if histogram(Course,Assignment,Value,NumOfStuds)
then (
delete{histogram(Course,Assignment,Value,NumOfStuds)},
NewVal is NumOfStuds+1,
insert{histogram(Course,Assignment,Value,NewVal)}
)
else
insert{histogram(Course,Assignment,Value,1)}.
printHistogram(Course,Assignment) :-
fmt_write('\nHistogram for: %s/%s\n',
args(Assignment,Course))@flora(io),
writeln('-------------------------------------------')@prolog(),
ranges(Course)[Assignment->[Low,High]]@MODULE,
printHistogramInternal(Course,Assignment,Low,High).
printHistogramInternal(_Course,_Assignment,Low,High) :-
Low > High,
abort(('Bug: Low ', Low, ' exceeds ', High))@flora(sys).
printHistogramInternal(Course,Assignment,Low,High) :-
Low < High,
!,
printHistogramItem(Course,Assignment,High),
NewHigh is High - 1,
printHistogramInternal(Course,Assignment,Low,NewHigh).
printHistogramInternal(Course,Assignment,Low,Low) :-
!,
printHistogramItem(Course,Assignment,Low).
printHistogramItem(Course,Assignment,Val) :-
histogram(Course,Assignment,Val,Number),
!,
fmt_write('%3d %d\n', args(Val,Number))@flora(io).
printHistogramItem(_Course,_Assignment,Val) :-
fmt_write('%3d -\n', arg(Val))@flora(io).
%% Print histograms for all courses that occur in the class file
printAllHistograms(Assignment) :-
( courses(C),
printHistogram(C,Assignment),
nl@prolog(),
fail
; true).
round(X,Result) :- Result is floor(X+0.5)@prolog().
--- NEW FILE: Class.flr ---
%%%%%%%%%%%%%%%%%%%%%%% INSTRUCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% %%
%% Record numeric scores following the -> symbol for the %%
%% corresponding assignments. %%
%% If there are assignments submitted by people who aren't on this %%
%% list, add them at the end of the file in the "Auditors" section. %%
%% The "Auditors" section contains templates, which you should use %%
%% to insert information about these people, as in the example below. %%
%% %%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
#include "GradingPolicy.flr"
%%%%%%%%%%%%%%%%%%%%%%%% Class roster: CS 123 %%%%%%%%%%%%%%%%%%%%%%%%
'111111111':student[
last->'John111',
first->'Doe111',
course->cs123
%%-------------
,quiz->52
,proj1->89
,proj2->90
,midterm->84
,final->79
].
'211111111':student[
last->'John112',
first->'Doe112',
course->cs123
%%-------------
,quiz->89
,proj1->96
,proj2->100
,midterm->85
,final->95
].
'311111111':student[
last->'John113',
first->'Doe113',
course->cs123
%%-------------
,quiz->95
,proj1->94
,proj2->100
,midterm->87
,final->87
].
'411111111':student[
last->'John114',
first->'Doe114',
course->cs123
%%-------------
,quiz->30
,proj1->0
,proj2->0
,midterm->0
,final->0
].
'511111111':student[
last->'John115',
first->'Doe115',
course->cs123
%%-------------
,quiz->45
,proj1->91
,proj2->97
,midterm->84
,final->77
].
'611111111':student[
last->'John116',
first->'Doe116',
course->cs123
%%-------------
,quiz->50
,proj1->93
,proj2->100
,midterm->84
,final->85
].
'711111111':student[
last->'John117',
first->'Doe117',
course->cs123
%%-------------
,quiz->94
,proj1->85
,proj2->100
,midterm->72
,final->75
].
'811111111':student[
last->'John118',
first->'Doe118',
course->cs123
%%-------------
,quiz->59
,proj1->96
,proj2->100
,midterm->86
,final->93
].
'911111111':student[
last->'John119',
first->'Doe119',
course->cs123
%%-------------
,quiz->51
,proj1->93
,proj2->100
,midterm->81
,final->76
].
'101111111':student[
last->'John110',
first->'Doe110',
course->cs123
%%-------------
,quiz->58
,proj1->85
,proj2->97
,midterm->85
,final->90
].
'121111111':student[
last->'John121',
first->'Doe121 Ding',
course->cs123
%%-------------
,quiz->72
,proj1->94
,proj2->96
,midterm->79
,final->65
].
'131111111':student[
last->'John131',
first->'Doe131',
course->cs123
%%-------------
,quiz->42
,proj1->93
,proj2->100
,midterm->90
,final->87
].
'141111111':student[
last->'John141',
first->'Doe141',
course->cs123
%%-------------
,quiz->87
,proj1->92
,proj2->100
,midterm->92
,final->93
].
'151111111':student[
last->'John151',
first->'Doe151',
course->cs123
%%-------------
,quiz->66
,proj1->93
,proj2->100
,midterm->76
,final->84
].
'161111111':student[
last->'John161',
first->'Doe161',
course->cs123
%%-------------
,quiz->74
,proj1->94
,proj2->95
,midterm->67
,final->63
].
'171111111':student[
last->'John171',
first->'Doe171',
course->cs123
%%-------------
,quiz->0
,proj1->0
,proj2->0
,midterm->0
,final->0
].
'181111111':student[
last->'John181',
first->'Doe181',
course->cs123,
remarks->''
%%-------------
,quiz->75
,proj1->0
,proj2->0
,midterm->0
,final->0
].
'191111111':student[
last->'John191',
first->'Doe191',
course->cs123
%%-------------
,quiz->15
,proj1->0
,proj2->0
,midterm->0
,final->0
].
'112111111':student[
last->'John211',
first->'Doe211',
course->cs123
%%-------------
,quiz->18
,proj1->0
,proj2->0
,midterm->0
,final->0
].
'113111111':student[
last->'John311',
first->'Doe311',
course->cs123,
remarks->''
%%-------------
,quiz->80
,proj1->92
,proj2->100
,midterm->82
,final->46
].
'114111111':student[
last->'John411',
first->'Doe411',
course->cs123
%%-------------
,quiz->81
,proj1->87
,proj2->90
,midterm->83
,final->72
].
'115111111':student[
last->'John511',
first->'Doe511',
course->cs123
%%-------------
,quiz->57
,proj1->90
,proj2->98
,midterm->92
,final->63
].
'116111111':student[
last->'John611',
first->'Doe611',
course->cs123,
emil->xsong,
remarks->''
%%-------------
,quiz->79
,proj1->91
,proj2->95
,midterm->75
,final->71
].
'117111111':student[
last->'John711',
first->'Doe711',
course->cs123
%%-------------
,quiz->74
,proj1->92
,proj2->96
,midterm->81
,final->88
].
'118111111':student[
last->'John811',
first->'Doe811',
course->cs123
%%-------------
,quiz->32
,proj1->0
,proj2->0
,midterm->0
,final->0
].
'111911111':student[
last->'John911',
first->'Doe911',
course->cs123
%%-------------
,quiz->76
,proj1->91
,proj2->100
,midterm->90
,final->89
].
'111511111':student[
last->'John011',
first->'Doe011',
course->cs123
%%-------------
,quiz->0
,proj1->0
,proj2->0
,midterm->0
,final->0
].
'111141111':student[
last->'John2111',
first->'Doe2111',
course->cs123
%%-------------
,quiz->62
,proj1->90
,proj2->95
,midterm->82
,final->84
].
'111161111':student[
last->'John5111',
first->'Doe5111',
course->cs123
%%-------------
,quiz->48
,proj1->87
,proj2->100
,midterm->79
,final->75
].
--- NEW FILE: .cvsignore ---
*.xwam
*.P
*_new
temp
*.fdb
*.fld
|
|
From: <ki...@us...> - 2002-05-24 06:58:00
|
Update of /cvsroot/flora/flora-testsuite/apptests/auxiliary In directory usw-pr-cvs1:/tmp/cvs-serv11832/apptests/auxiliary Log Message: Directory /cvsroot/flora/flora-testsuite/apptests/auxiliary added to the repository |
|
From: <ki...@us...> - 2002-05-24 06:57:47
|
Update of /cvsroot/flora/flora-testsuite/apptests In directory usw-pr-cvs1:/tmp/cvs-serv11788/apptests Log Message: Directory /cvsroot/flora/flora-testsuite/apptests added to the repository |
|
From: <ki...@us...> - 2002-05-22 03:40:30
|
Update of /cvsroot/flora/flora-website
In directory usw-pr-cvs1:/tmp/cvs-serv10945
Modified Files:
index.php download.php
Log Message:
typos, scrolling in left frame
Index: index.php
===================================================================
RCS file: /cvsroot/flora/flora-website/index.php,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -d -r1.6 -r1.7
--- index.php 21 May 2002 22:29:57 -0000 1.6
+++ index.php 22 May 2002 03:40:27 -0000 1.7
@@ -2,7 +2,7 @@
<head>
<title> FLORA-2 </title>
<frameset cols="20%,80%" frameborder="yes" border="1" framespacing="0">
- <frame SRC="florabar.php" NAME="left_window" SCROLLING="no"
+ <frame SRC="florabar.php" NAME="left_window" SCROLLING="auto"
NORESIZE MARGINWIDTH="15" MARGINHEIGHT="15">
<frame SRC="florahome.php" NAME="right_window"
MARGINWIDTH="15" MARGINHEIGHT="15">
Index: download.php
===================================================================
RCS file: /cvsroot/flora/flora-website/download.php,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- download.php 21 May 2002 17:07:44 -0000 1.2
+++ download.php 22 May 2002 03:40:27 -0000 1.3
@@ -18,7 +18,7 @@
<p>
Download and install <a href="http://xsb.sourceforge.net"
target="new_window">XSB</a>. If you are planning to use the version of
- FLORA-2 that is distributed with XSB (which is likely tobe not the latest
+ FLORA-2 that is distributed with XSB (which is likely to be not the latest
version), then FLORA-2 is already installed. However, it might need to be
<a href="configure.html" target="new_window">configured</a>.
</p>
|
|
From: <ki...@us...> - 2002-05-22 02:18:49
|
Update of /cvsroot/flora/flora-website
In directory usw-pr-cvs1:/tmp/cvs-serv25436
Modified Files:
florahome.php florabar.php
Added Files:
xsblogo.jpg sblogo.gif acknowledgements.html
Log Message:
added logos, acknowledgements
--- NEW FILE: xsblogo.jpg ---
(This appears to be a binary file; contents omitted.)
--- NEW FILE: sblogo.gif ---
(This appears to be a binary file; contents omitted.)
--- NEW FILE: acknowledgements.html ---
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>FLORA-2 Documentation</title>
</head>
<body bgcolor="#FFFFFF">
<h1>Acknowledgement of Support</h1>
<p>
This project was supported in part by NSF grants IRI-9404629, INT-9809945,
IIS-0072927.
</p>
<p>
Sourceforge.net generously provides the hosting service.
</p>
</body>
</html>
Index: florahome.php
===================================================================
RCS file: /cvsroot/flora/flora-website/florahome.php,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- florahome.php 21 May 2002 17:03:29 -0000 1.2
+++ florahome.php 22 May 2002 02:18:45 -0000 1.3
@@ -76,8 +76,28 @@
<hr>
<p>
</p>
+<table>
<address>
+<td>
<a href="mailto:flo...@li...">flo...@li...</a>
+</td>
+<td>
+
+</td>
+<td>
+
+</td>
+<td>
+
+</td>
+<td>
+Powered by
+<br>
+<A href="http://xsb.sourceforge.net" target="right_window">
+<IMG src="xsblogo.jpg" width="90" height="90" border="0" border="0"
+alt="XSB Logo"></A>
+</td>
+</table>
</address>
<p>
Index: florabar.php
===================================================================
RCS file: /cvsroot/flora/flora-website/florabar.php,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- florabar.php 21 May 2002 17:03:29 -0000 1.2
+++ florabar.php 22 May 2002 02:18:45 -0000 1.3
@@ -16,6 +16,8 @@
<li>
<a href="florahome.php" target="right_window">Home</a>
</li>
+<br>
+<br>
<li>
<a href="http://sourceforge.net/projects/flora/"
target="right_window">General FLORA-2 project page</a>
@@ -50,7 +52,7 @@
<a href="aboutTR.php" target="right_window">About Transaction Logic</a>
</li>
<li>
- <a href="relatedWorks.php" target="right_window">Other related works</a>
+ <a href="relatedWorks.php" target="right_window">Other related work</a>
</li>
</ul>
@@ -65,6 +67,11 @@
<A HREF="contactus.php" target="right_window">Contact us</a>
</p>
</ul>
+<ul>
+<p>
+<A HREF="acknowledgements.html" target="right_window">Acknowledgements</a>
+</p>
+</ul>
<pre>
@@ -79,8 +86,19 @@
</pre>
<P>
-<A href="http://sourceforge.net">
-<IMG src="http://sourceforge.net/sflogo.php?group_id=1176&type=1" width="88" height="31" border="0" alt="SourceForge Logo"></A>
+<table>
+<tr>
+<td>
+<A href="http://sourceforge.net" target="right_window">
+<IMG src="http://sourceforge.net/sflogo.php?group_id=1176&type=1"
+width="88" height="36" border="0" alt="SourceForge Logo"></A>
+</td>
+<td>
+<A href="http://stonybrook.edu" target="right_window">
+<IMG src="sblogo.gif" width="60" height="36" border="0" border="0" alt="Stony Brook Logo"></A>
+</td>
+</tr>
+</table>
</p>
<pre>
|
|
From: <ki...@us...> - 2002-05-21 23:35:07
|
Update of /cvsroot/flora/flora2/docs In directory usw-pr-cvs1:/tmp/cvs-serv27950/docs Modified Files: flora2.tex Log Message: minor fixes Index: flora2.tex =================================================================== RCS file: /cvsroot/flora/flora2/docs/flora2.tex,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- flora2.tex 19 May 2002 23:39:13 -0000 1.3 +++ flora2.tex 21 May 2002 23:35:03 -0000 1.4 @@ -5144,10 +5144,9 @@ trace back to the \FLIP compiler developed by Bertram Lud\"aescher. Michael Kifer helped design \FLORA, implemented the debugger, and some -other features. Chang Zhao added a number of enhancements, such as run-time -undefinedness checks and the checker for dependency among tabled predicates -and updates. Bin Tang added support for numbered anonymous oids and wrote the -pretty-printer for dumped Prolog code. +other features. Chang Zhao added a number of important enhancements, such +as run-time undefinedness checks and the checker for dependency among +tabled predicates and updates. \appendix |
|
From: <ki...@us...> - 2002-05-21 23:35:07
|
Update of /cvsroot/flora/flora2
In directory usw-pr-cvs1:/tmp/cvs-serv27950
Modified Files:
flrconfig.P
Log Message:
minor fixes
Index: flrconfig.P
===================================================================
RCS file: /cvsroot/flora/flora2/flrconfig.P,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -u -d -r1.1.1.1 -r1.2
--- flrconfig.P 18 May 2002 17:43:26 -0000 1.1.1.1
+++ flrconfig.P 21 May 2002 23:35:03 -0000 1.2
@@ -18,6 +18,6 @@
writeln('#! /bin/sh'),
write('FLORADIR="'), writeq(FloraDir), write('"'), nl,
write('PROLOG='), write(InstallDir), writeln('/xsb'),
- writeln('$PROLOG -e "asserta(library_directory($FLORADIR)). [flora2devel]. flora_shell."'),
+ writeln('$PROLOG -e "asserta(library_directory($FLORADIR)). [flora2devel]. flora_shell." $*'),
told,
tell(F).
|
|
From: <ki...@us...> - 2002-05-21 22:30:55
|
Update of /cvsroot/flora/CVSROOT
In directory usw-pr-cvs1:/tmp/cvs-serv10518
Modified Files:
loginfo
Log Message:
Index: loginfo
===================================================================
RCS file: /cvsroot/flora/CVSROOT/loginfo,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -d -r1.8 -r1.9
--- loginfo 18 May 2002 21:33:45 -0000 1.8
+++ loginfo 21 May 2002 22:30:51 -0000 1.9
@@ -26,10 +26,10 @@
#DEFAULT (echo ""; id; echo %{sVv}; date; cat) >> $CVSROOT/CVSROOT/commitlog
-flora2.* mail -s "FLORA-2 Sources Commit: %{}" ki...@cs... gui...@cs... ch...@cs... bi...@cs... am...@cs...
+flora2.* mail -s "FLORA-2 Sources Commit: %{}" ki...@cs... gui...@cs... ch...@cs... am...@cs...
flora-website.* mail -s "FLORA-2 Website Commit: %{}" ki...@cs...
-flora-testsuite.* mail -s "FLORA-2 Testsuite Commit: %{}" ki...@cs... gui...@cs... ch...@cs... bi...@cs... am...@cs...
+flora-testsuite.* mail -s "FLORA-2 Testsuite Commit: %{}" ki...@cs... gui...@cs... ch...@cs... am...@cs...
ALL $CVSROOT/CVSROOT/syncmail -u %{sVv} flo...@li...
|
|
From: <ki...@us...> - 2002-05-21 22:30:00
|
Update of /cvsroot/flora/flora-website
In directory usw-pr-cvs1:/tmp/cvs-serv10257
Modified Files:
index.php
Log Message:
Index: index.php
===================================================================
RCS file: /cvsroot/flora/flora-website/index.php,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -d -r1.5 -r1.6
--- index.php 21 May 2002 06:24:45 -0000 1.5
+++ index.php 21 May 2002 22:29:57 -0000 1.6
@@ -1,6 +1,6 @@
<html>
<head>
-<title> XSB </title>
+<title> FLORA-2 </title>
<frameset cols="20%,80%" frameborder="yes" border="1" framespacing="0">
<frame SRC="florabar.php" NAME="left_window" SCROLLING="no"
NORESIZE MARGINWIDTH="15" MARGINHEIGHT="15">
|
|
From: <ki...@us...> - 2002-05-21 22:21:18
|
Update of /cvsroot/flora/flora-website
In directory usw-pr-cvs1:/tmp/cvs-serv8117
Modified Files:
release_notes.html
Log Message:
Index: release_notes.html
===================================================================
RCS file: /cvsroot/flora/flora-website/release_notes.html,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -d -r1.3 -r1.4
--- release_notes.html 21 May 2002 06:24:45 -0000 1.3
+++ release_notes.html 21 May 2002 22:21:14 -0000 1.4
@@ -11,13 +11,14 @@
<hr>
<center>
<a name="interim">
-<h1> Release Notes for Version 0.9</h1>
+<h1> Release Notes for Version 0.88</h1>
</center>
<h3>General</h3>
<p>
This release introduces a number of new features, improves performance,
-and stability.
+and stability. The main highlights are the significantly faster compilation
+and improved support for reified statements.
</p>
@@ -29,12 +30,14 @@
</li>
<li> The new token <tt>_@</tt>, which denotes the current FLORA module.
</li>
-<li> The <tt>@prologall()</tt> module specification, which automatically
+<li> The new <tt>@prologall()</tt> module specification, which automatically
converts the arguments of Prolog calls between the FLORA and Prolog
representation as needed.
</li>
-<li> The new unary reification operator ${...}. Say, x[m-> ${a[b->c]}]
- will reify the formula a[b->c].
+<li> The new reification operator ${...}. Say, x[m-> ${a[b->c]}]
+ will reify the formula a[b->c]. This is in addition to the previously
+ available meta-argument specification (called "bform" before and now
+ changed to "meta").
</li>
</ul>
<h3>Bugfixes</h3>
@@ -43,9 +46,12 @@
</ul>
<h3>Backward Incompatibility</h3>
<ul>
-<li> The predicate <tt>flThisModule/1</tt> has been deprecated. Use <tt>_@</tt>
-instead.
+<li> The predicate <tt>flThisModule/1</tt> has been deprecated. Use the
+ literal <tt>_@</tt> to refer to the current module. This is more convenient
+ and faster.
<li> The <tt>bform</tt> argument specifier is now called <tt>meta</tt>.
+<li> The compiler directive "arguments" is now called "reification".
+ In the future it will apply to all FLORA literals, not just predicates.
</ul>
|
|
From: <ki...@us...> - 2002-05-21 17:32:49
|
Update of /cvsroot/flora/flora-website In directory usw-pr-cvs1:/tmp/cvs-serv2399 Modified Files: download.php documentation.php Log Message: minor fixes Index: download.php =================================================================== RCS file: /cvsroot/flora/flora-website/download.php,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- download.php 21 May 2002 17:03:29 -0000 1.1 +++ download.php 21 May 2002 17:07:44 -0000 1.2 @@ -32,9 +32,9 @@ <p> Sometimes FLORA-2 releases happen in-between the stable releases of XSB. These releases contain additional features as well as bug fixes. - Download <a + Download the <a href="http://sourceforge.net/project/showfiles.php?group_id=50604" - target="new_window">the latest interim release</a> into a separate directory + target="new_window">latest interim release</a> into a separate directory and follow the <a href="installation.html" target="new_window">installation instructions</a>. </p> Index: documentation.php =================================================================== RCS file: /cvsroot/flora/flora-website/documentation.php,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- documentation.php 21 May 2002 17:03:29 -0000 1.1 +++ documentation.php 21 May 2002 17:07:44 -0000 1.2 @@ -21,10 +21,11 @@ <li>Manual for the <a href="docs/interimmanual.pdf">latest interim release</a> of FLORA-2. </li> - <li>Manual for the CVS version: Since this version changes frequently, - we do not convert it to PDF on a regular basis. You can create a printable - version of the manual (which is found in the CVS version) using LaTeX and - related tools. + <li><emph>Manual for the CVS version</emph>: Since this version changes + frequently, we do not convert it to PDF on a regular basis. You can + create a printable + version of the manual (which is found in the CVS repository) using + LaTeX and related tools. </li> </ul> |
|
From: <ki...@us...> - 2002-05-21 17:17:41
|
Update of /cvsroot/flora/flora-website In directory usw-pr-cvs1:/tmp/cvs-serv858 Modified Files: florahome.php florabar.php Added Files: relatedWorks.php download.php documentation.php aboutTR.php aboutHiLog.php aboutFlogic.php Removed Files: relatedWorks.html download.html documentation.html aboutTR.html aboutHiLog.html aboutFlogic.html Log Message: added counters, minor other fixes --- NEW FILE: relatedWorks.php --- <html><head><title>Related Works</title></head> <body bgcolor="#FFFFFF"> <h1> Related Works </h1> <pre> </pre> <p> Some of the works that apply F-logic, Transaction Logic, or HiLog to various problems ranging from ontology management to information integration to modeling workflows are listed below. </p> <pre> </pre> <h3>Web information systems:</h3> <ul> <li> <a href="http://citeseer.nj.nec.com/425424.html"> Ontobroker: How to Make the WWW Intelligent </a> </li> <li> <a href="http://www.dfki.uni-kl.de/frodo/triple/TripleReport.ps"> TRIPLE -- An RDF Query, Inference, and Transformation Language </a> </li> <li> <a href="http://citeseer.nj.nec.com/davulcu99layered.html"> A Layered Architecture for Querying Dynamic Web </a> </li> <li> <a href="http://citeseer.nj.nec.com/context/1225494/0"> Design and implementation of the physical layer in webbases: The XRover experience </a> </li> <li> <a href="http://citeseer.nj.nec.com/himmeroder98querying.html"> Querying the Web with FLORID </a> </li> </ul> <h3>Workflow modeling:</h3> <ul> <li> <a href="http://citeseer.nj.nec.com/davulcu98logic.html"> Logic-based modeling and analysis of workflows </a> </li> <li> <a href="http://citeseer.nj.nec.com/50366.html"> Workflow, Transactions, and Datalog </a> </li> </ul> <h3>Biocomputing:</h3> <ul> <li> <a href="http://www.sdsc.edu/~ludaesch/Paper/ssdbm00.html"> Knowledge-Based Integration of Neuroscience Data Sources </a> </li> </ul> <h3>Reasoning:</h3> <ul> <li> <a href="http://citeseer.nj.nec.com/balaban93flogic.html"> The F-Logic Approach for Description Languages </a> </li> <li> <a href="http://www.informatik.uni-kiel.de/~mh/publications/reports/MPI-I-94-224/paper01.ps.Z">F-logic Programming and Terminological Constraints</a> </li> <li> <a href="ftp://ftp.cs.sunysb.edu/pub/TechReports/kifer/tr-reasoning.ps"> Results on Reasoning about Updates in Transaction Logic </a>. LNCS 1472, Springer Verlag, 1998. </li> <li> <a href="http://www.ipsj.or.jp/members/SIGNotes/Eng/02/1993/092/article001.html"> An Implementation of Transaction Logic Programming and Its Application to Planning </a> </li> <li> <a href="http://www.ime.usp.br/~santos/iarf.ps"> Actions as Prolog Programs </a> </li> </ul> <h3>Information integration and warehousing:</h3> <ul> <li> <a href="http://www.blois.univ-tours.fr/~marcel/DDLP97.ps"> A Rule Based Language for Ordered Multidimentional Databases</a> </li> <li> <a href="http://www.foi.hr/~alovrenc/radovi/INES99/ines.ps"> Amalgamation of Heterogeneous Data Sources Using Amalgamated Annotated HiLog </a> </li> <li> <a href="http://context.mit.edu/~steph/cp97/cp97.html"> Semantic Integration of Disparate Information Sources over the Internet using Constraint Propagation </a> </li> <li> <a href="http://lsdis.cs.uga.edu/SemNSF/Studer-SemWebPosition.pdf"> SEAL - Tying Up Information Integration and Web Site Management </a> </li> <li> <a href="http://xml.coverpages.org/ni2001-08-31-b.html"> XPathLog and LoPiX: a Logical Approach to XML and XML Data Integration </a> </li> </ul> <h3>Other implementations:</h3> <ul> <li> <a href="http://www.computer.org/proceedings/icde/7807/78070583.pdf"> FLORID: A Prototype for F-Logic </a> </li> </ul> <pre> </pre> <p> <!--Don't touch! The date gets updated when you commit changes to this page--> $Date: 2002/05/21 17:03:29 $ </p> </pre> <P> <?php include "counter.php"; ?> <!-- update counter --> <?php $number = CounterImage(); ?> </p> <pre> </body> </html> --- NEW FILE: download.php --- <html><head><title>Download FLORA-2</title></head> <body bgcolor="#FFFFFF"> <h1> Download FLORA-2 </h1> <pre> </pre> <p> FLORA-2 requires the XSB deductive engine and is distributed as an XSB package. In addition, we release interim versions of FLORA-2, which typically contain additional features and bug fixes. Finally, the very latest (and not always stable) version can be downloaded from CVS. </p> <h3>Installing the version distributed with XSB:</h3> <p> Download and install <a href="http://xsb.sourceforge.net" target="new_window">XSB</a>. If you are planning to use the version of FLORA-2 that is distributed with XSB (which is likely tobe not the latest version), then FLORA-2 is already installed. However, it might need to be <a href="configure.html" target="new_window">configured</a>. </p> <p> Please take a look at the <a href="release_notes.html#package" target="new_window">release notes</a> for the list of changes, bug fixes, and incompatibilities. </p> <h3>Installing an interim stable version:</h3> <p> Sometimes FLORA-2 releases happen in-between the stable releases of XSB. These releases contain additional features as well as bug fixes. Download <a href="http://sourceforge.net/project/showfiles.php?group_id=50604" target="new_window">the latest interim release</a> into a separate directory and follow the <a href="installation.html" target="new_window">installation instructions</a>. </p> <p> Please take a look at the <a href="release_notes.html#interim" target="new_window">release notes</a> for the list of changes, bug fixes, and incompatibilities. </p> <h3>Installing the current development version from CVS:</h3> <p> This version contains the latest features, but might not be stable. However, this allows you to track the development of FLORA-2 and contribute! The nice thing is that you can install all three versions (the one in XSB, the interim one, and the CVS version) on the same system and switch between them at will (but not within the same session of XSB). </p> <p> Check out the latest version of the <emph>flora2</emph> module from the <a href="http://sourceforge.net/cvs/?group_id=50604" target="new_window"> CVS repository</a> into a separate directory and follow the <a href="installation.html" target="new_window">installation instructions</a>. Note: the development version downloaded from CVS would typically not be tested under Windows. Please report to us any problems (and fixes!). </p> <p> Here is a <a href="release_notes.html#top" target="new_window">partial list of changes</a> that have taken place since the interim release. </p> <pre> </pre> <p> <!--Don't touch! The date gets updated when you commit changes to this page--> $Date: 2002/05/21 17:03:29 $ </p> </pre> <P> <?php include "counter.php"; ?> <!-- update counter --> <?php $number = CounterImage(); ?> </p> <pre> </body> </html> --- NEW FILE: documentation.php --- <!doctype html public "-//w3c//dtd html 4.0 transitional//en"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <title>FLORA-2 Documentation</title> </head> <body bgcolor="#FFFFFF"> <h1>FLORA-2 Documentation</h1> <p> The FLORA-2 manual is distributed with the system. You need LaTeX and the associated tools in order to create a printable version. For your convenience, a PDF version of the manual is provided below. </p> <ul> <li>Manual for the <a href="docs/packagemanual.pdf">FLORA-2 package</a> that is distributed with the latest version of XSB. </li> <li>Manual for the <a href="docs/interimmanual.pdf">latest interim release</a> of FLORA-2. </li> <li>Manual for the CVS version: Since this version changes frequently, we do not convert it to PDF on a regular basis. You can create a printable version of the manual (which is found in the CVS version) using LaTeX and related tools. </li> </ul> <pre> </pre> <hr> <p> <!--Don't touch! The date gets updated when you commit changes to this page--> $Date: 2002/05/21 17:03:29 $ </pre> <P> <?php include "counter.php"; ?> <!-- update counter --> <?php $number = CounterImage(); ?> </p> <pre> </body> </html> --- NEW FILE: aboutTR.php --- <html><head><title>Transaction Logic</title></head> <body bgcolor="#FFFFFF"> <h1> Transaction Logic </h1> <pre> </pre> <p> Transaction logic provides a logical foundation for state changes and side effects in a logic programming language. A significant portion of this theory is implemented in FLORA-2. </p> <h3>Some Papers of Transaction Logic</h3> <ul> <li> <a href="ftp://ftp.cs.sunysb.edu/pub/TechReports/kifer/transaction-logic.ps.Z">Transaction Logic</a>. This is the most comprehensive report that describes this logic. </li> <li> <a href="ftp://ftp.cs.sunysb.edu/pub/TechReports/kifer/tr-chomicki.ps">Logic Programming for Database Transactions</a> in Logics for Databases and Information Systems, J. Chomicki and G. Saake (eds.), Kluwer Academic Publ., 1998. <br> This is an introduction to Transaction Logic, much shorter than the above report with a focus on database applications. </li> <li> <a href="ftp://ftp.cs.sunysb.edu/pub/TechReports/kifer/concurrent-trans-logic.ps.Z"> Concurrent Transaction Logic </a>. Joint Intl. Conference and Symposium on Logic Programming, Bonn, Germany, September 1996. <br> This is an extension of Transaction Logic, which allows parallelism in the execution of complex actions. This extension is not implemented in FLORA-2, but an independent implementation can be found <a href="http://www.cs.toronto.edu/~bonner/ctr/index.html">here</a>. One important use of Concurrent Transaction Logic is in <a href="http://citeseer.nj.nec.com/davulcu98logic.html"> modeling and verification of workflows</a> (Intl. ACM Conference on Principles of Database Systems, 1998). </li> </ul> <pre> </pre> <p> <!--Don't touch! The date gets updated when you commit changes to this page--> $Date: 2002/05/21 17:03:29 $ </p> </pre> <P> <?php include "counter.php"; ?> <!-- update counter --> <?php $number = CounterImage(); ?> </p> <pre> </body> </html> --- NEW FILE: aboutHiLog.php --- <html><head><title>HiLog</title></head> <body bgcolor="#FFFFFF"> <h1> HiLog </h1> <pre> </pre> <h3>Some Papers on HiLog</h3> <p> HiLog is a logical formalism that provides higher-order and meta-programming features in a computationally tractable first-order setting. </p> <ul> <li> <a href="ftp://ftp.cs.sunysb.edu/pub/TechReports/kifer/hilog.ps.Z"> HiLog: A Foundation for Higher-Order Logic Programming </a>. Journal of Logic Programming, 1993. <br> This is the main reference to HiLog. An earlier paper appeared in ILPS'89. </li> <li> <a href="ftp://ftp.cs.sunysb.edu/pub/TechReports/kifer/sorts.ps.Z"> Sorted HiLog: Sorts in Higher-Order Logic Data Languages </a>. Intl. Conf. on Database Theory, 1995. Lecture Notes in Computer Science 893. This work extends HiLog with certain typing system. Not implemented in FLORA-2. </li> <li> K.A. Ross, "On Negation in HiLog". Journal of Logic Programming 18(1), 1994. </li> <li> <a href="http://www.csd.uu.se/~kostis/Papers/hilog.html"> Efficient Execution of HiLog in WAM-based Prolog implementations </a>. Intl. Conference on Logic Programming, 1995. </li> </ul> <pre> </pre> <p> <!--Don't touch! The date gets updated when you commit changes to this page--> $Date: 2002/05/21 17:03:29 $ </p> </pre> <P> <?php include "counter.php"; ?> <!-- update counter --> <?php $number = CounterImage(); ?> </p> <pre> </body> </html> --- NEW FILE: aboutFlogic.php --- <html><head><title>Frame Logic</title></head> <body bgcolor="#FFFFFF"> <h1> Frame Logic </h1> <pre> </pre> <p> <emph>Frame Logic</emph> (or F-logic) provides a logical foundation for frame-based and object-oriented languages for data and knowledge representation. </p> <h3>Some papers about F-logic</h3> <ul> <li> <a href="ftp://ftp.cs.sunysb.edu/pub/TechReports/kifer/flogic.ps.Z">Logical Foundations of Object-Oriented and Frame-Based Languages</a>. Journal of ACM, May 1995. <br> This is the main reference to F-logic. An earlier paper appeared in ACM SIGMOD 1989. </li> <li> <a href="http://citeseer.nj.nec.com/frohn94acces.html"> Access to Objects by Path Expressions and Rules </a>. Proceedings of VLDB 1994. <br> This paper introduces a sophisticated form of path expressions, which is used in FLORA-2. These path expressions are a precursor to XPath. </li> <li> <a href="http://citeseer.nj.nec.com/ludascher98managing.html"> Managing Semistructured Data With Florid: A Deductive Object-Oriented Perspective</a>. Information Systems 23(8), 1998. <br> Shows that <a href="http://www.informatik.uni-freiburg.de/~dbis/florid/">FLORID</a> (one of the first implementations of F-logic) is a powerful tool for representing and querying semi-structured data. </li> <li> <a href="ftp://ftp.cs.sunysb.edu/pub/TechReports/kifer/doodflora.ps.Z"> Implementing an Efficient DOOD System Using a Tabling Logic Engine </a>. Intl. Conference on Computational Logic, July 2000. <br> Describes some aspects related to the implementation of FLORA-2. </li> </ul> <pre> </pre> <p> <!--Don't touch! The date gets updated when you commit changes to this page--> $Date: 2002/05/21 17:03:29 $ </p> </pre> <P> <?php include "counter.php"; ?> <!-- update counter --> <?php $number = CounterImage(); ?> </p> <pre> </body> </html> Index: florahome.php =================================================================== RCS file: /cvsroot/flora/flora-website/florahome.php,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- florahome.php 21 May 2002 06:24:45 -0000 1.1 +++ florahome.php 21 May 2002 17:03:29 -0000 1.2 @@ -85,6 +85,14 @@ $Date$ </p> +</pre> +<P> +<?php include "counter.php"; ?> +<!-- update counter --> +<?php $number = CounterImage(); ?> +</p> +<pre> + </body> </html> Index: florabar.php =================================================================== RCS file: /cvsroot/flora/flora-website/florabar.php,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- florabar.php 21 May 2002 06:24:45 -0000 1.1 +++ florabar.php 21 May 2002 17:03:29 -0000 1.2 @@ -1,6 +1,6 @@ <html><head><title>FLORA-2 Side Bar </title></head> -<body bgcolor="#9999cc"> +<body bgcolor="#7999af"> <h1> <img align=middle src="flora.gif" width=90 height=210> </h1> @@ -21,10 +21,10 @@ target="right_window">General FLORA-2 project page</a> </li> <li> -<a href="download.html" target="right_window">Download</a> +<a href="download.php" target="right_window">Download</a> </li> <li> -<a href="documentation.html" target="right_window">Documentation</a> +<a href="documentation.php" target="right_window">Documentation</a> </li> <li> <a href="http://sourceforge.net/mail/?group_id=50604" target="right_window">Mailing lists</a> @@ -41,16 +41,16 @@ </p> <ul> <li> - <a href="aboutFlogic.html" target="right_window">About F-logic</a> + <a href="aboutFlogic.php" target="right_window">About F-logic</a> </li> <li> - <a href="aboutHiLog.html" target="right_window">About HiLog</a> + <a href="aboutHiLog.php" target="right_window">About HiLog</a> </li> <li> - <a href="aboutTR.html" target="right_window">About Transaction Logic</a> + <a href="aboutTR.php" target="right_window">About Transaction Logic</a> </li> <li> - <a href="relatedWorks.html" target="right_window">Other related works</a> + <a href="relatedWorks.php" target="right_window">Other related works</a> </li> </ul> --- relatedWorks.html DELETED --- --- download.html DELETED --- --- documentation.html DELETED --- --- aboutTR.html DELETED --- --- aboutHiLog.html DELETED --- --- aboutFlogic.html DELETED --- |
|
From: <ki...@us...> - 2002-05-21 16:23:39
|
Update of /cvsroot/flora/flora-website In directory usw-pr-cvs1:/tmp/cvs-serv23215 Modified Files: relatedWorks.html aboutTR.html Log Message: more logical organization of papers Index: relatedWorks.html =================================================================== RCS file: /cvsroot/flora/flora-website/relatedWorks.html,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- relatedWorks.html 21 May 2002 08:40:54 -0000 1.2 +++ relatedWorks.html 21 May 2002 16:23:36 -0000 1.3 @@ -9,13 +9,15 @@ </pre> <p> Some of the works that apply F-logic, Transaction Logic, or HiLog to various - problems ranging from ontology management to modeling workflows are listed + problems ranging from ontology management to information integration + to modeling workflows are listed below. </p> <pre> </pre> +<h3>Web information systems:</h3> <ul> <li> <a href="http://citeseer.nj.nec.com/425424.html"> @@ -28,6 +30,25 @@ </a> </li> <li> + <a href="http://citeseer.nj.nec.com/davulcu99layered.html"> + A Layered Architecture for Querying Dynamic Web + </a> + </li> + <li> + <a href="http://citeseer.nj.nec.com/context/1225494/0"> + Design and implementation of the + physical layer in webbases: The XRover experience + </a> + </li> + <li> + <a href="http://citeseer.nj.nec.com/himmeroder98querying.html"> + Querying the Web with FLORID + </a> + </li> +</ul> +<h3>Workflow modeling:</h3> +<ul> + <li> <a href="http://citeseer.nj.nec.com/davulcu98logic.html"> Logic-based modeling and analysis of workflows </a> @@ -37,44 +58,54 @@ Workflow, Transactions, and Datalog </a> </li> +</ul> +<h3>Biocomputing:</h3> +<ul> <li> <a href="http://www.sdsc.edu/~ludaesch/Paper/ssdbm00.html"> Knowledge-Based Integration of Neuroscience Data Sources </a> </li> +</ul> +<h3>Reasoning:</h3> +<ul> <li> <a href="http://citeseer.nj.nec.com/balaban93flogic.html"> The F-Logic Approach for Description Languages </a> </li> <li> - <a href="http://www.blois.univ-tours.fr/~marcel/DDLP97.ps"> - A Rule Based Language for Ordered Multidimentional Databases</a> + <a + href="http://www.informatik.uni-kiel.de/~mh/publications/reports/MPI-I-94-224/paper01.ps.Z">F-logic + Programming and Terminological Constraints</a> </li> <li> - <a href="http://www.foi.hr/~alovrenc/radovi/INES99/ines.ps"> - Amalgamation of Heterogeneous Data Sources Using Amalgamated Annotated - HiLog - </a> + <a href="ftp://ftp.cs.sunysb.edu/pub/TechReports/kifer/tr-reasoning.ps"> + Results on Reasoning about Updates in Transaction Logic + </a>. LNCS 1472, Springer Verlag, 1998. </li> <li> - <a href="http://citeseer.nj.nec.com/himmeroder98querying.html"> - Querying the Web with FLORID + <a href="http://www.ipsj.or.jp/members/SIGNotes/Eng/02/1993/092/article001.html"> + An Implementation of Transaction Logic Programming and Its Application + to Planning </a> </li> <li> - <a href="http://www.computer.org/proceedings/icde/7807/78070583.pdf"> - FLORID: A Prototype for F-Logic + <a href="http://www.ime.usp.br/~santos/iarf.ps"> + Actions as Prolog Programs </a> </li> +</ul> +<h3>Information integration and warehousing:</h3> +<ul> <li> - <a - href="http://www.informatik.uni-kiel.de/~mh/publications/reports/MPI-I-94-224/paper01.ps.Z">F-logic - Programming and Terminological Constraints</a> + <a href="http://www.blois.univ-tours.fr/~marcel/DDLP97.ps"> + A Rule Based Language for Ordered Multidimentional Databases</a> </li> <li> - <a href="http://lsdis.cs.uga.edu/SemNSF/Studer-SemWebPosition.pdf"> - SEAL - Tying Up Information Integration and Web Site Management + <a href="http://www.foi.hr/~alovrenc/radovi/INES99/ines.ps"> + Amalgamation of Heterogeneous Data Sources Using Amalgamated Annotated + HiLog </a> </li> <li> @@ -84,20 +115,22 @@ </a> </li> <li> - <a href="http://xml.coverpages.org/ni2001-08-31-b.html"> - XPathLog and LoPiX: a Logical - Approach to XML and XML Data Integration + <a href="http://lsdis.cs.uga.edu/SemNSF/Studer-SemWebPosition.pdf"> + SEAL - Tying Up Information Integration and Web Site Management </a> </li> <li> - <a href="http://www.ipsj.or.jp/members/SIGNotes/Eng/02/1993/092/article001.html"> - An Implementation of Transaction Logic Programming and Its Application - to Planning + <a href="http://xml.coverpages.org/ni2001-08-31-b.html"> + XPathLog and LoPiX: a Logical + Approach to XML and XML Data Integration </a> </li> +</ul> +<h3>Other implementations:</h3> +<ul> <li> - <a href="http://www.ime.usp.br/~santos/iarf.ps"> - Actions as Prolog Programs + <a href="http://www.computer.org/proceedings/icde/7807/78070583.pdf"> + FLORID: A Prototype for F-Logic </a> </li> </ul> Index: aboutTR.html =================================================================== RCS file: /cvsroot/flora/flora-website/aboutTR.html,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- aboutTR.html 21 May 2002 08:40:54 -0000 1.2 +++ aboutTR.html 21 May 2002 16:23:36 -0000 1.3 @@ -45,11 +45,6 @@ modeling and verification of workflows</a> (Intl. ACM Conference on Principles of Database Systems, 1998). </li> - <li> - <a href="ftp://ftp.cs.sunysb.edu/pub/TechReports/kifer/tr-reasoning.ps"> - Results on Reasoning about Updates in Transaction Logic - </a>. LNCS 1472, Springer Verlag, 1998. - </li> </ul> |
|
From: <ki...@us...> - 2002-05-21 08:41:00
|
Update of /cvsroot/flora/flora-website In directory usw-pr-cvs1:/tmp/cvs-serv2179 Modified Files: relatedWorks.html aboutTR.html aboutHiLog.html aboutFlogic.html Log Message: more info on related works Index: relatedWorks.html =================================================================== RCS file: /cvsroot/flora/flora-website/relatedWorks.html,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- relatedWorks.html 21 May 2002 06:24:45 -0000 1.1 +++ relatedWorks.html 21 May 2002 08:40:54 -0000 1.2 @@ -8,11 +8,99 @@ </pre> <p> + Some of the works that apply F-logic, Transaction Logic, or HiLog to various + problems ranging from ontology management to modeling workflows are listed + below. </p> <pre> </pre> +<ul> + <li> + <a href="http://citeseer.nj.nec.com/425424.html"> + Ontobroker: How to Make the WWW Intelligent + </a> + </li> + <li> + <a href="http://www.dfki.uni-kl.de/frodo/triple/TripleReport.ps"> + TRIPLE -- An RDF Query, Inference, and Transformation Language + </a> + </li> + <li> + <a href="http://citeseer.nj.nec.com/davulcu98logic.html"> + Logic-based modeling and analysis of workflows + </a> + </li> + <li> + <a href="http://citeseer.nj.nec.com/50366.html"> + Workflow, Transactions, and Datalog + </a> + </li> + <li> + <a href="http://www.sdsc.edu/~ludaesch/Paper/ssdbm00.html"> + Knowledge-Based Integration of Neuroscience Data Sources + </a> + </li> + <li> + <a href="http://citeseer.nj.nec.com/balaban93flogic.html"> + The F-Logic Approach for Description Languages + </a> + </li> + <li> + <a href="http://www.blois.univ-tours.fr/~marcel/DDLP97.ps"> + A Rule Based Language for Ordered Multidimentional Databases</a> + </li> + <li> + <a href="http://www.foi.hr/~alovrenc/radovi/INES99/ines.ps"> + Amalgamation of Heterogeneous Data Sources Using Amalgamated Annotated + HiLog + </a> + </li> + <li> + <a href="http://citeseer.nj.nec.com/himmeroder98querying.html"> + Querying the Web with FLORID + </a> + </li> + <li> + <a href="http://www.computer.org/proceedings/icde/7807/78070583.pdf"> + FLORID: A Prototype for F-Logic + </a> + </li> + <li> + <a + href="http://www.informatik.uni-kiel.de/~mh/publications/reports/MPI-I-94-224/paper01.ps.Z">F-logic + Programming and Terminological Constraints</a> + </li> + <li> + <a href="http://lsdis.cs.uga.edu/SemNSF/Studer-SemWebPosition.pdf"> + SEAL - Tying Up Information Integration and Web Site Management + </a> + </li> + <li> + <a href="http://context.mit.edu/~steph/cp97/cp97.html"> + Semantic Integration of Disparate Information Sources over the Internet + using Constraint Propagation + </a> + </li> + <li> + <a href="http://xml.coverpages.org/ni2001-08-31-b.html"> + XPathLog and LoPiX: a Logical + Approach to XML and XML Data Integration + </a> + </li> + <li> + <a href="http://www.ipsj.or.jp/members/SIGNotes/Eng/02/1993/092/article001.html"> + An Implementation of Transaction Logic Programming and Its Application + to Planning + </a> + </li> + <li> + <a href="http://www.ime.usp.br/~santos/iarf.ps"> + Actions as Prolog Programs + </a> + </li> +</ul> <p> <!--Don't touch! The date gets updated when you commit changes to this page--> $Date$ Index: aboutTR.html =================================================================== RCS file: /cvsroot/flora/flora-website/aboutTR.html,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- aboutTR.html 21 May 2002 06:24:45 -0000 1.1 +++ aboutTR.html 21 May 2002 08:40:54 -0000 1.2 @@ -8,7 +8,49 @@ </pre> <p> + Transaction logic provides a logical foundation for state changes and side + effects in a logic programming language. A significant portion of this + theory is implemented in FLORA-2. </p> + +<h3>Some Papers of Transaction Logic</h3> +<ul> + <li> + <a + href="ftp://ftp.cs.sunysb.edu/pub/TechReports/kifer/transaction-logic.ps.Z">Transaction + Logic</a>. This is the most comprehensive report that describes this logic. + </li> + <li> + <a + href="ftp://ftp.cs.sunysb.edu/pub/TechReports/kifer/tr-chomicki.ps">Logic + Programming for Database Transactions</a> + in Logics for Databases and Information Systems, J. Chomicki and G. Saake + (eds.), Kluwer Academic Publ., 1998. + <br> + This is an introduction to Transaction Logic, much shorter than the above + report with a focus on database applications. + </li> + <li> + <a href="ftp://ftp.cs.sunysb.edu/pub/TechReports/kifer/concurrent-trans-logic.ps.Z"> + Concurrent Transaction Logic + </a>. Joint Intl. Conference and Symposium on + Logic Programming, Bonn, Germany, September 1996. + <br> + This is an extension of Transaction Logic, which allows parallelism in the + execution of complex actions. This extension is not implemented in + FLORA-2, but an independent implementation can be found + <a href="http://www.cs.toronto.edu/~bonner/ctr/index.html">here</a>. + One important use of Concurrent Transaction Logic is in + <a href="http://citeseer.nj.nec.com/davulcu98logic.html"> + modeling and verification of workflows</a> (Intl. ACM Conference on + Principles of Database Systems, 1998). + </li> + <li> + <a href="ftp://ftp.cs.sunysb.edu/pub/TechReports/kifer/tr-reasoning.ps"> + Results on Reasoning about Updates in Transaction Logic + </a>. LNCS 1472, Springer Verlag, 1998. + </li> +</ul> <pre> Index: aboutHiLog.html =================================================================== RCS file: /cvsroot/flora/flora-website/aboutHiLog.html,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- aboutHiLog.html 21 May 2002 06:24:45 -0000 1.1 +++ aboutHiLog.html 21 May 2002 08:40:54 -0000 1.2 @@ -7,8 +7,38 @@ <pre> </pre> +<h3>Some Papers on HiLog</h3> <p> + HiLog is a logical formalism that provides higher-order and meta-programming + features in a computationally tractable first-order setting. </p> +<ul> + <li> + <a href="ftp://ftp.cs.sunysb.edu/pub/TechReports/kifer/hilog.ps.Z"> + HiLog: A Foundation for Higher-Order Logic Programming + </a>. Journal of Logic Programming, 1993. + <br> + This is the main reference to HiLog. An earlier paper appeared in ILPS'89. + </li> + <li> + <a href="ftp://ftp.cs.sunysb.edu/pub/TechReports/kifer/sorts.ps.Z"> + Sorted HiLog: Sorts in Higher-Order Logic Data Languages + </a>. + + Intl. Conf. on Database Theory, 1995. Lecture Notes in Computer Science + 893. This work extends HiLog with certain typing system. Not implemented + in FLORA-2. + </li> + <li> + K.A. Ross, "On Negation in HiLog". Journal of Logic Programming 18(1), + 1994. + </li> + <li> + <a href="http://www.csd.uu.se/~kostis/Papers/hilog.html"> + Efficient Execution of HiLog in WAM-based Prolog implementations + </a>. Intl. Conference on Logic Programming, 1995. + </li> +</ul> <pre> Index: aboutFlogic.html =================================================================== RCS file: /cvsroot/flora/flora-website/aboutFlogic.html,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- aboutFlogic.html 21 May 2002 06:24:45 -0000 1.1 +++ aboutFlogic.html 21 May 2002 08:40:54 -0000 1.2 @@ -8,7 +8,49 @@ </pre> <p> + <emph>Frame Logic</emph> (or F-logic) provides a logical foundation for + frame-based and object-oriented languages for data and knowledge + representation. </p> + +<h3>Some papers about F-logic</h3> + <ul> + <li> <a + href="ftp://ftp.cs.sunysb.edu/pub/TechReports/kifer/flogic.ps.Z">Logical + Foundations of Object-Oriented and Frame-Based Languages</a>. Journal of + ACM, May 1995. + <br> + This is the main reference to F-logic. An earlier paper appeared in ACM + SIGMOD 1989. + </li> + <li> + <a href="http://citeseer.nj.nec.com/frohn94acces.html"> + Access to Objects by Path Expressions and Rules + </a>. Proceedings of VLDB 1994. + <br> + This paper introduces a sophisticated form of path expressions, which + is used in FLORA-2. These path expressions are a precursor to XPath. + </li> + <li> + <a href="http://citeseer.nj.nec.com/ludascher98managing.html"> + Managing Semistructured Data With Florid: A + Deductive Object-Oriented Perspective</a>. Information Systems + 23(8), 1998. + <br> + Shows that <a + href="http://www.informatik.uni-freiburg.de/~dbis/florid/">FLORID</a> + (one of the first implementations of + F-logic) is a powerful tool for representing and querying + semi-structured data. + </li> + <li> + <a href="ftp://ftp.cs.sunysb.edu/pub/TechReports/kifer/doodflora.ps.Z"> + Implementing an Efficient DOOD System Using a Tabling Logic Engine + </a>. Intl. Conference on Computational Logic, July 2000. + <br> + Describes some aspects related to the implementation of FLORA-2. + </li> + </ul> <pre> |
|
From: <ki...@us...> - 2002-05-21 06:24:49
|
Update of /cvsroot/flora/flora-website In directory usw-pr-cvs1:/tmp/cvs-serv25251 Modified Files: release_notes.html installation.html index.php contactus.php Added Files: relatedWorks.html florahome.php florabar.php download.html documentation.html configure.html aboutTR.html aboutHiLog.html aboutFlogic.html Log Message: reorganized the web site --- NEW FILE: relatedWorks.html --- <html><head><title>Related Works</title></head> <body bgcolor="#FFFFFF"> <h1> Related Works </h1> <pre> </pre> <p> </p> <pre> </pre> <p> <!--Don't touch! The date gets updated when you commit changes to this page--> $Date: 2002/05/21 06:24:45 $ </p> </body> </html> --- NEW FILE: florahome.php --- <html><head><title>FLORA-2 Home Page </title></head> <body bgcolor="#FFFFFF"> <h1> <pre> </pre> <center> <i>FLORA</i>-2: An Object-Oriented Knowledge Base Language </center> </h1> <a name="top"> <p> <pre> </pre> <p> FLORA-2 is a sophisticated object-oriented knowledge base language and application development platform. It is implemented as a set of run-time libraries and a compiler that translates a unified language of F-logic, HiLog, and Transaction Logic into the <a href="http://xsb.sourceforge.net/"> XSB deductive engine</a>. </p> The programming language supported by FLORA-2 is a dialect of F-logic with numerous extensions, which include a natural way to do meta-programming in the style of HiLog and logical updates in the style of Transaction Logic. FLORA-2 was designed with extensibility and flexibility in mind, and it provides strong support for modular software design through its unique feature of dynamic modules. </p> <p> Applications of FLORA-2 include intelligent agents, Semantic Web, ontology management, integration of information, and others. </p> <p> March 11, 2002: We are happy to announce the release of a "late alpha" version of FLORA-2. This version is part of <a href="http://sourceforge.net/project/showfiles.php?group_id=1176">XSB release 2.5</a>. It has significantly improved stability and several important new features. See <a href="http://xsb.sourceforge.net/rel_notes.html#flora">release notes</a> for the details. </p> <p> Related links: </p> <ul> <li> <A href="http://www.SemanticWeb.org/">Semantic Web Resources</a> <li> <a href="http://www.informatik.uni-freiburg.de/~dbis/florid/"> FLORID</a>: A C++-based implementation of F-logic from Freiburg University. <li> <A href="http://www.dsic.upv.es/~pcarsi/tfl/">Transaction F-logic prototype</a> from the University of Valencia, Spain. <li> <A href="http://triple.semanticweb.org">TRIPLE</a>: A Query Language for RDF based on F-logic. </li> <li> <a href="http://www.cs.toronto.edu/~bonner/transaction-logic.html">The Transaction Logic Page</a> at the University of Toronto. <li> <A href="http://www.cs.sunysb.edu/~kifer/dood/">The DOOD page</a>: additional links to information on Deductive and Object-Oriented Databases. </ul> <pre> </pre> <hr> <p> </p> <address> <a href="mailto:flo...@li...">flo...@li...</a> </address> <p> <!--Don't touch! The date gets updated when you commit changes to this page--> $Date: 2002/05/21 06:24:45 $ </p> </body> </html> --- NEW FILE: florabar.php --- <html><head><title>FLORA-2 Side Bar </title></head> <body bgcolor="#9999cc"> <h1> <img align=middle src="flora.gif" width=90 height=210> </h1> <pre> </pre> <p> Project information: </p> <ul> <li> <a href="florahome.php" target="right_window">Home</a> </li> <li> <a href="http://sourceforge.net/projects/flora/" target="right_window">General FLORA-2 project page</a> </li> <li> <a href="download.html" target="right_window">Download</a> </li> <li> <a href="documentation.html" target="right_window">Documentation</a> </li> <li> <a href="http://sourceforge.net/mail/?group_id=50604" target="right_window">Mailing lists</a> </li> <li> <a href="http://sourceforge.net/tracker/?atid=460329&group_id=50604&func=browse" target="right_window">Bug tracking</a> </li> </ul> <p> </p> <p> Technical information: </p> <ul> <li> <a href="aboutFlogic.html" target="right_window">About F-logic</a> </li> <li> <a href="aboutHiLog.html" target="right_window">About HiLog</a> </li> <li> <a href="aboutTR.html" target="right_window">About Transaction Logic</a> </li> <li> <a href="relatedWorks.html" target="right_window">Other related works</a> </li> </ul> <pre> </pre> <hr> <ul> <p> <A HREF="contactus.php" target="right_window">Contact us</a> </p> </ul> <pre> </pre> <P> <?php include "counter.php"; ?> <?php $number = CounterImage(); ?> <IMG SRC="<?php echo($number); ?>" ALIGN="left"> visits since August 10, 2001. </p> <pre> </pre> <P> <A href="http://sourceforge.net"> <IMG src="http://sourceforge.net/sflogo.php?group_id=1176&type=1" width="88" height="31" border="0" alt="SourceForge Logo"></A> </p> <pre> </pre> <p> <!--Don't touch! The date gets updated when you commit changes to this page--> $Date: 2002/05/21 06:24:45 $ </p> </body> </html> --- NEW FILE: download.html --- <html><head><title>Download FLORA-2</title></head> <body bgcolor="#FFFFFF"> <h1> Download FLORA-2 </h1> <pre> </pre> <p> FLORA-2 requires the XSB deductive engine and is distributed as an XSB package. In addition, we release interim versions of FLORA-2, which typically contain additional features and bug fixes. Finally, the very latest (and not always stable) version can be downloaded from CVS. </p> <h3>Installing the version distributed with XSB:</h3> <p> Download and install <a href="http://xsb.sourceforge.net" target="new_window">XSB</a>. If you are planning to use the version of FLORA-2 that is distributed with XSB (which is likely tobe not the latest version), then FLORA-2 is already installed. However, it might need to be <a href="configure.html" target="new_window">configured</a>. </p> <p> Please take a look at the <a href="release_notes.html#package" target="new_window">release notes</a> for the list of changes, bug fixes, and incompatibilities. </p> <h3>Installing an interim stable version:</h3> <p> Sometimes FLORA-2 releases happen in-between the stable releases of XSB. These releases contain additional features as well as bug fixes. Download <a href="http://sourceforge.net/project/showfiles.php?group_id=50604" target="new_window">the latest interim release</a> into a separate directory and follow the <a href="installation.html" target="new_window">installation instructions</a>. </p> <p> Please take a look at the <a href="release_notes.html#interim" target="new_window">release notes</a> for the list of changes, bug fixes, and incompatibilities. </p> <h3>Installing the current development version from CVS:</h3> <p> This version contains the latest features, but might not be stable. However, this allows you to track the development of FLORA-2 and contribute! The nice thing is that you can install all three versions (the one in XSB, the interim one, and the CVS version) on the same system and switch between them at will (but not within the same session of XSB). </p> <p> Check out the latest version of the <emph>flora2</emph> module from the <a href="http://sourceforge.net/cvs/?group_id=50604" target="new_window"> CVS repository</a> into a separate directory and follow the <a href="installation.html" target="new_window">installation instructions</a>. </p> <p> Here is a <a href="release_notes.html#top" target="new_window">partial list of changes</a> that have taken place since the interim release. </p> <pre> </pre> <p> <!--Don't touch! The date gets updated when you commit changes to this page--> $Date: 2002/05/21 06:24:45 $ </p> </body> </html> --- NEW FILE: documentation.html --- <!doctype html public "-//w3c//dtd html 4.0 transitional//en"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <title>FLORA-2 Documentation</title> </head> <body bgcolor="#FFFFFF"> <h1>FLORA-2 Documentation</h1> <p> The FLORA-2 manual is distributed with the system. You need LaTeX and the associated tools in order to create a printable version. For your convenience, a PDF version of the manual is provided below. </p> <ul> <li>Manual for the <a href="docs/packagemanual.pdf">FLORA-2 package</a> that is distributed with the latest version of XSB. </li> <li>Manual for the <a href="docs/interimmanual.pdf">latest interim release</a> of FLORA-2. </li> <li>Manual for the CVS version: Since this version changes frequently, we do not convert it to PDF on a regular basis. You can create a printable version of the manual (which is found in the CVS version) using LaTeX and related tools. </li> </ul> <pre> </pre> <hr> <p> <!--Don't touch! The date gets updated when you commit changes to this page--> $Date: 2002/05/21 06:24:45 $ </body> </html> --- NEW FILE: configure.html --- <!doctype html public "-//w3c//dtd html 4.0 transitional//en"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <title>Configuring FLORA-2</title> </head> <body bgcolor="#FFFFFF"> <h1>Configuring the FLORA-2 Package Distributed with XSB</h1> <p> If you have earlier downloaded XSB, then its FLORA-2 package is already installed. However, it might need to be configured. This is done as folows (assuming that XSB is installed in the directory <tt>~/XSB</tt> and is already configured): </p> <pre> cd ~/XSB/packages/flora2 make clean makeflora </pre> <p> If your system cannot find XSB on its execution PATH, then you have to supply the XSB installation directory as an argument, e.g., </p> <pre> makeflora ~/XSB </pre> <p> To build FLORA-2 in Windows, you need Microsoft's <tt>nmake</tt> or compatible installed. Then use the following commands to configure FLORA-2 (assuming that XSB is installed in D:\XSB and is configured): </p> <pre> cd D:\XSB\packages\flora2 nmake clean nmake /f NMakefile.mak </pre> <p> Enjoy! </p> <hr> <p> <!--Don't touch! The date gets updated when you commit changes to this page--> $Date: 2002/05/21 06:24:45 $ </body> </html> --- NEW FILE: aboutTR.html --- <html><head><title>Transaction Logic</title></head> <body bgcolor="#FFFFFF"> <h1> Transaction Logic </h1> <pre> </pre> <p> </p> <pre> </pre> <p> <!--Don't touch! The date gets updated when you commit changes to this page--> $Date: 2002/05/21 06:24:45 $ </p> </body> </html> --- NEW FILE: aboutHiLog.html --- <html><head><title>HiLog</title></head> <body bgcolor="#FFFFFF"> <h1> HiLog </h1> <pre> </pre> <p> </p> <pre> </pre> <p> <!--Don't touch! The date gets updated when you commit changes to this page--> $Date: 2002/05/21 06:24:45 $ </p> </body> </html> --- NEW FILE: aboutFlogic.html --- <html><head><title>Frame Logic</title></head> <body bgcolor="#FFFFFF"> <h1> Frame Logic </h1> <pre> </pre> <p> </p> <pre> </pre> <p> <!--Don't touch! The date gets updated when you commit changes to this page--> $Date: 2002/05/21 06:24:45 $ </p> </body> </html> Index: release_notes.html =================================================================== RCS file: /cvsroot/flora/flora-website/release_notes.html,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- release_notes.html 18 May 2002 20:20:14 -0000 1.2 +++ release_notes.html 21 May 2002 06:24:45 -0000 1.3 @@ -4,20 +4,24 @@ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <title>FLORA-2 Release Notes</title> </head> -<body> +<body bgcolor="#FFFFFF"> + +<a name="top"> <hr> <center> -<h1> Release Notes for Version 0.9</h1></center> +<a name="interim"> +<h1> Release Notes for Version 0.9</h1> +</center> <h3>General</h3> - - -<h3>News</h3> <p> This release introduces a number of new features, improves performance, and stability. </p> + + +<h3>News</h3> <ul> <li> Many bug fixed and many new features. </li> @@ -45,17 +49,48 @@ </ul> +<pre> + +</pre> <hr> +<center> +<a name="package"> +<h1> Release Notes for Version 0.86</h1> +</center> + +<h3>General</h3> <p> +This release fixes many bugs, eliminates some restrictions, and adds +new features. +</p> + +<h3>News</h3> +<ul> +<li> The most important new feature is the ability to check for undefined +predicates and methods in debug mode (see the manual regarding checking +undefinedness checks). This feature simplifies debugging considerably. +<li> Flora compiler now checks if a tabled predicate depends on an update +operation and issues appropriate warnings. Such dependency is considered to be +a likely program bug. +<li> Numbered anonymous oids added (e.g., _#123). They behave like regular +anonymous oids (_#) in the sense that they are substituted by a new oid. +However, numbered oids can be referenced within the same clause (e.g., +_#12[self->_#12]). +<li> Optimized compilation of path expressions and nested terms. +</ul> + + + <hr> + +<p> <address> Feedback: <a href="mailto:flo...@li...">The FLORA-2 Development Team</a> </address> -<hr> <p> <!--Don't touch! The date gets updated when you commit changes to this page--> $Date$ Index: installation.html =================================================================== RCS file: /cvsroot/flora/flora-website/installation.html,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- installation.html 18 May 2002 20:20:14 -0000 1.1 +++ installation.html 21 May 2002 06:24:45 -0000 1.2 @@ -4,42 +4,18 @@ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <title>FLORA-2 Installation</title> </head> -<body> +<body bgcolor="#FFFFFF"> - <h1>FLORA-2 Installation Instructions</h1> + <h1>Installing and Interim Release of FLORA-2 or from CVS</h1> <p> - FLORA-2 is distributed as a package in XSB as well as separately, from its - own <a href="http://flora.sourceforge.net">Web site</a>. -<p> - Releases that appear on this site typically contain various enhancements - and bug fixes compared to the version that is distributed with XSB. However, - the version that you might download from CVS might be less stable (but - might contain even more bleeding edge features). Several different versions - of FLORA (the one inside XSB, interim releases, and the CVS version) can - co-exist on the same system (but do not mix and match them within the same - XSB session). -<p> - If you have earlier downloaded XSB, then FLORA-2 is already installed, but - might need to be configured. This is done as folows (assuming that XSB is - installed in the directory <tt>~/XSB</tt> and is already configured): - <pre> - cd ~/XSB/packages/flora2 - make clean - makeflora - </pre> - If your system cannot find XSB on its execution PATH, then you have to - supply the XSB installation directory as an argument, e.g., - <pre> - makeflora ~/XSB - </pre> -<p> If you are installing an interim version of FLORA-2 or one from CVS, you have to download it into a separate directory, which is <EM>outside</EM> of the XSB directory tree, e.g., <tt>~/bleeding-edge-flora</tt>. After unpacking (or checking out from CVS) the FLORA-2 sources will be placed in the subdirectory called <tt>flora2</tt>. To configure FLORA-2, do the following: +</p> <pre> cd ~/bleeding-edge-flora/flora2 @@ -47,10 +23,12 @@ makeflora </pre> +<p> (assuming that XSB has already been installed and configured separately). If an XSB executable is not on your program search <tt>PATH</tt>, then you might need to provide the XSB installation directory to <tt>makeflora</tt> as an argument, e.g., +</p> <pre> makeflora ~/XSB @@ -58,21 +36,17 @@ <p> To build FLORA-2 in Windows, you need Microsoft's <tt>nmake</tt> or -compatible installed. Then use the following two commands to configure -FLORA-2 (assuming that XSB is installed and configured): +compatible installed. Then use the following commands to configure +FLORA-2 (assuming that XSB is installed and configured and FLORA is installed +in D:\bleeding-edge-flora\flora2): +</p> <pre> - cd ~/bleeding-edge-flora/flora2 + cd D:\bleeding-edge-flora\flora2 nmake clean nmake /f NMakefile.mak </pre> -<p> -<hr> -<address> -Feedback: <a href="mailto:flo...@li...">The FLORA-2 -Development Team</a> -</address> <hr> Index: index.php =================================================================== RCS file: /cvsroot/flora/flora-website/index.php,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- index.php 20 May 2002 01:38:14 -0000 1.4 +++ index.php 21 May 2002 06:24:45 -0000 1.5 @@ -1,112 +1,14 @@ -<html><head><title>FLORA-2 Home Page </title></head> - -<body background=/images/BGnds/paper_yellow.gif> -<h1> - <img align=middle src="flora.gif" width=90 height=210> - -<i>FLORA</i>-2: An Object-Oriented Knowledge Base Language -</h1> - -<a name="top"> -<p> -<HR> - - -<p> -FLORA-2 is a sophisticated object-oriented knowledge base language and -application development platform. It is implemented as a set of run-time -libraries and a compiler that -translates a unified language of F-logic, HiLog, and Transaction Logic into -<a href="http://xsb.sourceforge.net/"> -the XSB deductive engine</a>. -</p> - -The programming language supported by FLORA-2 is a dialect of F-logic with -numerous extensions, which include a natural way to do meta-programming in -the style of HiLog and logical updates in the style of Transaction Logic. -FLORA-2 was designed with extensibility and flexibility in mind, -and it provides strong support for modular software design through its -unique feature of dynamic modules. -</p> -<p> -Applications of FLORA-2 include intelligent agents, Semantic Web, -ontology management, integration of information, and others. -</p> - -<p> -March 11, 2002: We are happy to announce the release of a "late alpha" -version of FLORA-2. This version is part of <a -href="http://sourceforge.net/project/showfiles.php?group_id=1176">XSB -release 2.5</a>. It has significantly improved stability and -several important new features. See -<a href="http://xsb.sourceforge.net/rel_notes.html#flora">release notes</a> for the details. -</p> - -<p> -General project management page: -<a href="http://sourceforge.net/projects/flora/">Mailing lists, Bug -tracking system, and more</a>. -</p> - -<p> -The most current version of FLORA-2 can be downloaded -<a href="http://sourceforge.net/cvs/?group_id=50604">directly from -CVS</a>. Download the module <tt>flora2</tt> and -configure as explained in <a href="installation.html">the installation -instructions</a>. - -<p> -The FLORA-2 manual (as of March 11 release -- many new features since then): - <ul> - <li> <a href="docs/manual.ps">Postscript version</a> - <li> <a href="docs/manual.pdf">PDF version</a> - </ul> -</p> - -<p> -Related links: -</p> -<ul> -<li> <A href="http://www.SemanticWeb.org/">Semantic Web Resources</a> -<li> <a href="http://www.informatik.uni-freiburg.de/~dbis/florid/"> - FLORID</a>: A C++-based implementation of F-logic from Freiburg University. -<li> <A href="http://www.dsic.upv.es/~pcarsi/tfl/">Transaction F-logic - prototype</a> from the University of Valencia, Spain. -<li> <a href="http://www.cs.toronto.edu/~bonner/transaction-logic.html">The Transaction Logic Page</a> -<li> <A href="http://www.cs.sunysb.edu/~kifer/dood/">The DOOD page</a>: - additional links to information on Deductive and Object-Oriented - Databases. -</ul> - - - -<HR> -<P> -<?php include "counter.php"; ?> -<?php $number = CounterImage(); ?> -<IMG SRC="<?php echo($number); ?>" ALIGN="left"> -visits since August 10, 2001. -<P> - -<hr> -<p> -</p> -<address> -<a href="mailto:flo...@li...">flo...@li...</a> -</address> -<A HREF="contactus.php" target="new_window">Contact form</a>. - -<hr> -<br> -<A href="http://sourceforge.net"> -<IMG src="http://sourceforge.net/sflogo.php?group_id=1176&type=1" width="88" height="31" border="0" alt="SourceForge Logo"></A> -<br> -<p> -<!--Don't touch! The date gets updated when you commit changes to this page--> -$Date$ -</p> - +<html> +<head> +<title> XSB </title> +<frameset cols="20%,80%" frameborder="yes" border="1" framespacing="0"> + <frame SRC="florabar.php" NAME="left_window" SCROLLING="no" + NORESIZE MARGINWIDTH="15" MARGINHEIGHT="15"> + <frame SRC="florahome.php" NAME="right_window" + MARGINWIDTH="15" MARGINHEIGHT="15"> +</frameset> +</head> +<body> + </body> </html> - - Index: contactus.php =================================================================== RCS file: /cvsroot/flora/flora-website/contactus.php,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -d -r1.1.1.1 -r1.2 --- contactus.php 18 May 2002 16:12:28 -0000 1.1.1.1 +++ contactus.php 21 May 2002 06:24:45 -0000 1.2 @@ -5,7 +5,7 @@ <title>Email Us</title> </head> -<body> +<body bgcolor="#FFFFFF"> <FORM ACTION="sendemail.php" METHOD="POST"> @@ -13,7 +13,12 @@ <TABLE> <TR> <tr> - <td colspan=2>Please contact us at flo...@li...:</td> + <td colspan=2>You can send us email using this form:</td> + </tr> + <tr> + <td> + + </td> </tr> <TD><b>Subject:</b></TD><TD> <INPUT TYPE="TEXT" NAME="subject" VALUE="" SIZE="15" MAXLENGTH="40"> @@ -28,13 +33,6 @@ <INPUT TYPE="SUBMIT" NAME="SUBMIT" VALUE="Send Email"> </TD></TR></TABLE> </FORM> -<br> -<hr> -<br> -<br> -<A href="http://sourceforge.net"> -<IMG src="http://sourceforge.net/sflogo.php?group_id=1176&type=1" width="88" height="31" border="0" alt="SourceForge Logo"></A -> <br> </body> |
|
From: <ki...@us...> - 2002-05-20 01:38:18
|
Update of /cvsroot/flora/flora-website In directory usw-pr-cvs1:/tmp/cvs-serv30362 Modified Files: index.php Log Message: minor corrections Index: index.php =================================================================== RCS file: /cvsroot/flora/flora-website/index.php,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- index.php 20 May 2002 01:35:28 -0000 1.3 +++ index.php 20 May 2002 01:38:14 -0000 1.4 @@ -49,7 +49,7 @@ </p> <p> -Bleeding-edge version of FLORA-2 can be had +The most current version of FLORA-2 can be downloaded <a href="http://sourceforge.net/cvs/?group_id=50604">directly from CVS</a>. Download the module <tt>flora2</tt> and configure as explained in <a href="installation.html">the installation |
|
From: <ki...@us...> - 2002-05-20 01:35:31
|
Update of /cvsroot/flora/flora-website In directory usw-pr-cvs1:/tmp/cvs-serv27910 Modified Files: index.php Log Message: minor corrections Index: index.php =================================================================== RCS file: /cvsroot/flora/flora-website/index.php,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- index.php 18 May 2002 20:20:14 -0000 1.2 +++ index.php 20 May 2002 01:35:28 -0000 1.3 @@ -35,7 +35,9 @@ <p> March 11, 2002: We are happy to announce the release of a "late alpha" -version of FLORA-2. This version has significantly improved stability and +version of FLORA-2. This version is part of <a +href="http://sourceforge.net/project/showfiles.php?group_id=1176">XSB +release 2.5</a>. It has significantly improved stability and several important new features. See <a href="http://xsb.sourceforge.net/rel_notes.html#flora">release notes</a> for the details. </p> @@ -54,7 +56,7 @@ instructions</a>. <p> -The FLORA-2 manual: +The FLORA-2 manual (as of March 11 release -- many new features since then): <ul> <li> <a href="docs/manual.ps">Postscript version</a> <li> <a href="docs/manual.pdf">PDF version</a> |
|
From: <ki...@us...> - 2002-05-19 23:39:16
|
Update of /cvsroot/flora/flora2
In directory usw-pr-cvs1:/tmp/cvs-serv24978
Modified Files:
flrwraparound.P flrparser.P
Log Message:
comments, documentation
Index: flrwraparound.P
===================================================================
RCS file: /cvsroot/flora/flora2/flrwraparound.P,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -u -d -r1.1.1.1 -r1.2
--- flrwraparound.P 18 May 2002 17:43:27 -0000 1.1.1.1
+++ flrwraparound.P 19 May 2002 23:39:13 -0000 1.2
@@ -350,7 +350,7 @@
; dump_simple_goal(Spec, Indent)
).
-%% We don't want things like FLORA_WORKSPACE
+%% We don't want things like FLORA_THIS_WORKSPACE
%% to appear in quote marks, as it would be with write_canonical/1
%% Simple write/1 won't work either because strings that are arguments
%% to predicates wil then be written without the quotes
Index: flrparser.P
===================================================================
RCS file: /cvsroot/flora/flora2/flrparser.P,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -u -d -r1.1.1.1 -r1.2
--- flrparser.P 18 May 2002 17:43:26 -0000 1.1.1.1
+++ flrparser.P 19 May 2002 23:39:13 -0000 1.2
@@ -105,7 +105,7 @@
ValueReferenceConnective := '->' | '->>' | '*->' | '*->>' | '=>' | '=>>'
PathExpression := atom | number | string | variable | specialOidToken
-PathExpression := Term | List
+PathExpression := Term | List | ReifiedFormula
PathExpression := PathExpression PathExpressionConnective PathExpression
PathExpression := BinaryRelationship
PathExpression := ObjectSpecification
@@ -114,6 +114,8 @@
PathExpressionConnective := '.' | '..' | '!' | '!!'
specialOidToken := anonymousOid | numberedOid | thisModuleName
+
+ReifiedFormula := ${Body}
%% No quotes are allowed in the following special tokens!
%% No space alowed between _# and integer
|
|
From: <ki...@us...> - 2002-05-19 23:39:16
|
Update of /cvsroot/flora/flora2/docs
In directory usw-pr-cvs1:/tmp/cvs-serv24978/docs
Modified Files:
flora2.tex
Log Message:
comments, documentation
Index: flora2.tex
===================================================================
RCS file: /cvsroot/flora/flora2/docs/flora2.tex,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- flora2.tex 18 May 2002 20:19:40 -0000 1.2
+++ flora2.tex 19 May 2002 23:39:13 -0000 1.3
@@ -5199,7 +5199,7 @@
BodyLiteral := BinaryRelationship | ObjectSpecification | Term
| DBUpdate | Builtin | Loading
-Builtin := Arithmetic Comparison, etc.
+Builtin := ArithmeticComparison, Unification, MetaUnification, etc.
Loading := '[' LoadingCommand (',' LoadingCommand)* ']'
LoadingCommand := filename ('>>' atom)
@@ -5219,7 +5219,7 @@
ValueReferenceConnective := '->' | '->>' | '*->' | '*->>' | '=>' | '=>>'
PathExpression := atom | number | string | variable | specialOidToken
-PathExpression := Term | List
+PathExpression := Term | List | ReifiedFormula
PathExpression := PathExpression PathExpressionConnective PathExpression
PathExpression := BinaryRelationship
PathExpression := ObjectSpecification
@@ -5229,6 +5229,8 @@
specialOidToken := anonymousOid | numberedOid | thisModuleName
+ReifiedFormula := ${Body}
+
%% No quotes are allowed in the following special tokens!
%% No space alowed between _# and integer
%% anonymousOid & numberedOid can occur only in rule head
@@ -5698,19 +5700,19 @@
instance, the predicate {\tt fd} would be dumped as
%%
\begin{quote}
- \tt FLORA\_WORKSPACE(FLORA\_VAR\_WORKSPACE,fd)
+ \tt FLORA\_THIS\_WORKSPACE(FLORA\_USER\_WORKSPACE,fd)
\end{quote}
%%
When the program, {\tt myprog.P}, compiled by the \FLORA compiler needs to
be loaded into a user module, say {\tt main}, the preprocessor, {\tt
- gpp}, is called with the macro {\tt FLORA\_VAR\_WORKSPACE} set to {\tt
+ gpp}, is called with the macro {\tt FLORA\_USER\_WORKSPACE} set to {\tt
main}. Gpp replaces all macros with the actual values, includes the
necessary files, and then pipes the result to the Prolog compiler. The latter
produces the object {\tt myprog.\ofile} file where all the predicate names are
wrapped with the user module name, as described above. This object file is
renamed to {\tt myprog\_main.\ofile}. If later we need to compile {\tt myprog.P}
for another user module, {\tt foo}, {\tt gpp} is called again, but this time it
-sets {\tt FLORA\_VAR\_WORKSPACE} to {\tt foo}. When Prolog finally compiles
+sets {\tt FLORA\_USER\_WORKSPACE} to {\tt foo}. When Prolog finally compiles
the program into the object file, the file is renames to {\tt
myprog\_foo.\ofile}.
@@ -5731,7 +5733,7 @@
%%
\begin{quote}
\tt
- FLORA\_WORKSPACE(FLORA\_VAR\_WORKSPACE,apply)(p,a,FLORA\_PREFIX'apply(f,b))
+ FLORA\_THIS\_WORKSPACE(FLORA\_USER\_WORKSPACE,apply)(p,a,FLORA\_PREFIX'apply(f,b))
\end{quote}
%%
The same term would be encoded differently if it occurs as an argument of a
@@ -5777,11 +5779,11 @@
each module. The mechanism is similar to that used for predicate names:
%%
\begin{quote}
- \tt FLORA\_THIS\_FDB\_STORAGE(FLORA\_VAR\_WORKSPACE)
+ \tt FLORA\_THIS\_FDB\_STORAGE(FLORA\_USER\_WORKSPACE)
\end{quote}
%%
As explained earlier, when Prolog compiles the file generated by the
-\FLORA compiler, the macro {\tt FLORA\_VAR\_WORKSPACE} gets replaced with
+\FLORA compiler, the macro {\tt FLORA\_USER\_WORKSPACE} gets replaced with
the module name and out comes a unique, hard to replicate triehandle.
Unfortunately, putting something in a trie does not mean that Prolog will find
@@ -5833,7 +5835,7 @@
asserted into the system.
One complication is that the file {\tt flrpatch.flh} must be compiled for
-the right module, so the preprocessor macro {\tt FLORA\_VAR\_WORKSPACE} can
+the right module, so the preprocessor macro {\tt FLORA\_USER\_WORKSPACE} can
be given value only when we load the patch rules into a specified module.
If the directory {\tt genincludes} that holds {\tt flrpatch.flh} is not
writable by the user (which is often the case, if XSB is installed in a
@@ -5937,7 +5939,7 @@
{\tt flrpatch.fli} during the installation.
The directory {\tt includes/} contains the header file, which defines the
-macros ({\it e.g.}, {\tt FLORA\_WORKSPACE}) that wrap all the names with
+macros ({\it e.g.}, {\tt FLORA\_THIS\_WORKSPACE}) that wrap all the names with
prefixes to separate the different modules of the user program. The
directory {\tt headerinc/} is another place where the template files are
located. Each of these files contains just a few {\tt \#include}
|
|
From: <ki...@us...> - 2002-05-18 23:17:14
|
Update of /cvsroot/flora/flora2/p2h
In directory usw-pr-cvs1:/tmp/cvs-serv20365/p2h
Added Files:
flrarray.c flrarray.H
Log Message:
added flrarray for fast storage of strings and integers
--- NEW FILE: flrarray.c ---
/* File: flrarray.c
** Author(s): kifer
** Contact: flo...@li...
**
** Copyright (C) The Research Foundation of SUNY, 2002
**
** FLORA-2 is free software; you can redistribute it and/or modify it under the
** terms of the GNU Library General Public License as published by the Free
** Software Foundation; either version 2 of the License, or (at your option)
** any later version.
**
** FLORA-2 is distributed in the hope that it will be useful, but WITHOUT ANY
** WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
** FOR A PARTICULAR PURPOSE. See the GNU Library General Public License for
** more details.
**
** You should have received a copy of the GNU Library General Public License
** along with FLORA-2; if not, write to the Free Software Foundation,
** Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
**
** $Id: flrarray.c,v 1.1 2002/05/18 23:17:10 kifer Exp $
**
*/
#include "xsb_config.h"
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#ifdef WIN_NT
#define XSB_DLL
#endif
#include "auxlry.h"
#include "cell_xsb.h"
#include "error_xsb.h"
#include "cinterf.h"
#if 0
#define ARRAYDEBUG
#endif
#define ARRAY_CHUNKSIZE 1024
#define DIRECTORY_SIZE 4096
typedef prolog_term BlockType[];
static BlockType *Directory[DIRECTORY_SIZE];
static void allocate_new_block(long dir_index);
/*
array_put(+index,+term)
Always succeeds unless gives an error on array overflow.
*/
DllExport xsbBool call_conv array_put () {
long position = ptoc_int(1);
prolog_term pterm = reg_term(2);
long dir_index = position / ARRAY_CHUNKSIZE;
int chunk_index = position % ARRAY_CHUNKSIZE;
if (Directory[dir_index] == NULL)
allocate_new_block(dir_index);
(*Directory[dir_index])[chunk_index] = pterm;
return TRUE;
}
/*
Allocate new block at directory index dir_index
*/
static void allocate_new_block(long dir_index)
{
if (dir_index >= DIRECTORY_SIZE)
xsb_abort("ARRAY_PUT: Cannot put term in array, directory size exceeded");
if (Directory[dir_index] != NULL)
xsb_abort("ARRAY_PUT: Internal bug, trying to change non-NULL directory entry");
Directory[dir_index] =
(BlockType *)calloc(sizeof (prolog_term *), ARRAY_CHUNKSIZE);
}
/*
destroy_array/0
Deallocates memory for the entire array
*/
DllExport xsbBool call_conv destroy_array()
{
long i;
for (i=0; i < DIRECTORY_SIZE; i++) {
if (Directory[i] != NULL) {
free(Directory[i]);
Directory[i] = NULL;
}
}
return TRUE;
}
/*
array_get(+index, -term)
If array doesn't have an entry at the given index, fail
Otherwise, return term.
*/
DllExport xsbBool call_conv array_get()
{
long index = ptoc_int(1);
long dir_index = index / ARRAY_CHUNKSIZE;
int chunk_index = index % ARRAY_CHUNKSIZE;
prolog_term pterm, out_term = reg_term(2);
BlockType *block = Directory[dir_index];
if (block == NULL) return FALSE;
pterm = (*block)[chunk_index];
if (pterm == (prolog_term)0) return FALSE;
p2p_unify(out_term,pterm);
return TRUE;
}
--- NEW FILE: flrarray.H ---
:- export array_put/2, destroy_array/0, array_get/2.
|
|
From: <ki...@us...> - 2002-05-18 21:34:10
|
Update of /cvsroot/flora/flora2 In directory usw-pr-cvs1:/tmp/cvs-serv27131 Modified Files: flrporting.P Log Message: test Index: flrporting.P =================================================================== RCS file: /cvsroot/flora/flora2/flrporting.P,v retrieving revision 1.7 retrieving revision 1.8 diff -u -d -r1.7 -r1.8 --- flrporting.P 18 May 2002 21:31:06 -0000 1.7 +++ flrporting.P 18 May 2002 21:34:07 -0000 1.8 @@ -131,7 +131,6 @@ %% User Home flora_user_home(Path) :- xsb_configuration(user_home,Path). - %% File system-related flora_file_op(exists,File) :- path_sysop(exists,File). flora_file_op(mkdir,Dir) :- path_sysop(mkdir,Dir). |