GithubHelp home page GithubHelp logo

Comments (2)

takuyaa avatar takuyaa commented on June 17, 2024

@vbkaisetsu Thanks for raising this issue. This behavior that might cause unexpected SIGSEGV should be fixed to avoid user confusion.

The policy of the fix I would like to propose is as follows:

  1. Introduce validate function that checks whether an array is valid or not as a representation of a double array.
    • The validation needs to check carefully so that all transitions of a double array are safe.
  2. Add a procedure that calls validate function to check a given array of DoubleArray::new.
    • This means DoubleArray::new will be a safe method as far as we validated.
  3. Introduce unsafe DoubleArray::new_without_verification method for expert users.
    • This method doesn't check an array at initialization. The behavior is the same as the current DoubleArray::new method.
    • Some users who are sure their array is valid might want this feature for faster initialization.

Does this proposal make sense to you?

from yada.

vbkaisetsu avatar vbkaisetsu commented on June 17, 2024

SGTM.

from yada.

Related Issues (5)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.