Issue #14666 has been updated by shevegen (Robert A. Heiler).


Let's let nil remain nil rather than maybe become maybe-nil.

----------------------------------------
Feature #14666: nil.any?{} should return false
https://bugs.ruby-lang.org/issues/14666#change-71486

* Author: eike.rb (Eike Dierks)
* Status: Rejected
* Priority: Normal
* Assignee: 
* Target version: 
----------------------------------------
Hi everyone at ruby/trunk

I encountered `nil.any?`

```
undefined method `any?' for nil:NilClass (NoMethodError)
```

I fully agree with all of yours,
that `nil` should be kept slim.

But than, on the other hand,
the existence quantors are well defined on `nil`.

So `nil.any?` should always return `false`

I know this might make more sense to return `NoMethodError`

But in the end `nil` is an object,
it's not a null pointer exception any more

We can actually talk with `nil`.

Back in the objc days talking to `nil` would always return `nil`,
Im not sure what happens if `nil` answers `false` to `any?`
(currently it throws an exception, code should not depend on that)

I believe `nil` is a deep concept,
and ruby got far ahead with the Nil class

I'd like to suggest that `nil.any?{}` should return false















-- 
https://bugs.ruby-lang.org/

Unsubscribe: <mailto:ruby-core-request / ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>