Topic: Computing (Page 42)
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.
π Continuation-Passing Style
In functional programming, continuation-passing style (CPS) is a style of programming in which control is passed explicitly in the form of a continuation. This is contrasted with direct style, which is the usual style of programming. Gerald Jay Sussman and Guy L. Steele, Jr. coined the phrase in AI Memo 349 (1975), which sets out the first version of the Scheme programming language.John C. Reynolds gives a detailed account of the numerous discoveries of continuations.
A function written in continuation-passing style takes an extra argument: an explicit "continuation"; i.e., a function of one argument. When the CPS function has computed its result value, it "returns" it by calling the continuation function with this value as the argument. That means that when invoking a CPS function, the calling function is required to supply a procedure to be invoked with the subroutine's "return" value. Expressing code in this form makes a number of things explicit which are implicit in direct style. These include: procedure returns, which become apparent as calls to a continuation; intermediate values, which are all given names; order of argument evaluation, which is made explicit; and tail calls, which simply call a procedure with the same continuation, unmodified, that was passed to the caller.
Programs can be automatically transformed from direct style to CPS. Functional and logic compilers often use CPS as an intermediate representation where a compiler for an imperative or procedural programming language would use static single assignment form (SSA). SSA is formally equivalent to a subset of CPS (excluding non-local control flow, which does not occur when CPS is used as intermediate representation). Functional compilers can also use A-normal form (ANF) (but only for languages requiring eager evaluation), rather than with 'thunks' (described in the examples below) in CPS. CPS is used more frequently by compilers than by programmers as a local or global style.
Discussed on
- "Continuation-Passing Style" | 2022-09-02 | 15 Upvotes 1 Comments
π E6B
The E6B flight computer is a form of circular slide rule used in aviation. It is an instance of an analog calculating device still being used in the 21st century.
They are mostly used in flight training, because these flight computers have been replaced with electronic planning tools or software and websites that make these calculations for the pilots. These flight computers are used during flight planning (on the ground before takeoff) to aid in calculating fuel burn, wind correction, time en route, and other items. In the air, the flight computer can be used to calculate ground speed, estimated fuel burn and updated estimated time of arrival. The back is designed for wind vector solutions, i.e., determining how much the wind is affecting one's speed and course. They are frequently referred to by the nickname "whiz wheel".
π Dogecoin
Dogecoin ( DOHJ-koyn, code: DOGE, symbol: Γ) is a cryptocurrency featuring a likeness of the Shiba Inu dog from the "Doge" Internet meme as its logo. Introduced as a "joke currency" on 6 December 2013, Dogecoin quickly developed its own online community and reached a capitalization of US$60 million in January 2014.
Compared with other cryptocurrencies, Dogecoin had a fast initial coin production schedule: 100 billion coins were in circulation by mid-2015, with an additional 5.256 billion coins every year thereafter. As of 30Β JuneΒ 2015, the 100 billionth Dogecoin had been mined. While there are few mainstream commercial applications, the currency has gained traction as an Internet tipping system, in which social media users grant Dogecoin tips to other users for providing interesting or noteworthy content. Dogecoin is referred to as an altcoin.
Discussed on
- "Dogecoin" | 2013-12-14 | 11 Upvotes 4 Comments
π Fifth Generation Computer
The Fifth Generation Computer Systems (FGCS) was an initiative by Japan's Ministry of International Trade and Industry (MITI), begun in 1982, to create computers using massively parallel computing and logic programming. It was to be the result of a massive government/industry research project in Japan during the 1980s. It aimed to create an "epoch-making computer" with supercomputer-like performance and to provide a platform for future developments in artificial intelligence. There was also an unrelated Russian project also named as a fifth-generation computer (see Kronos (computer)).
Prof. Ehud Shapiro, in his "Trip Report" paper (which focused the FGCS project on concurrent logic programming as the software foundation for the project), captured the rationale and motivations driving this huge project:
"As part of Japan's effort to become a leader in the computer industry, the Institute for New Generation Computer Technology has launched a revolutionary ten-year plan for the development of large computer systems which will be applicable to knowledge information processing systems. These Fifth Generation computers will be built around the concepts of logic programming. In order to refute the accusation that Japan exploits knowledge from abroad without contributing any of its own, this project will stimulate original research and will make its results available to the international research community."
The term "fifth generation" was intended to convey the system as being a leap beyond existing machines. In the history of computing hardware, computers using vacuum tubes were called the first generation; transistors and diodes, the second; integrated circuits, the third; and those using microprocessors, the fourth. Whereas previous computer generations had focused on increasing the number of logic elements in a single CPU, the fifth generation, it was widely believed at the time, would instead turn to massive numbers of CPUs for added performance.
The project was to create the computer over a ten-year period, after which it was considered ended and investment in a new "sixth generation" project would begin. Opinions about its outcome are divided: either it was a failure, or it was ahead of its time.
Discussed on
- "Fifth Generation Computer" | 2019-08-06 | 12 Upvotes 3 Comments
π Mbone β Multicast over the Internet
Mbone (short for "multicast backbone") was an experimental backbone and virtual network built on top of the Internet for carrying IP multicast traffic on the Internet. It was developed in the early 1990s and required specialized hardware and software. Since the operators of most Internet routers have disabled IP multicast due to concerns regarding bandwidth tracking and billing, the Mbone was created to connect multicast-capable networks over the existing Internet infrastructure.
Discussed on
- "Mbone β Multicast over the Internet" | 2015-02-21 | 11 Upvotes 4 Comments
π Cheeger constant as a measure of βbottleneckednessβ
In mathematics, the Cheeger constant (also Cheeger number or isoperimetric number) of a graph is a numerical measure of whether or not a graph has a "bottleneck". The Cheeger constant as a measure of "bottleneckedness" is of great interest in many areas: for example, constructing well-connected networks of computers, card shuffling. The graph theoretical notion originated after the Cheeger isoperimetric constant of a compact Riemannian manifold.
The Cheeger constant is named after the mathematician Jeff Cheeger.
π Up to date list of departures & closures at Sun
The acquisition of Sun Microsystems by Oracle Corporation was completed on January 27, 2010. Significantly, Oracle, previously only a software vendor, now owned both hardware and software product lines from Sun (e.g. SPARC Enterprise and Java, respectively).
A major issue of the purchase was that Sun was a major competitor to Oracle, raising many concerns among antitrust regulators, open source advocates, customers, and employees. The EU Commission delayed the acquisition for several months over concerns of Oracle's plans for MySQL, Sun's competitor to the Oracle Database. The commission finally approved the takeover, apparently pressured by the United States to do so, according to a WikiLeaks cable released in September 2011.
Discussed on
- "Up to date list of departures & closures at Sun" | 2010-03-13 | 12 Upvotes 3 Comments
π Cairo β Open-Source 2D Graphics Layer/API with font support and many back-ends
Cairo (stylized as cairo) is an open-source graphics library that provides a vector graphics-based, device-independent API for software developers. It provides primitives for two-dimensional drawing across a number of different back ends. Cairo uses hardware acceleration when available.
Discussed on
- "Cairo β Open-Source 2D Graphics Layer/API with font support and many back-ends" | 2023-07-15 | 10 Upvotes 5 Comments
π QB64
QB64 (originally QB32) is a self-hosting BASIC compiler for Microsoft Windows, Linux and Mac OS X, designed to be compatible with Microsoft QBasic and QuickBASIC. QB64 is a C++ emitter, which is integrated with a C++ compiler to provide compilation via C++ code and GCC optimization.
QB64 implements most QBasic statements, and can run many QBasic programs, including Microsoft's QBasic Gorillas and Nibbles games. Furthermore, QB64 has been designed to contain an IDE resembling the QBASIC IDE. QB64 also extends the QBASIC programming language to include 64-bit data types, as well as better sound and graphics support. It can also emulate some DOS/x86 specific features such as INT 33h mouse access, and multiple timers.
Since version 2.0, QB64 now offers debugging abilities, with the new $DEBUG metacommand.
Discussed on
- "QB64" | 2022-05-17 | 14 Upvotes 1 Comments
π GNU Guix
GNU Guix () is a functional cross-platform package manager and a tool to instantiate and manage Unix-like operating systems, based on the Nix package manager. Configuration and package recipes are written in Guile Scheme. GNU Guix is the default package manager of the GNU Guix System distribution.
Differing from traditional package managers, Guix (like Nix) utilizes a purely functional deployment model where software is installed into unique directories generated through cryptographic hashes. All dependencies for each software are included within each hash. This solves the problem of dependency hell, allows multiple versions of the same software to coexist and makes packages portable and reproducible. Performing scientific computations in a Guix setup has been proposed as a promising response to the replication crisis.
The development of GNU Guix is intertwined with the GNU Guix System, an installable operating system distribution using the Linux-libre kernel and GNU Shepherd init system.