You are viewing a plain text version of this content. The canonical link for it is here.
Posted to nuvem-commits@incubator.apache.org by js...@apache.org on 2011/02/11 07:57:11 UTC

svn commit: r1069698 - in /incubator/nuvem/trunk/nuvem-parallel: ./ and_.py equals.py false_.py greater.py if_.py lesser.py name.py not_.py nothing.py number.py or_.py pair.py property.py reference.py test.py text.py true_.py

Author: jsdelfino
Date: Fri Feb 11 07:57:10 2011
New Revision: 1069698

URL: http://svn.apache.org/viewvc?rev=1069698&view=rev
Log:
Strawman components for simple parallel programming. No list support yet.

Added:
    incubator/nuvem/trunk/nuvem-parallel/
    incubator/nuvem/trunk/nuvem-parallel/and_.py
    incubator/nuvem/trunk/nuvem-parallel/equals.py
    incubator/nuvem/trunk/nuvem-parallel/false_.py
    incubator/nuvem/trunk/nuvem-parallel/greater.py
    incubator/nuvem/trunk/nuvem-parallel/if_.py
    incubator/nuvem/trunk/nuvem-parallel/lesser.py
    incubator/nuvem/trunk/nuvem-parallel/name.py
    incubator/nuvem/trunk/nuvem-parallel/not_.py
    incubator/nuvem/trunk/nuvem-parallel/nothing.py
    incubator/nuvem/trunk/nuvem-parallel/number.py
    incubator/nuvem/trunk/nuvem-parallel/or_.py
    incubator/nuvem/trunk/nuvem-parallel/pair.py
    incubator/nuvem/trunk/nuvem-parallel/property.py
    incubator/nuvem/trunk/nuvem-parallel/reference.py
    incubator/nuvem/trunk/nuvem-parallel/test.py   (with props)
    incubator/nuvem/trunk/nuvem-parallel/text.py
    incubator/nuvem/trunk/nuvem-parallel/true_.py

Added: incubator/nuvem/trunk/nuvem-parallel/and_.py
URL: http://svn.apache.org/viewvc/incubator/nuvem/trunk/nuvem-parallel/and_.py?rev=1069698&view=auto
==============================================================================
--- incubator/nuvem/trunk/nuvem-parallel/and_.py (added)
+++ incubator/nuvem/trunk/nuvem-parallel/and_.py Fri Feb 11 07:57:10 2011
@@ -0,0 +1,20 @@
+#  Licensed to the Apache Software Foundation (ASF) under one
+#  or more contributor license agreements.  See the NOTICE file
+#  distributed with this work for additional information
+#  regarding copyright ownership.  The ASF licenses this file
+#  to you under the Apache License, Version 2.0 (the
+#  "License"); you may not use this file except in compliance
+#  with the License.  You may obtain a copy of the License at
+#  
+#    http://www.apache.org/licenses/LICENSE-2.0
+#    
+#  Unless required by applicable law or agreed to in writing,
+#  software distributed under the License is distributed on an
+#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+#  KIND, either express or implied.  See the License for the
+#  specific language governing permissions and limitations
+#  under the License.
+
+def get(id, a, b):
+    return a.get(()) and b.get(())
+

Added: incubator/nuvem/trunk/nuvem-parallel/equals.py
URL: http://svn.apache.org/viewvc/incubator/nuvem/trunk/nuvem-parallel/equals.py?rev=1069698&view=auto
==============================================================================
--- incubator/nuvem/trunk/nuvem-parallel/equals.py (added)
+++ incubator/nuvem/trunk/nuvem-parallel/equals.py Fri Feb 11 07:57:10 2011
@@ -0,0 +1,20 @@
+#  Licensed to the Apache Software Foundation (ASF) under one
+#  or more contributor license agreements.  See the NOTICE file
+#  distributed with this work for additional information
+#  regarding copyright ownership.  The ASF licenses this file
+#  to you under the Apache License, Version 2.0 (the
+#  "License"); you may not use this file except in compliance
+#  with the License.  You may obtain a copy of the License at
+#  
+#    http://www.apache.org/licenses/LICENSE-2.0
+#    
+#  Unless required by applicable law or agreed to in writing,
+#  software distributed under the License is distributed on an
+#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+#  KIND, either express or implied.  See the License for the
+#  specific language governing permissions and limitations
+#  under the License.
+
+def get(id, a, b):
+    return a.get(()) == b.get(())
+

Added: incubator/nuvem/trunk/nuvem-parallel/false_.py
URL: http://svn.apache.org/viewvc/incubator/nuvem/trunk/nuvem-parallel/false_.py?rev=1069698&view=auto
==============================================================================
--- incubator/nuvem/trunk/nuvem-parallel/false_.py (added)
+++ incubator/nuvem/trunk/nuvem-parallel/false_.py Fri Feb 11 07:57:10 2011
@@ -0,0 +1,20 @@
+#  Licensed to the Apache Software Foundation (ASF) under one
+#  or more contributor license agreements.  See the NOTICE file
+#  distributed with this work for additional information
+#  regarding copyright ownership.  The ASF licenses this file
+#  to you under the Apache License, Version 2.0 (the
+#  "License"); you may not use this file except in compliance
+#  with the License.  You may obtain a copy of the License at
+#  
+#    http://www.apache.org/licenses/LICENSE-2.0
+#    
+#  Unless required by applicable law or agreed to in writing,
+#  software distributed under the License is distributed on an
+#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+#  KIND, either express or implied.  See the License for the
+#  specific language governing permissions and limitations
+#  under the License.
+
+def get(id):
+    return False
+

Added: incubator/nuvem/trunk/nuvem-parallel/greater.py
URL: http://svn.apache.org/viewvc/incubator/nuvem/trunk/nuvem-parallel/greater.py?rev=1069698&view=auto
==============================================================================
--- incubator/nuvem/trunk/nuvem-parallel/greater.py (added)
+++ incubator/nuvem/trunk/nuvem-parallel/greater.py Fri Feb 11 07:57:10 2011
@@ -0,0 +1,20 @@
+#  Licensed to the Apache Software Foundation (ASF) under one
+#  or more contributor license agreements.  See the NOTICE file
+#  distributed with this work for additional information
+#  regarding copyright ownership.  The ASF licenses this file
+#  to you under the Apache License, Version 2.0 (the
+#  "License"); you may not use this file except in compliance
+#  with the License.  You may obtain a copy of the License at
+#  
+#    http://www.apache.org/licenses/LICENSE-2.0
+#    
+#  Unless required by applicable law or agreed to in writing,
+#  software distributed under the License is distributed on an
+#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+#  KIND, either express or implied.  See the License for the
+#  specific language governing permissions and limitations
+#  under the License.
+
+def get(id, a, b):
+    return a.get(()) > b.get(())
+

Added: incubator/nuvem/trunk/nuvem-parallel/if_.py
URL: http://svn.apache.org/viewvc/incubator/nuvem/trunk/nuvem-parallel/if_.py?rev=1069698&view=auto
==============================================================================
--- incubator/nuvem/trunk/nuvem-parallel/if_.py (added)
+++ incubator/nuvem/trunk/nuvem-parallel/if_.py Fri Feb 11 07:57:10 2011
@@ -0,0 +1,23 @@
+#  Licensed to the Apache Software Foundation (ASF) under one
+#  or more contributor license agreements.  See the NOTICE file
+#  distributed with this work for additional information
+#  regarding copyright ownership.  The ASF licenses this file
+#  to you under the Apache License, Version 2.0 (the
+#  "License"); you may not use this file except in compliance
+#  with the License.  You may obtain a copy of the License at
+#  
+#    http://www.apache.org/licenses/LICENSE-2.0
+#    
+#  Unless required by applicable law or agreed to in writing,
+#  software distributed under the License is distributed on an
+#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+#  KIND, either express or implied.  See the License for the
+#  specific language governing permissions and limitations
+#  under the License.
+
+def get(id, cond, then, els):
+    if cond.get(()):
+        return then.get(())
+    else:
+        return els.get(())
+

Added: incubator/nuvem/trunk/nuvem-parallel/lesser.py
URL: http://svn.apache.org/viewvc/incubator/nuvem/trunk/nuvem-parallel/lesser.py?rev=1069698&view=auto
==============================================================================
--- incubator/nuvem/trunk/nuvem-parallel/lesser.py (added)
+++ incubator/nuvem/trunk/nuvem-parallel/lesser.py Fri Feb 11 07:57:10 2011
@@ -0,0 +1,20 @@
+#  Licensed to the Apache Software Foundation (ASF) under one
+#  or more contributor license agreements.  See the NOTICE file
+#  distributed with this work for additional information
+#  regarding copyright ownership.  The ASF licenses this file
+#  to you under the Apache License, Version 2.0 (the
+#  "License"); you may not use this file except in compliance
+#  with the License.  You may obtain a copy of the License at
+#  
+#    http://www.apache.org/licenses/LICENSE-2.0
+#    
+#  Unless required by applicable law or agreed to in writing,
+#  software distributed under the License is distributed on an
+#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+#  KIND, either express or implied.  See the License for the
+#  specific language governing permissions and limitations
+#  under the License.
+
+def get(id, a, b):
+    return a.get(()) < b.get(())
+

Added: incubator/nuvem/trunk/nuvem-parallel/name.py
URL: http://svn.apache.org/viewvc/incubator/nuvem/trunk/nuvem-parallel/name.py?rev=1069698&view=auto
==============================================================================
--- incubator/nuvem/trunk/nuvem-parallel/name.py (added)
+++ incubator/nuvem/trunk/nuvem-parallel/name.py Fri Feb 11 07:57:10 2011
@@ -0,0 +1,20 @@
+#  Licensed to the Apache Software Foundation (ASF) under one
+#  or more contributor license agreements.  See the NOTICE file
+#  distributed with this work for additional information
+#  regarding copyright ownership.  The ASF licenses this file
+#  to you under the Apache License, Version 2.0 (the
+#  "License"); you may not use this file except in compliance
+#  with the License.  You may obtain a copy of the License at
+#  
+#    http://www.apache.org/licenses/LICENSE-2.0
+#    
+#  Unless required by applicable law or agreed to in writing,
+#  software distributed under the License is distributed on an
+#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+#  KIND, either express or implied.  See the License for the
+#  specific language governing permissions and limitations
+#  under the License.
+
+def get(id, prop):
+    return "'" + prop.eval()
+

Added: incubator/nuvem/trunk/nuvem-parallel/not_.py
URL: http://svn.apache.org/viewvc/incubator/nuvem/trunk/nuvem-parallel/not_.py?rev=1069698&view=auto
==============================================================================
--- incubator/nuvem/trunk/nuvem-parallel/not_.py (added)
+++ incubator/nuvem/trunk/nuvem-parallel/not_.py Fri Feb 11 07:57:10 2011
@@ -0,0 +1,20 @@
+#  Licensed to the Apache Software Foundation (ASF) under one
+#  or more contributor license agreements.  See the NOTICE file
+#  distributed with this work for additional information
+#  regarding copyright ownership.  The ASF licenses this file
+#  to you under the Apache License, Version 2.0 (the
+#  "License"); you may not use this file except in compliance
+#  with the License.  You may obtain a copy of the License at
+#  
+#    http://www.apache.org/licenses/LICENSE-2.0
+#    
+#  Unless required by applicable law or agreed to in writing,
+#  software distributed under the License is distributed on an
+#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+#  KIND, either express or implied.  See the License for the
+#  specific language governing permissions and limitations
+#  under the License.
+
+def get(id, expr):
+    return not expr.get(())
+

Added: incubator/nuvem/trunk/nuvem-parallel/nothing.py
URL: http://svn.apache.org/viewvc/incubator/nuvem/trunk/nuvem-parallel/nothing.py?rev=1069698&view=auto
==============================================================================
--- incubator/nuvem/trunk/nuvem-parallel/nothing.py (added)
+++ incubator/nuvem/trunk/nuvem-parallel/nothing.py Fri Feb 11 07:57:10 2011
@@ -0,0 +1,20 @@
+#  Licensed to the Apache Software Foundation (ASF) under one
+#  or more contributor license agreements.  See the NOTICE file
+#  distributed with this work for additional information
+#  regarding copyright ownership.  The ASF licenses this file
+#  to you under the Apache License, Version 2.0 (the
+#  "License"); you may not use this file except in compliance
+#  with the License.  You may obtain a copy of the License at
+#  
+#    http://www.apache.org/licenses/LICENSE-2.0
+#    
+#  Unless required by applicable law or agreed to in writing,
+#  software distributed under the License is distributed on an
+#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+#  KIND, either express or implied.  See the License for the
+#  specific language governing permissions and limitations
+#  under the License.
+
+def get(id):
+    return None
+

Added: incubator/nuvem/trunk/nuvem-parallel/number.py
URL: http://svn.apache.org/viewvc/incubator/nuvem/trunk/nuvem-parallel/number.py?rev=1069698&view=auto
==============================================================================
--- incubator/nuvem/trunk/nuvem-parallel/number.py (added)
+++ incubator/nuvem/trunk/nuvem-parallel/number.py Fri Feb 11 07:57:10 2011
@@ -0,0 +1,20 @@
+#  Licensed to the Apache Software Foundation (ASF) under one
+#  or more contributor license agreements.  See the NOTICE file
+#  distributed with this work for additional information
+#  regarding copyright ownership.  The ASF licenses this file
+#  to you under the Apache License, Version 2.0 (the
+#  "License"); you may not use this file except in compliance
+#  with the License.  You may obtain a copy of the License at
+#  
+#    http://www.apache.org/licenses/LICENSE-2.0
+#    
+#  Unless required by applicable law or agreed to in writing,
+#  software distributed under the License is distributed on an
+#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+#  KIND, either express or implied.  See the License for the
+#  specific language governing permissions and limitations
+#  under the License.
+
+def get(id, prop):
+    return float(prop.eval())
+

Added: incubator/nuvem/trunk/nuvem-parallel/or_.py
URL: http://svn.apache.org/viewvc/incubator/nuvem/trunk/nuvem-parallel/or_.py?rev=1069698&view=auto
==============================================================================
--- incubator/nuvem/trunk/nuvem-parallel/or_.py (added)
+++ incubator/nuvem/trunk/nuvem-parallel/or_.py Fri Feb 11 07:57:10 2011
@@ -0,0 +1,20 @@
+#  Licensed to the Apache Software Foundation (ASF) under one
+#  or more contributor license agreements.  See the NOTICE file
+#  distributed with this work for additional information
+#  regarding copyright ownership.  The ASF licenses this file
+#  to you under the Apache License, Version 2.0 (the
+#  "License"); you may not use this file except in compliance
+#  with the License.  You may obtain a copy of the License at
+#  
+#    http://www.apache.org/licenses/LICENSE-2.0
+#    
+#  Unless required by applicable law or agreed to in writing,
+#  software distributed under the License is distributed on an
+#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+#  KIND, either express or implied.  See the License for the
+#  specific language governing permissions and limitations
+#  under the License.
+
+def get(id, a, b):
+    return a.get(()) or b.get(())
+

Added: incubator/nuvem/trunk/nuvem-parallel/pair.py
URL: http://svn.apache.org/viewvc/incubator/nuvem/trunk/nuvem-parallel/pair.py?rev=1069698&view=auto
==============================================================================
--- incubator/nuvem/trunk/nuvem-parallel/pair.py (added)
+++ incubator/nuvem/trunk/nuvem-parallel/pair.py Fri Feb 11 07:57:10 2011
@@ -0,0 +1,20 @@
+#  Licensed to the Apache Software Foundation (ASF) under one
+#  or more contributor license agreements.  See the NOTICE file
+#  distributed with this work for additional information
+#  regarding copyright ownership.  The ASF licenses this file
+#  to you under the Apache License, Version 2.0 (the
+#  "License"); you may not use this file except in compliance
+#  with the License.  You may obtain a copy of the License at
+#  
+#    http://www.apache.org/licenses/LICENSE-2.0
+#    
+#  Unless required by applicable law or agreed to in writing,
+#  software distributed under the License is distributed on an
+#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+#  KIND, either express or implied.  See the License for the
+#  specific language governing permissions and limitations
+#  under the License.
+
+def get(id, a, b):
+    return (a.get(()), b.get(()))
+

Added: incubator/nuvem/trunk/nuvem-parallel/property.py
URL: http://svn.apache.org/viewvc/incubator/nuvem/trunk/nuvem-parallel/property.py?rev=1069698&view=auto
==============================================================================
--- incubator/nuvem/trunk/nuvem-parallel/property.py (added)
+++ incubator/nuvem/trunk/nuvem-parallel/property.py Fri Feb 11 07:57:10 2011
@@ -0,0 +1,38 @@
+#  Licensed to the Apache Software Foundation (ASF) under one
+#  or more contributor license agreements.  See the NOTICE file
+#  distributed with this work for additional information
+#  regarding copyright ownership.  The ASF licenses this file
+#  to you under the Apache License, Version 2.0 (the
+#  "License"); you may not use this file except in compliance
+#  with the License.  You may obtain a copy of the License at
+#  
+#    http://www.apache.org/licenses/LICENSE-2.0
+#    
+#  Unless required by applicable law or agreed to in writing,
+#  software distributed under the License is distributed on an
+#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+#  KIND, either express or implied.  See the License for the
+#  specific language governing permissions and limitations
+#  under the License.
+
+# Mockup component properties for testing
+
+class property:
+    def __init__(self, name, l):
+        self.name = name
+        self.l = l
+
+    def __call__(self, *args):
+        return self.l(*args)
+
+    def __getattr__(self, name):
+        if name == "eval":
+            return self
+        raise AttributeError()
+
+    def __repr__(self):
+        return repr((self.name, self.l()))
+
+def mkprop(name, l):
+    return property(name, l)
+

Added: incubator/nuvem/trunk/nuvem-parallel/reference.py
URL: http://svn.apache.org/viewvc/incubator/nuvem/trunk/nuvem-parallel/reference.py?rev=1069698&view=auto
==============================================================================
--- incubator/nuvem/trunk/nuvem-parallel/reference.py (added)
+++ incubator/nuvem/trunk/nuvem-parallel/reference.py Fri Feb 11 07:57:10 2011
@@ -0,0 +1,38 @@
+#  Licensed to the Apache Software Foundation (ASF) under one
+#  or more contributor license agreements.  See the NOTICE file
+#  distributed with this work for additional information
+#  regarding copyright ownership.  The ASF licenses this file
+#  to you under the Apache License, Version 2.0 (the
+#  "License"); you may not use this file except in compliance
+#  with the License.  You may obtain a copy of the License at
+#  
+#    http://www.apache.org/licenses/LICENSE-2.0
+#    
+#  Unless required by applicable law or agreed to in writing,
+#  software distributed under the License is distributed on an
+#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+#  KIND, either express or implied.  See the License for the
+#  specific language governing permissions and limitations
+#  under the License.
+
+# Mockup component references for testing
+
+class reference:
+    def __init__(self, name, l):
+        self.name = name
+        self.l = l
+
+    def __call__(self, *args):
+        return self.l(*args)
+
+    def __getattr__(self, name):
+        if name == "get":
+            return self
+        raise AttributeError()
+
+    def __repr__(self):
+        return repr((self.name, self.l))
+
+def mkref(name, l):
+    return reference(name, l)
+

Added: incubator/nuvem/trunk/nuvem-parallel/test.py
URL: http://svn.apache.org/viewvc/incubator/nuvem/trunk/nuvem-parallel/test.py?rev=1069698&view=auto
==============================================================================
--- incubator/nuvem/trunk/nuvem-parallel/test.py (added)
+++ incubator/nuvem/trunk/nuvem-parallel/test.py Fri Feb 11 07:57:10 2011
@@ -0,0 +1,70 @@
+#!/usr/bin/python
+#  Licensed to the Apache Software Foundation (ASF) under one
+#  or more contributor license agreements.  See the NOTICE file
+#  distributed with this work for additional information
+#  regarding copyright ownership.  The ASF licenses this file
+#  to you under the Apache License, Version 2.0 (the
+#  "License"); you may not use this file except in compliance
+#  with the License.  You may obtain a copy of the License at
+#  
+#    http://www.apache.org/licenses/LICENSE-2.0
+#    
+#  Unless required by applicable law or agreed to in writing,
+#  software distributed under the License is distributed on an
+#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+#  KIND, either express or implied.  See the License for the
+#  specific language governing permissions and limitations
+#  under the License.
+
+# Test the simple parallel programming components
+
+import unittest
+from property import *
+from reference import *
+
+import true_
+import false_
+import number
+import text
+import name
+import nothing
+import pair
+import if_
+import and_
+import or_
+import not_
+import equals
+import lesser
+import greater
+
+def testValues():
+    assert true_.get(()) == True
+    assert false_.get(()) == False
+    assert nothing.get(()) == None
+    assert number.get((), mkprop('value', lambda: 1)) == 1
+    assert text.get((), mkprop('value', lambda: 'abc')) == 'abc'
+    assert name.get((), mkprop('value', lambda: 'abc')) == "'abc"
+    assert pair.get((), mkref('a', lambda id: 'abc'), mkref('b', lambda id: 'def')) == ('abc', 'def')
+
+    assert if_.get((), mkref('cond', lambda id: True), mkref('then', lambda id: 'abc'), mkref('els', lambda id: 'def')) == 'abc'
+    assert if_.get((), mkref('cond', lambda id: False), mkref('then', lambda id: 'abc'), mkref('els', lambda id: 'def')) == 'def'
+    assert and_.get((), mkref('a', lambda id: False), mkref('b', lambda id: True)) == False
+    assert and_.get((), mkref('a', lambda id: True), mkref('b', lambda id: True)) == True
+    assert or_.get((), mkref('a', lambda id: False), mkref('b', lambda id: False)) == False
+    assert or_.get((), mkref('a', lambda id: False), mkref('b', lambda id: True)) == True
+    assert not_.get((), mkref('expr', lambda id: False)) == True
+    assert not_.get((), mkref('expr', lambda id: True)) == False
+    assert equals.get((), mkref('a', lambda id: 'abc'), mkref('b', lambda id: 'abc')) == True
+    assert equals.get((), mkref('a', lambda id: 'abc'), mkref('b', lambda id: 'def')) == False
+    assert lesser.get((), mkref('a', lambda id: 'abc'), mkref('b', lambda id: 'abc')) == False
+    assert lesser.get((), mkref('a', lambda id: 'abc'), mkref('b', lambda id: 'def')) == True
+    assert greater.get((), mkref('a', lambda id: 'abc'), mkref('b', lambda id: 'abc')) == False
+    assert greater.get((), mkref('a', lambda id: 'def'), mkref('b', lambda id: 'abc')) == True
+
+    return True
+
+if __name__ == '__main__':
+    print 'Testing...'
+    testValues()
+    print 'OK'
+

Propchange: incubator/nuvem/trunk/nuvem-parallel/test.py
------------------------------------------------------------------------------
    svn:executable = *

Added: incubator/nuvem/trunk/nuvem-parallel/text.py
URL: http://svn.apache.org/viewvc/incubator/nuvem/trunk/nuvem-parallel/text.py?rev=1069698&view=auto
==============================================================================
--- incubator/nuvem/trunk/nuvem-parallel/text.py (added)
+++ incubator/nuvem/trunk/nuvem-parallel/text.py Fri Feb 11 07:57:10 2011
@@ -0,0 +1,20 @@
+#  Licensed to the Apache Software Foundation (ASF) under one
+#  or more contributor license agreements.  See the NOTICE file
+#  distributed with this work for additional information
+#  regarding copyright ownership.  The ASF licenses this file
+#  to you under the Apache License, Version 2.0 (the
+#  "License"); you may not use this file except in compliance
+#  with the License.  You may obtain a copy of the License at
+#  
+#    http://www.apache.org/licenses/LICENSE-2.0
+#    
+#  Unless required by applicable law or agreed to in writing,
+#  software distributed under the License is distributed on an
+#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+#  KIND, either express or implied.  See the License for the
+#  specific language governing permissions and limitations
+#  under the License.
+
+def get(id, prop):
+    return prop.eval()
+

Added: incubator/nuvem/trunk/nuvem-parallel/true_.py
URL: http://svn.apache.org/viewvc/incubator/nuvem/trunk/nuvem-parallel/true_.py?rev=1069698&view=auto
==============================================================================
--- incubator/nuvem/trunk/nuvem-parallel/true_.py (added)
+++ incubator/nuvem/trunk/nuvem-parallel/true_.py Fri Feb 11 07:57:10 2011
@@ -0,0 +1,20 @@
+#  Licensed to the Apache Software Foundation (ASF) under one
+#  or more contributor license agreements.  See the NOTICE file
+#  distributed with this work for additional information
+#  regarding copyright ownership.  The ASF licenses this file
+#  to you under the Apache License, Version 2.0 (the
+#  "License"); you may not use this file except in compliance
+#  with the License.  You may obtain a copy of the License at
+#  
+#    http://www.apache.org/licenses/LICENSE-2.0
+#    
+#  Unless required by applicable law or agreed to in writing,
+#  software distributed under the License is distributed on an
+#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+#  KIND, either express or implied.  See the License for the
+#  specific language governing permissions and limitations
+#  under the License.
+
+def get(id):
+    return True
+