diff --git a/lib/types.rb b/lib/types.rb
index ae766cbc031c2a87c061bf2f202372f9655ab84b..5df81082bebef53549134173af426b82de49e2a1 100644
--- a/lib/types.rb
+++ b/lib/types.rb
@@ -333,22 +333,19 @@ module Dhallish
 
 	# TODO: .val weg!
 	def mergeRecordsRecursively(a, b)
-		restype = mergeRecordTypes(a.type, b.type)
-
-		merged = a.val.clone
-		b.val.each { |key, val|
+		merged = a.clone
+		b.each { |key, val|
 			if merged.key? key
-				if val.type.is_a? Types::Record and merged[key].type.is_a? Types::Record
+				if val.is_a? Hash and merged[key].is_a? Hash
 					merged[key] = mergeRecordsRecursively(merged[key], val)
 				else
-					raise DhallError, "key `#{key}` apeares in left and right side of `/\\`"
+					raise DhallError, "key `#{key}` apeares in left and right side of `/\\` (should not happen becouse of static type checks)"
 				end
 			else
 				merged[key] = val
 			end
 		}
-
-		Value.new merged, restype
+		merged
 	end
 	module_function :mergeRecordsRecursively
 
@@ -360,12 +357,10 @@ module Dhallish
 	end
 	module_function :mergeRecordTypesPrefereRight
 
-	# TODO: .val weg!
 	def mergeRecordsPrefereRight(a, b)
-		mergedType = mergeRecordTypesPrefereRight(a.type, b.type)
-		mergedVals = a.val.clone
-		b.val.each { |key, val| mergedVals[key] = val }
-		Value.new mergedVals, mergedType
+		mergedVals = a.clone
+		b.each { |key, val| mergedVals[key] = val }
+		mergedVals
 	end
 	module_function :mergeRecordsPrefereRight
 end