preval | Automatically optimizes your Ruby code

 by   kddnewton Ruby Version: Current License: MIT

kandi X-RAY | preval Summary

kandi X-RAY | preval Summary

preval is a Ruby library. preval has no bugs, it has no vulnerabilities, it has a Permissive License and it has low support. You can download it from GitHub.

preval is a gem that hooks into the Ruby compilation process and runs optimizations before it gets loaded by the virtual machine. Certain optimizations that are common in compilers are not immediately possible with Ruby on account of Ruby's flexibility. For example, most compilers will run through a process called constant folding to eliminate the need to perform extraneous operations at runtime (e.g., 5 + 2 in the source can be replaced with 7). However, because Ruby allows you to override the Integer#+ method, it's possible that 5 + 2 would not evaluate to 7. preval assumes that most developers will not override the Integer#+ method, and performs optimizations under that assumption. Users must opt in to each of preval's optimizations, as there's no real way of telling whether or not it is 100% safe for any codebase. The more optimizations are allowed to run, the more time and memory savings later. Users can also define their own optimizations by subclassing the Preval::Visitor class and using the existing Preval::Node APIs to replace and update the Ruby AST as necessary.
Support
    Quality
      Security
        License
          Reuse

            kandi-support Support

              preval has a low active ecosystem.
              It has 97 star(s) with 1 fork(s). There are 3 watchers for this library.
              OutlinedDot
              It had no major release in the last 6 months.
              There are 0 open issues and 1 have been closed. On average issues are closed in 5 days. There are no pull requests.
              It has a neutral sentiment in the developer community.
              The latest version of preval is current.

            kandi-Quality Quality

              preval has no bugs reported.

            kandi-Security Security

              preval has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.

            kandi-License License

              preval is licensed under the MIT License. This license is Permissive.
              Permissive licenses have the least restrictions, and you can use them in most projects.

            kandi-Reuse Reuse

              preval releases are not available. You will need to build from source code and install.
              Installation instructions, examples and code snippets are available.

            Top functions reviewed by kandi - BETA

            kandi has reviewed preval and discovered the below as its top functions. This is intended to give you an instant insight into preval implemented functionality, and help decide if they suit your requirements.
            • Visit function .
            • Get the body of the body
            • Get an element from the given node .
            • Replace node with the given node .
            • Update the body
            • Joins the body .
            • Returns true if this type matches another type .
            • Get the source body
            • Returns true if the given type is a type
            • Checks if the given type matches the given types .
            Get all kandi verified functions for this library.

            preval Key Features

            No Key Features are available at this moment for preval.

            preval Examples and Code Snippets

            No Code Snippets are available at this moment for preval.

            Community Discussions

            No Community Discussions are available at this moment for preval.Refer to stack overflow page for discussions.

            Community Discussions, Code Snippets contain sources that include Stack Exchange Network

            Vulnerabilities

            No vulnerabilities reported

            Install preval

            Add this line to your application's Gemfile:.

            Support

            Bug reports and pull requests are welcome on GitHub at https://github.com/kddnewton/preval.
            Find more information at:

            Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items

            Find more libraries
            CLONE
          • HTTPS

            https://github.com/kddnewton/preval.git

          • CLI

            gh repo clone kddnewton/preval

          • sshUrl

            git@github.com:kddnewton/preval.git

          • Stay Updated

            Subscribe to our newsletter for trending solutions and developer bootcamps

            Agree to Sign up and Terms & Conditions

            Share this Page

            share link