Palantir Technologies Inc. (Palo Alto, CA)

Systems and methods are provided to acquire the source code file or files that correspond to a software program. The first software package, that includes one or more source codes files, must be obtained separately from the program. The first library that can be called and the invocation mechanism to call the first callable libraries are at least one in each. A composite software program that is capable of invoking at minimum the software program as well as the first callable library of the initial software package by using the first invocation mechanism are generated.

Based on the conventional approach software developers could depend on various software programs, e.g., development tools to validate and test their software. These tools can be used to develop, distribute or publish, test and format, as well as check your software. Each software package might be its own standalone executable in some instances. This is dependent on the development environment. The need to acquire the necessary components, compile and run these packages separately can be inefficient.

Various embodiments of the present disclosure may comprise methods, systems and non-transitory computer-readable media designed to extract at least one source code file which correspond to a software program. A minimum of one first software package that can be run separately from the software program is obtained, the first software package including at least one or more source code files. At least one initial callable library for the initial software package, and at least one invocation mechanism that is the first to call the first library that is callable are created. A software package that can invoke at minimum the program as well as the first callable library for the initial software package using the first mechanism for invocation are generated.

Some embodiments of the systems, techniques and non-transitory computer-readable media are designed to trigger the program in question to call the first of the callable libraries of the first package.

In certain embodiments, systems, methods, and non-transitory computer readable media are configured to execute the software package with a command-line parameter that refers to the first mechanism of invocation for the first software package.

In certain implementations the first callable library is run in separate sub-processes with an execution stack that is separate.

In certain instances, the systems, methods, as well as non-transitory computer readable media are designed to acquire at least one second software package, which is independently executable from the software program The second software package includes one or more source code files; create at least two callable libraries for the second package of software, and at minimum one second invocation mechanism to call the second callable library; and generate a new software package capable of calling at least the program in the software, the first callable library for the first software package using the first invocation mechanism, and the second callable library of the second software package, using the second mechanism for invocation.

The new software package will invoke the functions of the second and first software packages in particular instances.

Some embodiments of the methods, systems and non-transitory computer-readable media are set up in a way that they are able to determine if the first software package and the second one import the same program that utilizes shared state.

Certain examples of the methods, systems and non-transitory computer-readable media have been designed to automatically rewrite source code files that are corresponding to the software package that was first introduced so that it can become the first library with a callable interface.

In some instances, the source code file which outlines a main function of the first software package may be rewritten to be able to be referred to as a non-main library feature.

Some of the systems, methods and non-transitory computer-readable media have been designed to embed the initial invoke mechanism in the program composite.

These and other features of the systems, methods, and non-transitory computer readable media disclosed herein, as well as the methods of operation and functions of the related elements of structure and the combination of parts and economies ofmanufacture, will become more apparent upon consideration of the following description and the appended claims with reference to the accompanying drawings, all of which form a part of this specification, wherein like reference numerals designatecorresponding parts in the various figures. It is to be expressly acknowledged that the drawings are for purposes of illustration and description only and not intended to serve as a description of the limits of the invention.

Click here to view the patent on USPTO website.


Get Patents with PatentPC

What is a patent?

Granted by the government to protect an invention, patents grant the inventor with the exclusive right to develop, utilize, sell and promote the invention? society is benefited when a brand new technology is introduced to the market. Benefits can be realized in direct terms, as it may allow people to do previously impossible things. Or indirectly by the economic benefits (business expansion and job opportunities) that innovation provides.

Patent protection is sought by many pharmaceutical companies and university researchers for their research and development. Patents are granted for products, processes, or method of making new materials. Patent protection must be granted to an invention that is beneficial or novel and is not previously known to others in the same field.

Patents reward inventors who have commercially successful inventions. They are an incentive to inventors to come up with new ideas. Small businesses and inventors are certain that they will receive a good return on their investment in the field of technology development. They can make a living by their work.

Businesses with the ability to:

Secure your products and services

Enhance the value, popularity, and appeal of your products market

Make your company and products stand out from the rest;

Get technical and business information.

Beware of the danger of accidentally using third-party proprietary content, or losing valuable data, original outputs, or other creative output.

Patents transform the knowledge of inventors into a valuable asset which creates new opportunities for job creation through licensing and joint ventures.

Investors involved in the commercialization and development of technology may find small businesses with patent protection appealing.

Patenting can lead to innovations and new ideas. The information you create may be patent-worthy.

Patents can be used to serve as a deterrent to untrustworthy third parties profiting from an invention’s efforts.

The profits from technology patents that are successful and commercially viable can be used to finance the development of technology through research and development (R&D), which will boost the likelihood of improved technology in the future.

Intellectual property ownership can be used to convince lenders and investors that there are real chances to commercialize your product. Sometimes, a powerful patent can lead to a variety of financing possibilities. Patents can be used in conjunction with other IP assets as collateral or security for financing. You may also present investors with your patent assets to boost the value of your business. Forbes and others have pointed out that each patent can increase anything from $500,000 to 1 million dollars to your company’s valuation.

Start-ups need a well-constructed business plan that leverages the IP to show that your product or service is distinctive, superior, or innovative. Investors will also be impressed if you have IP rights are secure or are in the process of becoming secure, and if they support your business strategy.

It is essential to keep your patent protection applications private If you are the inventor of an invention. Public disclosure of an invention prior to its filing often destroy its novelty and render it unpatentable. The filing of disclosures prior to filing, for example, for investors, test-marketing or other business partners must be done following the signing of a confidentiality agreement.

There are many kinds of patents. Knowing them is essential to safeguard your invention. Patents for utility are used to protect inventions and processes that are new. Design patents cover ornamental designs. Patents for utility are the best option and protect the owner against copycats and other competitors. Utility patents are often issued to enhance or alter existing inventions. Patents issued under utility can be used to enhance or alter existing inventions. For instance, a process patent covers acts or methods of doing a specific act, whereas a chemical composition will include a mixture of components.

What is the typical length of a patent? Although utility patents are valid for 20 years from the date of the initial filing, they are able to be extended through delay at the patent office.

Are you considering patenting your ideas? Patents are granted only to applicants who are the first to file, therefore you need to file your patent application quickly. Call PatentPC today to file your patent application submitted!

When drafting a patent application when you are writing a patent application, it is recommended that you conduct a patent search, as the search can provide some insights into other people’s thoughts. You’ll be able to narrow down the scope of your idea. Furthermore, you’ll discover the latest technological advancements in your area of invention. You’ll get a better understanding of what your invention ought to be and will be better prepared to write your patent application.

How to Search for Patents

The first step to obtain the patent you want is to perform an internet search for patents. You can do a google patent search or do a USPTO search. Patent-pending refers to the product protected by the patent application. You can search for the public pair to locate the patent application. Once the patent office approves the patent application, you are able to do a patent number search to locate the issued patent, and your product will now be patented. It is also possible to use the USPTO search engine. Check out the following article for more information. Patent lawyers or a patent attorney can advise you on the process. In the US, patents are issued by the US patent and trademark office or the United States patent and trademark office, which is also responsible for examining trademark applications.

Are you interested in finding other similar patents? Here are the steps you should follow:

1. Brainstorm terms to describe your invention, based on its purpose composition, use, or purpose.

Write down a short detailed description of the invention. Don’t use generic terms such as “device”, “process,” or “system”. Instead, consider synonyms to the terms you selected initially. Next, note important technical terms and keywords.

Use the questions below to help you determine key words or concepts.

  • What is the objective of this invention? Is it a utilitarian device or an ornamental design?
  • Invention is a method to make something or carry out an action? Are you referring to an item?
  • What is the composition of the invention? What is the physical structure of the invention?
  • What is the purpose of this invention?
  • What are the terms and phrases in the field of technology used to describe the nature of an invention? To help you find the appropriate terms, use an online dictionary of technical terms.

2. These terms enable you to search for relevant Cooperative Patent Classifications on the Classification Search Tool. If you are unable to find the right classification to describe your invention through the classification’s class Schemas (class schedules) and then try again. If you do not get results from the Classification Text Search, you might consider substituting your words that describe your invention using synonyms.

3. Go through the CPC Classification Definition for confirmation of the CPC classification you found. The hyperlink to a CPC classification definition is available if the chosen classification title has a blue box that includes “D” to the left. CPC classification definitions can help determine the scope of the classification and therefore you’re certain to choose the one that is pertinent. In addition, these definitions can include search tips and other suggestions that may be useful for further study.

4. The Patents Full-Text Database and the Image Database allow you to retrieve patent documents that include the CPC classification. You can look through and find the relevant patent publications by focusing first on the abstract and the drawings that are representative.

5. Use this selection of the most relevant patent publications to examine each one in depth for any similarities to your own invention. Be sure to read the specification and claims. Refer to the applicant and patent examiner to obtain additional patents.

6. You can find patent applications that have been published that meet the CPC classification you picked in Step 3. It is possible to use the same strategy of searching as Step 4, narrowing your results down to the most relevant patent applications by examining the abstract as well as the drawings on each page. After that, take a close look at the published patent applications with particular attention paid to the claims as well as additional drawings.

7. Find additional US patents by keyword searching in the AppFT and PatFT databases, classification searching of non-U.S. patents per below, and searching non-patent literature disclosures of inventions using internet search engines. For example:

  • Add keywords to your search. Keyword searches may turn up documents that are not well-categorized or have missed classifications during Step 2. For example, US patent examiners often supplement their classification searches with keyword searches. Think about the use of technical engineering terminology rather than everyday words.
  • Search for foreign patents using the CPC classification. Then, re-run the search using international patent office search engines such as Espacenet, the European Patent Office’s worldwide patent publication database of over 130 million patent publications. Other national databases include:
  • Search non-patent literature. Inventions can be made public in many non-patent publications. It is recommended that you search journals, books, websites, technical catalogs, conference proceedings, and other print and electronic publications.

To review your search, you can hire a registered patent attorney to assist. A preliminary search will help one better prepare to talk about their invention and other related inventions with a professional patent attorney. In addition, the attorney will not spend too much time or money on patenting basics.