Topic: Computing (Page 10)

You are looking at all articles with the topic "Computing". We found 481 matches.

Hint: To view all topics, click here. Too see the most popular topics, click here instead.

πŸ”— AGPL License

πŸ”— Computing πŸ”— Computing/Software πŸ”— Computing/Free and open-source software

The Affero General Public License (Affero GPL and informally Affero License) is a free software license. The first version of the Affero General Public License (AGPLv1), was published by Affero, Inc. in March 2002, and based on the GNU General Public License, version 2 (GPLv2). The second version (AGPLv2) was published in November 2007, as a transitional license to allow an upgrade path from AGPLv1 to the GNU Affero General Public License (a variant of the original Affero GPL license that is compatible with GPLv3).

Both versions of the Affero GPL were designed to close a perceived application service provider (ASP) loophole in the ordinary GPL, where, by using but not distributing the software, the copyleft provisions are not triggered. Each version differs from the version of the GNU GPL on which it is based in having an added provision addressing use of software over a computer network. This provision requires that the full source code be made available to any network user of the AGPL-licensed work, typically a web application.

Discussed on

πŸ”— Karatsuba Algorithm

πŸ”— Computing πŸ”— Mathematics πŸ”— Computing/Software πŸ”— Computing/Computer science

The Karatsuba algorithm is a fast multiplication algorithm. It was discovered by Anatoly Karatsuba in 1960 and published in 1962. It reduces the multiplication of two n-digit numbers to at most n log 2 ⁑ 3 β‰ˆ n 1.58 {\displaystyle n^{\log _{2}3}\approx n^{1.58}} single-digit multiplications in general (and exactly n log 2 ⁑ 3 {\displaystyle n^{\log _{2}3}} when n is a power of 2). It is therefore faster than the classical algorithm, which requires n 2 {\displaystyle n^{2}} single-digit products. For example, the Karatsuba algorithm requires 310 = 59,049 single-digit multiplications to multiply two 1024-digit numbers (n = 1024 = 210), whereas the classical algorithm requires (210)2 = 1,048,576 (a speedup of 17.75 times).

The Karatsuba algorithm was the first multiplication algorithm asymptotically faster than the quadratic "grade school" algorithm. The Toom–Cook algorithm (1963) is a faster generalization of Karatsuba's method, and the SchΓΆnhage–Strassen algorithm (1971) is even faster, for sufficiently large n.

Discussed on

πŸ”— Max/MSP: A visual programming language for music and multimedia

πŸ”— Computing πŸ”— Computing/Software

Max, also known as Max/MSP/Jitter, is a visual programming language for music and multimedia developed and maintained by San Francisco-based software company Cycling '74. Over its more than thirty-year history, it has been used by composers, performers, software designers, researchers, and artists to create recordings, performances, and installations.

The Max program is modular, with most routines existing as shared libraries. An application programming interface (API) allows third-party development of new routines (named external objects). Thus, Max has a large user base of programmers unaffiliated with Cycling '74 who enhance the software with commercial and non-commercial extensions to the program. Because of this extensible design, which simultaneously represents both the program's structure and its graphical user interface (GUI), Max has been described as the lingua franca for developing interactive music performance software.

Discussed on

πŸ”— Lambda Cube

πŸ”— Computing πŸ”— Mathematics

In mathematical logic and type theory, the Ξ»-cube is a framework introduced by Henk Barendregt to investigate the different dimensions in which the calculus of constructions is a generalization of the simply typed Ξ»-calculus. Each dimension of the cube corresponds to a new kind of dependency between terms and types. Here, "dependency" refers to the capacity of a term or type to bind a term or type. The respective dimensions of the Ξ»-cube correspond to:

  • y-axis ( ↑ {\displaystyle \uparrow } ): terms that can bind types, corresponding to polymorphism.
  • x-axis ( β†’ {\displaystyle \rightarrow } ): types that can bind terms, corresponding to dependent types.
  • z-axis ( β†— {\displaystyle \nearrow } ): types that can bind types, corresponding to (binding) type operators.

The different ways to combine these three dimension yield the 8 vertices of the cube, each corresponding to a different kind of typed system. The Ξ»-cube can be generalized into the concept of a pure type system.

Discussed on

πŸ”— BonziBuddy

πŸ”— Internet πŸ”— Computing πŸ”— Marketing & Advertising πŸ”— Computing/Software πŸ”— Computing/Computer Security

BonziBuddy, stylized as BonziBUDDY, (pronounced BON-zee-bud-ee) was a freeware desktop virtual assistant made by Joe and Jay Bonzi. Upon a user's choice, it would share jokes and facts, manage downloading using its download manager, sing songs, and talk, among other functions.

The software used Microsoft Agent technology similar to Office Assistant, and originally sported Peedy, a green parrot and one of the characters available with Microsoft Agent. Later versions of BonziBuddy in May 2000 featured its own character: Bonzi, the purple gorilla. The program also used a text to speech voice to interact with the user. The voice was called Sydney and taken from an old Lernout & Hauspie Microsoft Speech API 4.0 package. It is often referred to in some software as Adult Male #2.

Some versions of the software were described as spyware and adware. BonziBuddy was discontinued in 2004 after the company behind it faced lawsuits regarding the software and was ordered to pay fines. Bonzi's website remained open after the discontinuation of BonziBuddy and was said to be a virus, but was shut down at the end of 2008.

Discussed on

πŸ”— Seam Carving

πŸ”— Computing

Seam carving (or liquid rescaling) is an algorithm for content-aware image resizing, developed by Shai Avidan, of Mitsubishi Electric Research Laboratories (MERL), and Ariel Shamir, of the Interdisciplinary Center and MERL. It functions by establishing a number of seams (paths of least importance) in an image and automatically removes seams to reduce image size or inserts seams to extend it. Seam carving also allows manually defining areas in which pixels may not be modified, and features the ability to remove whole objects from photographs.

The purpose of the algorithm is image retargeting, which is the problem of displaying images without distortion on media of various sizes (cell phones, projection screens) using document standards, like HTML, that already support dynamic changes in page layout and text but not images.

Image Retargeting was invented by Vidya Setlur, Saeko Takage, Ramesh Raskar, Michael Gleicher and Bruce Gooch in 2005. The work by Setlur et al. won the 10-year impact award in 2015.

Discussed on

πŸ”— Homomorphic encryption

πŸ”— Computing πŸ”— Mathematics πŸ”— Computing/Software πŸ”— Cryptography πŸ”— Cryptography/Computer science πŸ”— Computing/Computer Security

Homomorphic encryption is a form of encryption that allows computation on ciphertexts, generating an encrypted result which, when decrypted, matches the result of the operations as if they had been performed on the plaintext.

Homomorphic encryption can be used for privacy-preserving outsourced storage and computation. This allows data to be encrypted and out-sourced to commercial cloud environments for processing, all while encrypted. In highly regulated industries, such as health care, homomorphic encryption can be used to enable new services by removing privacy barriers inhibiting data sharing. For example, predictive analytics in health care can be hard to apply due to medical data privacy concerns, but if the predictive analytics service provider can operate on encrypted data instead, these privacy concerns are diminished.

Discussed on

πŸ”— Fallacies of Distributed Computing

πŸ”— Computing πŸ”— Computing/Software πŸ”— Computing/Networking

The fallacies of distributed computing are a set of assertions made by L Peter Deutsch and others at Sun Microsystems describing false assumptions that programmers new to distributed applications invariably make.

Discussed on

πŸ”— Jazelle DBX: Allow ARM processors to execute Java bytecode in hardware

πŸ”— Computing πŸ”— Computing/Computer hardware πŸ”— Computing/Software πŸ”— Java

Jazelle DBX (direct bytecode execution) is an extension that allows some ARM processors to execute Java bytecode in hardware as a third execution state alongside the existing ARM and Thumb modes. Jazelle functionality was specified in the ARMv5TEJ architecture and the first processor with Jazelle technology was the ARM926EJ-S. Jazelle is denoted by a "J" appended to the CPU name, except for post-v5 cores where it is required (albeit only in trivial form) for architecture conformance.

Jazelle RCT (Runtime Compilation Target) is a different technology based on ThumbEE mode; it supports ahead-of-time (AOT) and just-in-time (JIT) compilation with Java and other execution environments.

The most prominent use of Jazelle DBX is by manufacturers of mobile phones to increase the execution speed of Java ME games and applications. A Jazelle-aware Java virtual machine (JVM) will attempt to run Java bytecode in hardware, while returning to the software for more complicated, or lesser-used bytecode operations. ARM claims that approximately 95% of bytecode in typical program usage ends up being directly processed in the hardware.

The published specifications are very incomplete, being only sufficient for writing operating system code that can support a JVM that uses Jazelle. The declared intent is that only the JVM software needs to (or is allowed to) depend on the hardware interface details. This tight binding facilitates the hardware and JVM evolving together without affecting other software. In effect, this gives ARM Holdings considerable control over which JVMs are able to exploit Jazelle. It also prevents open source JVMs from using Jazelle. These issues do not apply to the ARMv7 ThumbEE environment, the nominal successor to Jazelle DBX.

Discussed on