diff --git a/README.rst b/README.rst
index 2b11f85..a815a98 100644
--- a/README.rst
+++ b/README.rst
@@ -48,6 +48,17 @@ Functions
 You can use the following builtin functions in your expressions:
 
 
+Function ``=any``
+'''''''''''''''''
+
+Returns ``True`` if any element of sequence is true.
+
+    >>> dicteval({"=any", [1, 2, 3]})
+    True
+    >>> dicteval({"=any", [0, 0]})
+    False
+
+
 Function ``=eq``
 ''''''''''''''''
 
@@ -109,6 +120,16 @@ Returns a number with the product of arguments:
    >>> dicteval({"=mul": [3, 5]})
    15
 
+Function ``=all``
+'''''''''''''''''
+
+Return True if all elements of the iterable are true (or if the iterable is empty)
+
+   >>> dicteval({"=mul": (True, False)})
+   False
+   >>> dicteval({"=mul": (True, True)})
+   True
+
 To Do
 -----
 
diff --git a/dicteval/__init__.py b/dicteval/__init__.py
index 5978b4e..57602cc 100644
--- a/dicteval/__init__.py
+++ b/dicteval/__init__.py
@@ -16,6 +16,9 @@ class LanguageSpecification:
 
 
 class BuiltinLanguage(LanguageSpecification):
+    def function_any(self, value, evaluator, context):
+        return any([evaluator(v, context) for v in value])
+
     def function_eq(self, value, evaluator, context):
         value = [evaluator(v, context) for v in value]
         return not value or value.count(value[0]) == len(value)
@@ -35,6 +38,9 @@ class BuiltinLanguage(LanguageSpecification):
     def function_mul(self, value, evaluator, context):
         return functools.reduce(operator.mul, (evaluator(v, context) for v in value))
 
+    def function_all(self, value, evaluator, context):
+        return all(evaluator(v, context) for v in value)
+
 
 class Evaluator:
     def __init__(self, language_spec):

diff --git a/tests/test_eval.py b/tests/test_eval.py
index 98ca542..b1bdadd 100644
--- a/tests/test_eval.py
+++ b/tests/test_eval.py
@@ -17,6 +17,9 @@ from dicteval.exceptions import FunctionNotFound
     ({"=sum": (3, 5)}, 8),
     ({"=sum": {"=": [3, 5]}}, 8),
     ({"=mul": (5, 3, 2, -1)}, -30),
+    ({"=all": (True, True, True)}, True),
+    ({"=all": (True, False, True)}, False),
+    ({"=all": (False, False, False)}, False),
 ])
 def test_basic_eval(expression, result):
     assert dicteval(expression) == result
@@ -36,6 +39,8 @@ def test_json_loads():
 
 
 @pytest.mark.parametrize("fn,args,result", [
+    ("any", (1, 2, 3), True),
+    ("any", (0, 0), False),
     ("eq", (1, 1, 1, 1, 1), True),
     ("eq", (1, 1, 5, 1, 1), False),
     ("neq", (1, 1, 1, 1, 1), False),
@@ -45,6 +50,9 @@ def test_json_loads():
     ("not", False, True),
     ("sum", (1, 2), 3),
     ("mul", (2, 4), 8),
+    ("all", tuple(), True),
+    ("all", (True, True), True),
+    ("all", (True, False), False),
 ])
 def test_buitin_language(fn, args, result, context):
     language = BuiltinLanguage()

Implement and document builtin function: =all
Equivalent to the Python's builtin.
tests/test_eval.py::test_basic_eval[expression12-True] tests/test_eval.py::test_basic_eval[expression13-False] tests/test_eval.py::test_basic_eval[expression14-False] tests/test_eval.py::test_buitin_language[any-args0-True] tests/test_eval.py::test_buitin_language[any-args1-False] tests/test_eval.py::test_buitin_language[all-args11-True] tests/test_eval.py::test_buitin_language[all-args12-True] tests/test_eval.py::test_buitin_language[all-args13-False]
tests/test_eval.py::test_basic_eval[3-3] tests/test_eval.py::test_basic_eval[expression1-result1] tests/test_eval.py::test_basic_eval[expression2-result2] tests/test_eval.py::test_basic_eval[expression3-result3] tests/test_eval.py::test_basic_eval[x-x] tests/test_eval.py::test_basic_eval[expression5-3] tests/test_eval.py::test_basic_eval[expression6-result6] tests/test_eval.py::test_basic_eval[expression7-3] tests/test_eval.py::test_basic_eval[expression8-8] tests/test_eval.py::test_basic_eval[expression9-8] tests/test_eval.py::test_basic_eval[expression10-8] tests/test_eval.py::test_basic_eval[expression11--30] tests/test_eval.py::test_context_eval tests/test_eval.py::test_invalid_expression_object_with_no_result_key tests/test_eval.py::test_json_loads tests/test_eval.py::test_buitin_language[eq-args2-True] tests/test_eval.py::test_buitin_language[eq-args3-False] tests/test_eval.py::test_buitin_language[neq-args4-False] tests/test_eval.py::test_buitin_language[neq-args5-True] tests/test_eval.py::test_buitin_language[nop-4-4] tests/test_eval.py::test_buitin_language[not-True-False] tests/test_eval.py::test_buitin_language[not-False-True] tests/test_eval.py::test_buitin_language[sum-args9-3] tests/test_eval.py::test_buitin_language[mul-args10-8] tests/test_eval.py::test_function_not_found_error