alf-shell 0.16.0 → 0.16.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 4a1a480b979751b79dc3360a3cadb4032cc21ded
4
+ data.tar.gz: 6b52e7b4eb078a2b326f113e2fa783a2c4e1af71
5
+ SHA512:
6
+ metadata.gz: d5be1e6b44eab6aaef680ed8cc819da2d01b25be8bc6b1b3c1b1a7fff059d76d54895947c23390c20abc9f03177ebf8b567f5db328bb79fe226f083dd509ea03
7
+ data.tar.gz: cc060b72d2c62da2d05a2ad3049108a5e7b60321d9db5fb26cb614f6b7162479e7c071a415e2f6b48c57b110058211c4730fa801b762d63cb5c8fe3b5c8c1e7b
data/Gemfile.lock CHANGED
@@ -1,15 +1,15 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- alf-shell (0.16.0)
5
- alf-core (= 0.16.0)
4
+ alf-shell (0.16.1)
5
+ alf-core (= 0.16.1)
6
6
  highline (~> 1.6)
7
7
  quickl (~> 0.4.3)
8
8
 
9
9
  PATH
10
10
  remote: ../alf-core
11
11
  specs:
12
- alf-core (0.16.0)
12
+ alf-core (0.16.1)
13
13
  domain (~> 1.0)
14
14
  myrrha (~> 3.0)
15
15
  path (~> 1.3)
@@ -18,28 +18,28 @@ PATH
18
18
  PATH
19
19
  remote: ../alf-doc
20
20
  specs:
21
- alf-doc (0.16.0)
22
- alf-core (= 0.16.0)
21
+ alf-doc (0.16.1)
22
+ alf-core (= 0.16.1)
23
23
 
24
24
  GEM
25
25
  remote: http://rubygems.org/
26
26
  specs:
27
- diff-lcs (1.2.4)
27
+ diff-lcs (1.2.5)
28
28
  domain (1.0.0)
29
- highline (1.6.20)
29
+ highline (1.6.21)
30
30
  myrrha (3.0.0)
31
31
  domain (~> 1.0)
32
32
  path (1.3.3)
33
33
  quickl (0.4.3)
34
- rake (10.1.0)
34
+ rake (10.3.1)
35
35
  rspec (2.14.1)
36
36
  rspec-core (~> 2.14.0)
37
37
  rspec-expectations (~> 2.14.0)
38
38
  rspec-mocks (~> 2.14.0)
39
- rspec-core (2.14.7)
40
- rspec-expectations (2.14.3)
39
+ rspec-core (2.14.8)
40
+ rspec-expectations (2.14.5)
41
41
  diff-lcs (>= 1.1.3, < 2.0)
42
- rspec-mocks (2.14.4)
42
+ rspec-mocks (2.14.6)
43
43
  sexpr (0.6.0)
44
44
 
45
45
  PLATFORMS
@@ -19,4 +19,4 @@ engines, as well as involved SQL queries.
19
19
  .RE
20
20
  .SH Example
21
21
  .PP
22
- \fB\fCalf\fR \fB\fC--examples\fR explain "restrict(suppliers, city: 'London')"
22
+ \fB\fCalf\fR \fB\fC\-\-examples\fR explain "restrict(suppliers, city: 'London')"
@@ -10,4 +10,4 @@ This command prints some metadata (e.g. heading, keys, etc.) about the
10
10
  expression passed as first argument.
11
11
  .SH Example
12
12
  .PP
13
- \fB\fCalf\fR \fB\fC--examples\fR metadata "restrict(suppliers, city: 'London')"
13
+ \fB\fCalf\fR \fB\fC\-\-examples\fR metadata "restrict(suppliers, city: 'London')"
data/doc/man/alf-repl.man CHANGED
@@ -3,11 +3,11 @@
3
3
  Launches Alf's Read\-Eval\-Print\-Loop (REPL) web application.
4
4
  .SH Synopsis
5
5
  .PP
6
- \fB\fCalf\fR [\fB\fC--db=...\fR] repl
6
+ \fB\fCalf\fR [\fB\fC\-\-db=...\fR] repl
7
7
  .SH Description
8
8
  .PP
9
9
  This command launches the REPL in the current data context defined by the
10
- \fB\fC.alfrc\fR file and common alf options (e.g. \fB\fC--db\fR).
10
+ \fB\fC\&.alfrc\fR file and common alf options (e.g. \fB\fC\-\-db\fR).
11
11
  .SH Example
12
12
  .PP
13
- \fB\fCalf\fR \fB\fC--db=postgres://...\fR repl
13
+ \fB\fCalf\fR \fB\fC\-\-db=postgres://...\fR repl
data/doc/man/alf-show.man CHANGED
@@ -3,7 +3,7 @@
3
3
  Evaluates a query and shows the result.
4
4
  .SH Synopsis
5
5
  .PP
6
- \fB\fCalf\fR [\fB\fC--csv\fR|\fB\fC--json\fR\&...] show \fIQUERY\fP \-\- [\fIORDERING\fP]
6
+ \fB\fCalf\fR [\fB\fC\-\-csv\fR|\fB\fC\-\-json\fR\&...] show \fIQUERY\fP \-\- [\fIORDERING\fP]
7
7
  .SH Description
8
8
  .PP
9
9
  Take a query argument and execute it against the current database (according
@@ -13,4 +13,4 @@ output. The format (e.g. json) may be specified through \fB\fCalf\fR main option
13
13
  When an ordering is specified, tuples are rendered in the order specified.
14
14
  .SH Example
15
15
  .PP
16
- \fB\fCalf\fR \fB\fC--examples\fR show "restrict(suppliers, city: 'London')" \-\- name DESC
16
+ \fB\fCalf\fR \fB\fC\-\-examples\fR show "restrict(suppliers, city: 'London')" \-\- name DESC
data/doc/man/alf.man CHANGED
@@ -3,7 +3,7 @@
3
3
  Relational algebra at your fingertips
4
4
  .SH Synopsis
5
5
  .PP
6
- \fB\fCalf\fR [\fB\fC--version\fR] [\fB\fC--help\fR]
6
+ \fB\fCalf\fR [\fB\fC\-\-version\fR] [\fB\fC\-\-help\fR]
7
7
  .PP
8
8
  \fB\fCalf\fR \fIFILE.alf\fP
9
9
  .PP
@@ -14,49 +14,49 @@ Relational algebra at your fingertips
14
14
  \fB\fCalf\fR help \fIOPERATOR\fP
15
15
  .SH Options
16
16
  .TP
17
- \fB\fC--rash\fR
17
+ \fB\fC\-\-rash\fR
18
18
  Render output as ruby hashes
19
19
  .TP
20
- \fB\fC--text\fR
20
+ \fB\fC\-\-text\fR
21
21
  Render output as a text table
22
22
  .TP
23
- \fB\fC--yaml\fR
23
+ \fB\fC\-\-yaml\fR
24
24
  Render output in YAML
25
25
  .TP
26
- \fB\fC--json\fR
26
+ \fB\fC\-\-json\fR
27
27
  Render output in JSON
28
28
  .TP
29
- \fB\fC--csv\fR
29
+ \fB\fC\-\-csv\fR
30
30
  Render output in CSV
31
31
  .TP
32
- \fB\fC--examples\fR
32
+ \fB\fC\-\-examples\fR
33
33
  Use the suppliers and parts example database
34
34
  .TP
35
- \fB\fC--db=DB\fR
35
+ \fB\fC\-\-db=DB\fR
36
36
  Set the database (adapter) to use. Recognized values can be
37
37
  folders with recognized files, or an URL to a SQL database
38
38
  (e.g. postgres://user:pass@host/database)
39
39
  .TP
40
- \fB\fC--stdin=READER\fR
40
+ \fB\fC\-\-stdin=READER\fR
41
41
  Specify the kind of reader when reading on standard input
42
42
  (i.e. rash, csv, json, ruby, or yaml)
43
43
  .TP
44
- \fB\fC-Idirectory\fR
44
+ \fB\fC\-Idirectory\fR
45
45
  Specify $LOAD_PATH directory (may be used more than once)
46
46
  .TP
47
- \fB\fC-rlibrary\fR
47
+ \fB\fC\-rlibrary\fR
48
48
  Require the specified ruby library, before executing alf
49
49
  .TP
50
- \fB\fC--ff=FORMAT\fR
50
+ \fB\fC\-\-ff=FORMAT\fR
51
51
  Specify the floating point format
52
52
  .TP
53
- \fB\fC--[no-]pretty\fR
53
+ \fB\fC\-\-[no\-]pretty\fR
54
54
  Enable/disable pretty print best effort
55
55
  .TP
56
- \fB\fC-h\fR, \fB\fC--help\fR
56
+ \fB\fC\-h\fR, \fB\fC\-\-help\fR
57
57
  Show this help
58
58
  .TP
59
- \fB\fC-v\fR, \fB\fC--version\fR
59
+ \fB\fC\-v\fR, \fB\fC\-\-version\fR
60
60
  Show version and copyright
61
61
  .SH Commands
62
62
  .TP
data/doc/man/allbut.man CHANGED
@@ -5,7 +5,7 @@ Projects a subset of attributes away.
5
5
  .PP
6
6
  .RS
7
7
  .nf
8
- allbut(operand: Relation, attributes: AttrList) -> Relation
8
+ allbut(operand: Relation, attributes: AttrList) \-> Relation
9
9
  .fi
10
10
  .RE
11
11
  .SH Examples
data/doc/man/among.man CHANGED
@@ -5,7 +5,7 @@ Among a set of values
5
5
  .PP
6
6
  .RS
7
7
  .nf
8
- among(val: Alpha|AttrName, vals: Set<Alpha>) -> Predicate
8
+ among(val: Alpha|AttrName, vals: Set<Alpha>) \-> Predicate
9
9
  .fi
10
10
  .RE
11
11
  .SH Examples
data/doc/man/avg.man CHANGED
@@ -5,7 +5,7 @@ Average
5
5
  .PP
6
6
  .RS
7
7
  .nf
8
- avg(expr: AttrName|(Tuple->Numeric)) -> Aggregator
8
+ avg(expr: AttrName|(Tuple\->Numeric)) \-> Aggregator
9
9
  .fi
10
10
  .RE
11
11
  .SH Examples
@@ -24,7 +24,7 @@ avg{|t| t.qty * t.price }
24
24
  .PP
25
25
  .RS
26
26
  .nf
27
- avg(->(t){ t.qty * t.price })
27
+ avg(\->(t){ t.qty * t.price })
28
28
  .fi
29
29
  .RE
30
30
  .SH Description
data/doc/man/between.man CHANGED
@@ -5,7 +5,7 @@ Between (inclusive)
5
5
  .PP
6
6
  .RS
7
7
  .nf
8
- between(val: Alpha|AttrName, min: Alpha|AttrName, max: Alpha|AttrName) -> Predicate
8
+ between(val: Alpha|AttrName, min: Alpha|AttrName, max: Alpha|AttrName) \-> Predicate
9
9
  .fi
10
10
  .RE
11
11
  .SH Examples
data/doc/man/concat.man CHANGED
@@ -5,7 +5,7 @@ String concatenation
5
5
  .PP
6
6
  .RS
7
7
  .nf
8
- concat(expr: AttrName|(Tuple->Numeric)) -> Aggregator
8
+ concat(expr: AttrName|(Tuple\->Numeric)) \-> Aggregator
9
9
  .fi
10
10
  .RE
11
11
  .SH Examples
@@ -30,7 +30,7 @@ concat(between: ', '){|t| t.name }
30
30
  .PP
31
31
  .RS
32
32
  .nf
33
- concat(->(t){ t.name.upcase }, between: ', ')
33
+ concat(\->(t){ t.name.upcase }, between: ', ')
34
34
  .fi
35
35
  .RE
36
36
  .SH Description
@@ -5,7 +5,7 @@ FALSE
5
5
  .PP
6
6
  .RS
7
7
  .nf
8
- contradiction() -> Predicate
8
+ contradiction() \-> Predicate
9
9
  .fi
10
10
  .RE
11
11
  .SH Examples
@@ -23,4 +23,4 @@ contradiction
23
23
  .RE
24
24
  .SH Description
25
25
  .PP
26
- This predicate always return false. It is equivalent to \fB\fC->(t){ false }\fR\&.
26
+ This predicate always return false. It is equivalent to \fB\fC\->(t){ false }\fR\&.
data/doc/man/count.man CHANGED
@@ -5,7 +5,7 @@ Count
5
5
  .PP
6
6
  .RS
7
7
  .nf
8
- count() -> Aggregator
8
+ count() \-> Aggregator
9
9
  .fi
10
10
  .RE
11
11
  .SH Examples
data/doc/man/eq.man CHANGED
@@ -5,7 +5,7 @@ Equals to
5
5
  .PP
6
6
  .RS
7
7
  .nf
8
- eq(left: Alpha|AttrName, right: Alpha|AttrName) -> Predicate
8
+ eq(left: Alpha|AttrName, right: Alpha|AttrName) \-> Predicate
9
9
  .fi
10
10
  .RE
11
11
  .SH Examples
@@ -26,4 +26,4 @@ eq(:supplier_city, :part_city)
26
26
  This predicates checks whether two values are equal.
27
27
  .SH Implementation notes
28
28
  .PP
29
- This predicate is equivalent to \fB\fC->(t){ _left_ == _right_ }\fR\&.
29
+ This predicate is equivalent to \fB\fC\->(t){ _left_ == _right_ }\fR\&.
data/doc/man/extend.man CHANGED
@@ -5,7 +5,7 @@ Extends input tuples with derived/computed attributes
5
5
  .PP
6
6
  .RS
7
7
  .nf
8
- extend(operand: Relation, ext: TupleComputation) -> Relation
8
+ extend(operand: Relation, ext: TupleComputation) \-> Relation
9
9
  .fi
10
10
  .RE
11
11
  .SH Examples
@@ -13,8 +13,8 @@ extend(operand: Relation, ext: TupleComputation) -> Relation
13
13
  .RS
14
14
  .nf
15
15
  extend(suppliers,
16
- big: ->(t){ t.name.upcase },
17
- small: ->(t){ t.name.downcase })
16
+ big: \->(t){ t.name.upcase },
17
+ small: \->(t){ t.name.downcase })
18
18
  .fi
19
19
  .RE
20
20
  .SH Description
data/doc/man/frame.man CHANGED
@@ -5,7 +5,7 @@ Aka limit/offset
5
5
  .PP
6
6
  .RS
7
7
  .nf
8
- frame(operand: Relation, order: Ordering, offset: Integer, limit: Integer) -> Relation
8
+ frame(operand: Relation, order: Ordering, offset: Integer, limit: Integer) \-> Relation
9
9
  .fi
10
10
  .RE
11
11
  .SH Examples
data/doc/man/group.man CHANGED
@@ -5,7 +5,7 @@ Relation\-valued attribute
5
5
  .PP
6
6
  .RS
7
7
  .nf
8
- group(operand: Relation, attributes: AttrList, as: AttrName) -> Relation
8
+ group(operand: Relation, attributes: AttrList, as: AttrName) \-> Relation
9
9
  .fi
10
10
  .RE
11
11
  .SH Examples
@@ -33,7 +33,7 @@ This operator could be formally defined as the following shortcut:
33
33
  def group(operand, attributes, as)
34
34
  extend(
35
35
  allbut(operand, attributes),
36
- as: ->(t){ project(matching(operand,
36
+ as: \->(t){ project(matching(operand,
37
37
  .BR Relation (t)),
38
38
  attributes) })
39
39
  end
data/doc/man/gt.man CHANGED
@@ -5,7 +5,7 @@ Greater than
5
5
  .PP
6
6
  .RS
7
7
  .nf
8
- gt(left: Alpha|AttrName, right: Alpha|AttrName) -> Predicate
8
+ gt(left: Alpha|AttrName, right: Alpha|AttrName) \-> Predicate
9
9
  .fi
10
10
  .RE
11
11
  .SH Examples
@@ -27,4 +27,4 @@ This predicates checks whether a value (\fB\fCleft\fR) is greater than another
27
27
  one (\fB\fCright\fR).
28
28
  .SH Implementation notes
29
29
  .PP
30
- This predicate is equivalent to \fB\fC->(t){ _left_ > _right_ }\fR\&.
30
+ This predicate is equivalent to \fB\fC\->(t){ _left_ > _right_ }\fR\&.
data/doc/man/gte.man CHANGED
@@ -5,7 +5,7 @@ Greater than or equal to
5
5
  .PP
6
6
  .RS
7
7
  .nf
8
- gte(left: Alpha|AttrName, right: Alpha|AttrName) -> Predicate
8
+ gte(left: Alpha|AttrName, right: Alpha|AttrName) \-> Predicate
9
9
  .fi
10
10
  .RE
11
11
  .SH Examples
@@ -27,4 +27,4 @@ This predicates checks whether a value (\fB\fCleft\fR) is greater than or equal
27
27
  to another one (\fB\fCright\fR).
28
28
  .SH Implementation notes
29
29
  .PP
30
- This predicate is equivalent to \fB\fC->(t){ _left_ >= _right_ }\fR\&.
30
+ This predicate is equivalent to \fB\fC\->(t){ _left_ >= _right_ }\fR\&.
data/doc/man/image.man CHANGED
@@ -6,7 +6,7 @@ tuple in the right relation.
6
6
  .PP
7
7
  .RS
8
8
  .nf
9
- image(left: Relation, right: Relation, as: AttrName) -> Relation
9
+ image(left: Relation, right: Relation, as: AttrName) \-> Relation
10
10
  .fi
11
11
  .RE
12
12
  .SH Examples
@@ -30,7 +30,7 @@ expression:
30
30
  .RS
31
31
  .nf
32
32
  def image(left, right, as)
33
- extend(left, as => ->(t){
33
+ extend(left, as => \->(t){
34
34
  allbut(
35
35
  matching(right,
36
36
  .BR Relation (t)),
@@ -5,7 +5,7 @@ Logical AND
5
5
  .PP
6
6
  .RS
7
7
  .nf
8
- intersect(left: Relation, right: Relation) -> Relation
8
+ intersect(left: Relation, right: Relation) \-> Relation
9
9
  .fi
10
10
  .RE
11
11
  .SH Examples
data/doc/man/join.man CHANGED
@@ -5,7 +5,7 @@ Natural join
5
5
  .PP
6
6
  .RS
7
7
  .nf
8
- join(left: Relation, right: Relation) -> Relation
8
+ join(left: Relation, right: Relation) \-> Relation
9
9
  .fi
10
10
  .RE
11
11
  .SH Examples
@@ -75,7 +75,7 @@ Alternatively, shortcuts can be considered. A (advanced) example below:
75
75
  # before joining.
76
76
  def join_on(left, right, wish)
77
77
  commons = left.attr_list & right.attr_list
78
- join(left, allbut(right, commons - wish))
78
+ join(left, allbut(right, commons \- wish))
79
79
  end
80
80
  # observe here how part names have been discarded to avoid joining them
81
81
  # with supplier names (empty result guaranteed)
data/doc/man/lt.man CHANGED
@@ -5,7 +5,7 @@ Less than
5
5
  .PP
6
6
  .RS
7
7
  .nf
8
- lt(left: Alpha|AttrName, right: Alpha|AttrName) -> Predicate
8
+ lt(left: Alpha|AttrName, right: Alpha|AttrName) \-> Predicate
9
9
  .fi
10
10
  .RE
11
11
  .SH Examples
@@ -27,4 +27,4 @@ This predicates checks whether a value (\fB\fCleft\fR) is less than another one
27
27
  (\fB\fCright\fR).
28
28
  .SH Implementation notes
29
29
  .PP
30
- This predicate is equivalent to \fB\fC->(t){ _left_ < _right_ }\fR\&.
30
+ This predicate is equivalent to \fB\fC\->(t){ _left_ < _right_ }\fR\&.
data/doc/man/lte.man CHANGED
@@ -5,7 +5,7 @@ Less than or equal to
5
5
  .PP
6
6
  .RS
7
7
  .nf
8
- lte(left: Alpha|AttrName, right: Alpha|AttrName) -> Predicate
8
+ lte(left: Alpha|AttrName, right: Alpha|AttrName) \-> Predicate
9
9
  .fi
10
10
  .RE
11
11
  .SH Examples
@@ -27,4 +27,4 @@ This predicates checks whether a value (\fB\fCleft\fR) is less than or equal to
27
27
  another one (\fB\fCright\fR).
28
28
  .SH Implementation notes
29
29
  .PP
30
- This predicate is equivalent to \fB\fC->(t){ _left_ <= _right_ }\fR\&.
30
+ This predicate is equivalent to \fB\fC\->(t){ _left_ <= _right_ }\fR\&.
data/doc/man/matching.man CHANGED
@@ -5,7 +5,7 @@ Aka 'where exists'
5
5
  .PP
6
6
  .RS
7
7
  .nf
8
- matching(left: Relation, right: Relation) -> Relation
8
+ matching(left: Relation, right: Relation) \-> Relation
9
9
  .fi
10
10
  .RE
11
11
  .SH Examples
data/doc/man/max.man CHANGED
@@ -5,7 +5,7 @@ Maximal value
5
5
  .PP
6
6
  .RS
7
7
  .nf
8
- max(expr: AttrName|(Tuple->Numeric)) -> Aggregator
8
+ max(expr: AttrName|(Tuple\->Numeric)) \-> Aggregator
9
9
  .fi
10
10
  .RE
11
11
  .SH Examples
@@ -24,7 +24,7 @@ max{|t| t.qty * t.price }
24
24
  .PP
25
25
  .RS
26
26
  .nf
27
- max(->(t){ t.qty * t.price })
27
+ max(\->(t){ t.qty * t.price })
28
28
  .fi
29
29
  .RE
30
30
  .SH Description
data/doc/man/min.man CHANGED
@@ -5,7 +5,7 @@ Minimal value
5
5
  .PP
6
6
  .RS
7
7
  .nf
8
- min(expr: AttrName|(Tuple->Numeric)) -> Aggregator
8
+ min(expr: AttrName|(Tuple\->Numeric)) \-> Aggregator
9
9
  .fi
10
10
  .RE
11
11
  .SH Examples
@@ -24,7 +24,7 @@ min{|t| t.qty * t.price }
24
24
  .PP
25
25
  .RS
26
26
  .nf
27
- min(->(t){ t.qty * t.price })
27
+ min(\->(t){ t.qty * t.price })
28
28
  .fi
29
29
  .RE
30
30
  .SH Description
data/doc/man/minus.man CHANGED
@@ -5,7 +5,7 @@ Logical AND NOT
5
5
  .PP
6
6
  .RS
7
7
  .nf
8
- minus(left: Relation, right: Relation) -> Relation
8
+ minus(left: Relation, right: Relation) \-> Relation
9
9
  .fi
10
10
  .RE
11
11
  .SH Examples
data/doc/man/native.man CHANGED
@@ -5,14 +5,14 @@ User\-defined tuple predicate
5
5
  .PP
6
6
  .RS
7
7
  .nf
8
- native(predicate: (Tuple -> Boolean)) -> Predicate
8
+ native(predicate: (Tuple \-> Boolean)) \-> Predicate
9
9
  .fi
10
10
  .RE
11
11
  .SH Examples
12
12
  .PP
13
13
  .RS
14
14
  .nf
15
- ->(t){ t.city == 'London' }
15
+ \->(t){ t.city == 'London' }
16
16
  .fi
17
17
  .RE
18
18
  .SH Description
data/doc/man/neq.man CHANGED
@@ -5,7 +5,7 @@ Not equal to
5
5
  .PP
6
6
  .RS
7
7
  .nf
8
- neq(left: Alpha|AttrName, right: Alpha|AttrName) -> Predicate
8
+ neq(left: Alpha|AttrName, right: Alpha|AttrName) \-> Predicate
9
9
  .fi
10
10
  .RE
11
11
  .SH Examples
@@ -26,4 +26,4 @@ neq(:supplier_city, :part_city)
26
26
  This predicates checks whether two values are different.
27
27
  .SH Implementation notes
28
28
  .PP
29
- This predicate is equivalent to \fB\fC->(t){ _left_ != _right_ }\fR\&.
29
+ This predicate is equivalent to \fB\fC\->(t){ _left_ != _right_ }\fR\&.
@@ -5,7 +5,7 @@ Aka 'where not exists'
5
5
  .PP
6
6
  .RS
7
7
  .nf
8
- not_matching(left: Relation, right: Relation) -> Relation
8
+ not_matching(left: Relation, right: Relation) \-> Relation
9
9
  .fi
10
10
  .RE
11
11
  .SH Examples
data/doc/man/page.man CHANGED
@@ -5,7 +5,7 @@ Pagination
5
5
  .PP
6
6
  .RS
7
7
  .nf
8
- page(operand: Relation, ordering: Ordering, nth: Integer) -> Relation
8
+ page(operand: Relation, ordering: Ordering, nth: Integer) \-> Relation
9
9
  .fi
10
10
  .RE
11
11
  .SH Examples
@@ -18,7 +18,7 @@ page(suppliers, [:status, :sid], 1, page_size: 3)
18
18
  .PP
19
19
  .RS
20
20
  .nf
21
- page(suppliers, [:status, :sid], -1, page_size: 3)
21
+ page(suppliers, [:status, :sid], \-1, page_size: 3)
22
22
  .fi
23
23
  .RE
24
24
  .SH Description
@@ -28,7 +28,7 @@ belonging to the \fB\fCnth\fR page (starting at 1). When \fB\fCnth\fR is negativ
28
28
  tuples that belong to the \fB\fCnth\fR page from the end (e.g., \-1 is last page).
29
29
  .PP
30
30
  Formally, the page is defined by those tuples whose ranking according to
31
- \fB\fCorder\fR is such that \fB\fC(nth-1)*page_size <= rank < nth*page_size\fR\&. In other
31
+ \fB\fCorder\fR is such that \fB\fC(nth\-1)*page_size <= rank < nth*page_size\fR\&. In other
32
32
  words, this operator is almost equivalent to the following definition
33
33
  (ignoring negative page indexes for simplicity):
34
34
  .PP
@@ -38,7 +38,7 @@ def page(operand, order, nth, page_size)
38
38
  allbut(
39
39
  restrict(
40
40
  rank(operand, order, :rank),
41
- lte((nth-1)*page_size, :rank) & lt(:rank, nth*page_size)),
41
+ lte((nth\-1)*page_size, :rank) & lt(:rank, nth*page_size)),
42
42
  [:rank])
43
43
  end
44
44
  page(suppliers, [:status, :sid], 1, 3)
data/doc/man/project.man CHANGED
@@ -5,7 +5,7 @@ Keeps only a subset of attributes.
5
5
  .PP
6
6
  .RS
7
7
  .nf
8
- project(operand: Relation, attributes: AttrList) -> Relation
8
+ project(operand: Relation, attributes: AttrList) \-> Relation
9
9
  .fi
10
10
  .RE
11
11
  .SH Examples
data/doc/man/rank.man CHANGED
@@ -5,7 +5,7 @@ Tuple ranking
5
5
  .PP
6
6
  .RS
7
7
  .nf
8
- rank(operand: Relation, order: Ordering, as: AttrName) -> Relation
8
+ rank(operand: Relation, order: Ordering, as: AttrName) \-> Relation
9
9
  .fi
10
10
  .RE
11
11
  .SH Examples
data/doc/man/rename.man CHANGED
@@ -5,7 +5,7 @@ Rename attributes
5
5
  .PP
6
6
  .RS
7
7
  .nf
8
- rename(operand: Relation, renaming: Renaming) -> Relation
8
+ rename(operand: Relation, renaming: Renaming) \-> Relation
9
9
  .fi
10
10
  .RE
11
11
  .SH Examples
data/doc/man/restrict.man CHANGED
@@ -5,7 +5,7 @@ Predicate\-based filtering
5
5
  .PP
6
6
  .RS
7
7
  .nf
8
- restrict(operand: Relation, predicate: Predicate) -> Relation
8
+ restrict(operand: Relation, predicate: Predicate) \-> Relation
9
9
  .fi
10
10
  .RE
11
11
  .SH Examples
@@ -24,7 +24,7 @@ restrict(suppliers, eq(city: 'Paris') & gt(:status, 20))
24
24
  .PP
25
25
  .RS
26
26
  .nf
27
- restrict(suppliers, ->(t){ t.city == 'Paris' and t.status > 20 })
27
+ restrict(suppliers, \->(t){ t.city == 'Paris' and t.status > 20 })
28
28
  .fi
29
29
  .RE
30
30
  .SH Description
data/doc/man/stddev.man CHANGED
@@ -5,7 +5,7 @@ Standard deviation
5
5
  .PP
6
6
  .RS
7
7
  .nf
8
- stddev(expr: AttrName|(Tuple->Numeric)) -> Aggregator
8
+ stddev(expr: AttrName|(Tuple\->Numeric)) \-> Aggregator
9
9
  .fi
10
10
  .RE
11
11
  .SH Examples
@@ -24,7 +24,7 @@ stddev{|t| t.qty * t.price }
24
24
  .PP
25
25
  .RS
26
26
  .nf
27
- stddev(->(t){ t.qty * t.price })
27
+ stddev(\->(t){ t.qty * t.price })
28
28
  .fi
29
29
  .RE
30
30
  .SH Description
data/doc/man/sum.man CHANGED
@@ -5,7 +5,7 @@ Arithmetic sum
5
5
  .PP
6
6
  .RS
7
7
  .nf
8
- sum(expr: AttrName|(Tuple->Numeric)) -> Aggregator
8
+ sum(expr: AttrName|(Tuple\->Numeric)) \-> Aggregator
9
9
  .fi
10
10
  .RE
11
11
  .SH Examples
@@ -24,7 +24,7 @@ sum{|t| t.qty * t.price }
24
24
  .PP
25
25
  .RS
26
26
  .nf
27
- sum(->(t){ t.qty * t.price })
27
+ sum(\->(t){ t.qty * t.price })
28
28
  .fi
29
29
  .RE
30
30
  .SH Description
@@ -5,7 +5,7 @@ Aggregate and compute
5
5
  .PP
6
6
  .RS
7
7
  .nf
8
- summarize(operand: Relation, by: AttrList, aggs: Summarization) -> Relation
8
+ summarize(operand: Relation, by: AttrList, aggs: Summarization) \-> Relation
9
9
  .fi
10
10
  .RE
11
11
  .SH Examples
@@ -5,7 +5,7 @@ TRUE
5
5
  .PP
6
6
  .RS
7
7
  .nf
8
- tautology() -> Predicate
8
+ tautology() \-> Predicate
9
9
  .fi
10
10
  .RE
11
11
  .SH Examples
@@ -23,4 +23,4 @@ tautology
23
23
  .RE
24
24
  .SH Description
25
25
  .PP
26
- This predicate always return true. It is equivalent to \fB\fC->(t){ true }\fR\&.
26
+ This predicate always return true. It is equivalent to \fB\fC\->(t){ true }\fR\&.
data/doc/man/ungroup.man CHANGED
@@ -5,7 +5,7 @@ Inverse of group
5
5
  .PP
6
6
  .RS
7
7
  .nf
8
- ungroup(operand: Relation, rva: AttrName) -> Relation
8
+ ungroup(operand: Relation, rva: AttrName) \-> Relation
9
9
  .fi
10
10
  .RE
11
11
  .SH Examples
data/doc/man/union.man CHANGED
@@ -5,7 +5,7 @@ Logical OR
5
5
  .PP
6
6
  .RS
7
7
  .nf
8
- union(left: Relation, right: Relation) -> Relation
8
+ union(left: Relation, right: Relation) \-> Relation
9
9
  .fi
10
10
  .RE
11
11
  .SH Examples
data/doc/man/unwrap.man CHANGED
@@ -5,7 +5,7 @@ Inverse of wrap
5
5
  .PP
6
6
  .RS
7
7
  .nf
8
- unwrap(operand: Relation, tva: AttrName) -> Relation
8
+ unwrap(operand: Relation, tva: AttrName) \-> Relation
9
9
  .fi
10
10
  .RE
11
11
  .SH Examples
@@ -23,7 +23,7 @@ Unwrapping of \fB\fCtva\fR on an input tuple \fB\fCt\fR consists in removing \fB
23
23
  .PP
24
24
  .RS
25
25
  .nf
26
- Tuple(x: 1, tva: Tuple(y: 2, z: 3)) -> Tuple(x: 1, y: 2, z: 3)
26
+ Tuple(x: 1, tva: Tuple(y: 2, z: 3)) \-> Tuple(x: 1, y: 2, z: 3)
27
27
  .fi
28
28
  .RE
29
29
  .PP
data/doc/man/variance.man CHANGED
@@ -5,7 +5,7 @@ Variance
5
5
  .PP
6
6
  .RS
7
7
  .nf
8
- variance(expr: AttrName|(Tuple->Numeric)) -> Aggregator
8
+ variance(expr: AttrName|(Tuple\->Numeric)) \-> Aggregator
9
9
  .fi
10
10
  .RE
11
11
  .SH Examples
@@ -24,7 +24,7 @@ variance{|t| t.qty * t.price }
24
24
  .PP
25
25
  .RS
26
26
  .nf
27
- variance(->(t){ t.qty * t.price })
27
+ variance(\->(t){ t.qty * t.price })
28
28
  .fi
29
29
  .RE
30
30
  .SH Description
data/doc/man/wrap.man CHANGED
@@ -5,7 +5,7 @@ Tuple\-valued attribute
5
5
  .PP
6
6
  .RS
7
7
  .nf
8
- wrap(operand: Relation, attributes: AttrList, as: AttrName) -> Relation
8
+ wrap(operand: Relation, attributes: AttrList, as: AttrName) \-> Relation
9
9
  .fi
10
10
  .RE
11
11
  .SH Examples
@@ -4,7 +4,7 @@ module Alf
4
4
 
5
5
  MAJOR = 0
6
6
  MINOR = 16
7
- TINY = 0
7
+ TINY = 1
8
8
 
9
9
  def self.to_s
10
10
  [ MAJOR, MINOR, TINY ].join('.')
metadata CHANGED
@@ -1,112 +1,99 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: alf-shell
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.16.0
5
- prerelease:
4
+ version: 0.16.1
6
5
  platform: ruby
7
6
  authors:
8
7
  - Bernard Lambeau
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2014-02-18 00:00:00.000000000 Z
11
+ date: 2014-04-30 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: rake
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
- - - ~>
17
+ - - "~>"
20
18
  - !ruby/object:Gem::Version
21
19
  version: '10.1'
22
20
  type: :development
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
- - - ~>
24
+ - - "~>"
28
25
  - !ruby/object:Gem::Version
29
26
  version: '10.1'
30
27
  - !ruby/object:Gem::Dependency
31
28
  name: rspec
32
29
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
30
  requirements:
35
- - - ~>
31
+ - - "~>"
36
32
  - !ruby/object:Gem::Version
37
33
  version: '2.14'
38
34
  type: :development
39
35
  prerelease: false
40
36
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
37
  requirements:
43
- - - ~>
38
+ - - "~>"
44
39
  - !ruby/object:Gem::Version
45
40
  version: '2.14'
46
41
  - !ruby/object:Gem::Dependency
47
42
  name: alf-doc
48
43
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
44
  requirements:
51
45
  - - '='
52
46
  - !ruby/object:Gem::Version
53
- version: 0.16.0
47
+ version: 0.16.1
54
48
  type: :development
55
49
  prerelease: false
56
50
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
51
  requirements:
59
52
  - - '='
60
53
  - !ruby/object:Gem::Version
61
- version: 0.16.0
54
+ version: 0.16.1
62
55
  - !ruby/object:Gem::Dependency
63
56
  name: quickl
64
57
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
58
  requirements:
67
- - - ~>
59
+ - - "~>"
68
60
  - !ruby/object:Gem::Version
69
61
  version: 0.4.3
70
62
  type: :runtime
71
63
  prerelease: false
72
64
  version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
65
  requirements:
75
- - - ~>
66
+ - - "~>"
76
67
  - !ruby/object:Gem::Version
77
68
  version: 0.4.3
78
69
  - !ruby/object:Gem::Dependency
79
70
  name: highline
80
71
  requirement: !ruby/object:Gem::Requirement
81
- none: false
82
72
  requirements:
83
- - - ~>
73
+ - - "~>"
84
74
  - !ruby/object:Gem::Version
85
75
  version: '1.6'
86
76
  type: :runtime
87
77
  prerelease: false
88
78
  version_requirements: !ruby/object:Gem::Requirement
89
- none: false
90
79
  requirements:
91
- - - ~>
80
+ - - "~>"
92
81
  - !ruby/object:Gem::Version
93
82
  version: '1.6'
94
83
  - !ruby/object:Gem::Dependency
95
84
  name: alf-core
96
85
  requirement: !ruby/object:Gem::Requirement
97
- none: false
98
86
  requirements:
99
87
  - - '='
100
88
  - !ruby/object:Gem::Version
101
- version: 0.16.0
89
+ version: 0.16.1
102
90
  type: :runtime
103
91
  prerelease: false
104
92
  version_requirements: !ruby/object:Gem::Requirement
105
- none: false
106
93
  requirements:
107
94
  - - '='
108
95
  - !ruby/object:Gem::Version
109
- version: 0.16.0
96
+ version: 0.16.1
110
97
  description: This project implements the `alf` commandline tool.
111
98
  email:
112
99
  - blambeau at gmail.com
@@ -118,6 +105,10 @@ files:
118
105
  - CHANGELOG.md
119
106
  - Gemfile
120
107
  - Gemfile.lock
108
+ - LICENCE.md
109
+ - Manifest.txt
110
+ - README.md
111
+ - Rakefile
121
112
  - bin/alf
122
113
  - doc/man/alf-explain.man
123
114
  - doc/man/alf-metadata.man
@@ -207,23 +198,19 @@ files:
207
198
  - doc/txt/unwrap.txt
208
199
  - doc/txt/variance.txt
209
200
  - doc/txt/wrap.txt
201
+ - lib/alf-shell.rb
202
+ - lib/alf/shell.rb
210
203
  - lib/alf/shell/alfrc.rb
204
+ - lib/alf/shell/command.rb
211
205
  - lib/alf/shell/command/explain.rb
212
206
  - lib/alf/shell/command/help.rb
213
207
  - lib/alf/shell/command/main.rb
214
208
  - lib/alf/shell/command/metadata.rb
215
209
  - lib/alf/shell/command/repl.rb
216
210
  - lib/alf/shell/command/show.rb
217
- - lib/alf/shell/command.rb
218
211
  - lib/alf/shell/loader.rb
219
212
  - lib/alf/shell/support.rb
220
213
  - lib/alf/shell/version.rb
221
- - lib/alf/shell.rb
222
- - lib/alf-shell.rb
223
- - LICENCE.md
224
- - Manifest.txt
225
- - Rakefile
226
- - README.md
227
214
  - spec/fixtures/example.alfrc
228
215
  - spec/integration/__database__/parts.rash
229
216
  - spec/integration/__database__/suppliers.rash
@@ -270,32 +257,25 @@ files:
270
257
  - tasks/test.rake
271
258
  homepage: http://github.com/alf-tool/alf-shell
272
259
  licenses: []
260
+ metadata: {}
273
261
  post_install_message:
274
262
  rdoc_options: []
275
263
  require_paths:
276
264
  - lib
277
265
  required_ruby_version: !ruby/object:Gem::Requirement
278
- none: false
279
266
  requirements:
280
- - - ! '>='
267
+ - - ">="
281
268
  - !ruby/object:Gem::Version
282
269
  version: '0'
283
- segments:
284
- - 0
285
- hash: -1823649938307432080
286
270
  required_rubygems_version: !ruby/object:Gem::Requirement
287
- none: false
288
271
  requirements:
289
- - - ! '>='
272
+ - - ">="
290
273
  - !ruby/object:Gem::Version
291
274
  version: '0'
292
- segments:
293
- - 0
294
- hash: -1823649938307432080
295
275
  requirements: []
296
276
  rubyforge_project:
297
- rubygems_version: 1.8.25
277
+ rubygems_version: 2.2.2
298
278
  signing_key:
299
- specification_version: 3
279
+ specification_version: 4
300
280
  summary: Bring Alf's relational algebra to the shell
301
281
  test_files: []