OpenLLM-France/wikimedia huggingface dataset:
# Input/Output
## Input

For example: a computer disk can have a lot of information on it, and the user selects a particular disk for the task in hand. Then the user activates an input procedure to have the computer move a copy of the given required information from the disk, where the original remains, into a part of the computer's memory for further use. The original on the disk can, if desired, be deleted.

## Output

For example: Some work has been done using a computer, and now the result is to be moved from the computer onto a disk, which is one of many possible output devices. Usually the computer's screen, which is also an output device, shows exactly what is being done by the user so as to ensure the information concerned ends up at the correct place, outside of the computer. Often a printer is used, which is another output device.
# Electronics/History/Chapter 5

Space Age Tech

## Fuel Cell

The first fuel cell was developed in the 19th century by British scientist Sir William Grove. A sketch was published in 1843. But fuel cells did not see practical application until the 1960s, where they were used in the U.S. space program to supply electricity and drinking water (hydrogen and oxygen being readily available from the spacecraft tanks). Extremely expensive materials were used and the fuel cells required very pure hydrogen and oxygen. Early fuel cells tended to require inconveniently high operating temperatures that were a problem in many applications.
Further technological advances in the 1980s and 1990s, like the use of Nafion as the electrolyte, and reductions in the quantity of expensive platinum catalyst required, have made the prospect of fuel cells in consumer applications such as automobiles more realistic.
Ballard Power Systems is a major manufacturer of fuel cells and leads the world in automotive fuel cell technology. Ford Motor Company and DaimlerChrysler are major investors in Ballard. As of 2003, the only major automobile companies pursuing internal development of fuel cells for automotive use are General Motors and Toyota; most others are customers of Ballard.
United Technologies (UTX) is a major manufacturer of large, stationary fuel cells used as co-generation power plants in hospitals and large office buildings. The company has also developed bus fleets that are powered by fuel cells.
# Electronics/History/Introduction

< Expanded Edition
Electronics has a long and varied history. It involves some of the most famous people in history.
# Electronics/History/Chapter 6

Computers
# English-Hanzi/South America

South America is the continent in the south of the Americas. Its population is 430 million.
南美洲 是 在 美洲 南部 的 大陆。它的 人口 是 4.3亿。
# English-Hanzi/South China Sea

Special:search/South China Sea prefix:English-Hanzi/
South China Sea is the sea to the south of China.
南海 是 中国 南面 的 海域。
# English-Hanzi/Space

The space is the area outside the atmosphere of the Earth.
太空 是 地球 大气层 之外的 区域。
# English-Hanzi/Spain

Special:search/Spain prefix:English-Hanzi/
Spain is a country in the southwest of Europe. It has a population of 46.5 million. Its capital is Madrid.
Spain 是 欧洲 西南部 的 国家。它的 人口 是 4650万。它的 首都 是 Madrid。
# English-Hanzi/South Korea

Special:search/South Korea prefix:English-Hanzi/
Special:search/Korea prefix:English-Hanzi/
Special:search/East Asia prefix:English-Hanzi/
Special:search/Asia prefix:English-Hanzi/
South Korea is a country in the east of Asia. Its population is 51.5 million. Its capital is Seoul.
韩国 是 一个 在 亚洲 东部 的 国家。它 的 人口 有 5150万。它 的 首都 是 Seoul（首尔）。
# English-Hanzi/South Sudan

South Sudan is a country in the north of Africa. Its population is 12.3 million. Its capital is Juba.
South Sudan是一个在非洲北部的国家。它的人口是1230万。它的首都是Juba。
# English-Hanzi/Southern Ocean

Special:search/Southern Ocean prefix:English-Hanzi/
Southern Ocean is the ocean which surrounds Antarctica.
南大洋是围绕南极洲的海洋。
# English-Hanzi/South Asia

Special:search/South Asia prefix:English-Hanzi/
Special:search/Asia prefix:English-Hanzi/
South Asia is a region in the south of Asia. It includes India, Pakistan, Bangladesh, Sri Lanka, Nepal, Bhutan, and Maldives. Its population is 1.7 billion.
南亚是一个在亚洲南部的地区。它包括India, Pakistan, Bangladesh, Sri Lanka, Nepal, Bhutan, 和 Maldives。它的人口是17亿。
# English-Hanzi/Southern Africa

Southern Africa is the south region of Africa. It includes Angola, Botswana, Lesotho, Malawi, Mozambique, Namibia, South Africa, Swaziland, Zambia, Zimbabwe, and Madagascar.
南部非洲 是 非洲 的 南部 地区。它 包括 Angola, Botswana, Lesotho, Malawi, Mozambique, Namibia, 南非, Swaziland, Zambia, Zimbabwe, 和 Madagascar。
# English-Hanzi/South Pole

Special:search/South Pole prefix:English-Hanzi/
The South Pole is the south endpoint of the axis of the Earth.
南极 是 地球 轴心 的 南面 端点。
# Digital Media & Culture: Collaborative Essay Collection 2018/Determinism
## Collaborative Essays on the Theme of Determinism

Research Question 1: Dowbergton Research Question yet to be decided.
Research Question 2:
Research Question 3:
In What Ways have Celebrity Influencers Contributed to Changes in Social Media Engagement?
Example research Question, please do not edit - just click through and you will see a skeleton template structure you can cut and paste in to your own essay page.
# Digital Media & Culture: Collaborative Essay Collection 2018/Convergence
## Collaborative Essays on the Theme of Convergence

/Research Question 1:/JJ.AMBS Research Question to be decided.
/Research Question 2:/The Snow Ploughs Research Question to be decided.
/Research Question 3:/RandomLabGroup Research Question to be decided.
/Research Question 4:/Digital Dancers Research Question to be decided.
# Find File Professional/Installing Find File Professional
## Installation

After you obtain (see Getting the program) the program and the .NET Framework installers you are ready to go. FIRST you have to install the Framework and THEN Find File Professional.

## Troubleshooting

* If you try to install the program without the framework installed first an error message appears telling you that you do not have .NET Framweork installed. If you try to run the program an error will pop up and the application execution will stop.
* If you install the program first and the framework after that an error may appear. If this is the case you have to restart your computer in order the program to work.
# Find File Professional/Misc Preferences

Here you can control the way auto-complete acts. You can turn it off by unchecking Complete words as you type. The second option allows you to delete a selection from the auto-completed text and search for the rest. For example, if you type 'annual' and the auto-completion brings you 'annual report' the ' report' will be selected so you can delete it or if you have the option for non selected text the program will delete ' report' and search only for 'annual' upon Enter pressed. But if you don't have this option turned on then the search pattern will be auto-completed to 'annual report'.
The option: Activate main window on... is useful when you are using the Special selection windows. When you move the mouse outside them to the main window (and have the option on) it will activate it without the need of a click.
# Find File Professional/Tutorial Syntax
## Keyboard
### Special/Function

   | ALT | the Alt key on the keyboard |
   | CTRL | the Ctrl (Control) key on the keyboard |
   | F1 through F12 | the F1 through F12 keys on the keyboard |
   | SHIFT | the Shift key on the keyboard |
   | SPACE | the Spacebar on the keyboard |
   | TAB | the Tab key on the keyboard |
   | ENTER | the Enter key on the keyboard |
   | ESC | the Escape key on the keyboard |

### Alpha-numeric

   | AKEY through ZKEY | the corresponding letter on the keyboard |
   | 0KEY through 9KEY | the corresponding number on the keyboard (above the letters) on the keyboard—not on the numberpad |

### Numeric pad

   | NUM0 through NUM9 | the corresponding number on the numberpad—not on the keyboard above the letters ('Num Lock' usually needs to be enabled) |
   | NUM+ and NUM− | the corresponding key on the numberpad |
Note for Windows 2000/XP users: do not press right Shift five times in a row as it turns on the Windows Sticky Keys. Doing so will mess up the ability for your keyboard to recognize commands. If the box for sticky keys appears, press cancel. If you don't need the accessibility features, you can disable sticky keys: go to Start → Settings → Control Panel; select Accessibility Options, and for each of the options, StickyKeys, FilterKeys, and ToggleKeys, (1) clear the "Use …" checkbox, and (2) press the "Settings…" button and clear the "Use Shortcut" checkbox.

## 2-button or 3-button Mouse

   | LMB | the left mouse button |
   | RMB | the right mouse button |
   | MMB | the middle mouse button or mouse wheel |
   | SCROLL | refers to scrolling the wheel of the mouse |
# Finite Model Theory

Finite Model Theory (FMT) is a subarea of Model Theory (MT). MT is the branch of mathematical logic which deals with the relation between a formal language (syntax) and its interpretations (semantics). FMT is a restriction of MT to finite structures, such as finite graphs or strings. Since many central theorems of MT do not hold when restricted to finite structures, FMT is quite different from MT in methods and application areas. FMT has become an "unusually effective" instrument in computer science, for example in database theory, model checking or for gaining new perspectives on computational complexity.
The three main areas of FMT are presented here: Expressive Power of Languages, Descriptive Complexity, and Random Structures. But first the results fundamental for all areas are introduced on the level of first order languages.

## Basics

Why? (Motivation)
What is it? (Definition and Background)
Why is it special? (... compared to 'common' Model Theory)
What is it about? (Typical Logics and Structures studied)
What is required? (Preliminaries)
What to start with? (Basic Concepts)

## Ehrenfeucht-Fraisse-Games for FO

The Problem (Expressibility of Properties)
The Idea I (Fraisse's Theorem)
The Idea II (Ehrenfeucht's Games)
The Tool (Ehrenfeucht-Fraisse-Method)
Some Utilities (Localities)
Some Solutions (for some Structures)
Complexity?

## Expressive Power of Languages

Typical problem: Given a finite graph, can the property of being an acyclic be expressed in a first order language?
# Find File Professional/Open With dialog for multiple files

Instead of this command I recommend using drag & drop functionality. The command is available when you select several files in the list with results and then right click them and choose Open With ...
Here you specify the program you want the files to be opened with and additional arguments in the textbox labeled Arguments: The '&files' will later be replaced by the sequence of the files that have been selected (ex. &files = " "document1.doc" "document2.doc"").
Found bugs:
# Find File Professional/Open With dialog for single file

If you have checked the 'Open ...' check box the program that is selected in the list above will be launched with the file that is enclosed like that: 'chess.bmp'. If you supply any other arguments they will be added too but do not delete "%1".
# Find File Professional/NamingPages

You should name the page according to the structure of the book. Pages under the Manual section explain the features of the program while the entries under Tutorial give specific examples and visual documentation (pictures, clips, etc.) on how we achieve something.An example on naming a page for a Special Selection window might be:
* In the manual section: The Select by Name dialog
* In the tutorials: Using Special Selections
# Find File Professional/Search Advanced Preferences

The thread number controls the maximum number of threads that may be used in a search. The automatic option sets this number internally depending on the size of the used HD space or the available processors (when you have Intel Core 2 Duo or AMD X2 CPU). When it is checked the slider on the right is grayed and no longer available.
The Fast start option is trying to optimize the program for better user experience during the first search. Try to turn it off and compare performance. If it is better you can leave it unchecked.
Index Searches option can vastly improve performance for frequently searched patterns. Maximum number of searches to index is 500.
# Erlang Programming/Distribution
## Distributed Processing

Theoretically, in Erlang, writing a parallel program for many computers is not much different from writing a program for a single computer. Each process on each processor has a unique id/name. Processes can be easily spawned. Messages can be easily sent and received. Each home directory on each computer will have a special Erlang cookie password file that allows access to Erlang processes on that machine.
The major problems people have writing distributed programs in Erlang are general network reachability issues related to firewalls and routers. you can make communication between two or more distributed node over network. if you want to communicate with node B from node A. then you can send message to node B as it is local process. you must specify node name to communicate such as:{pid,Nodename}!'hello node A'. where pid is process identifier of process on node B. to more generalization you should register name of the process. for example:register(pro,self). now you can use pro in place of self.
# Erlang Programming/Documentation
## Documentation

Comments
The preferred comment style in erlang is to use:
# Erlang Programming/Function Objects
## Function Objects

Function objects can be named or unnamed, or stored in a variable. Function objects can be like lambda expressions. Lambda expression in Erlang are created with the keyword "fun". Lambda expressions are unnamed functions that can be stored in variables. Please consider the following:
Sample Erlang command line code:
Generic behaviors often use function objects to become specialized. A generic server can be dynamically given a function object to allow it to become a particular type of server or service provider.
# Erlang Programming/Erlang Resources

* Open Source Erlang - Official site
* Documentation - Comprehensive documentation and user's guide for Erlang/OTP R11B
* Erldocs - Erlang documentation alternative with filter/search function and better interface
* trap_exit - Forum and wiki about Erlang
* Jungerl - Collection of free Erlang software

## Large Projects Built with Erlang

* CouchDB - Document oriented database
* ejabberd - A large volume Jabber/XMPP IM server.
* Wings 3D - A 3D modeller (Wikibook manual: Wings 3D)
* wxErlang - A GUI API
* Yaws - A web server (Wikibook manual: Yaws)
* Disco - An implementation of the Map-Reduce framework
* Zotonic - The Erlang Web Framewoork & CMS

## Erlang related projects

* Erlide - An erlang IDE plugging for Eclipse
# Erlang Programming/Errors
## Errors

We can deal with errors with throw and catch. In this example the value of an argument causes an error which causes an exception to be thrown. The function g is happy only when the argument is greater than 12. If the argument is less than 13 then an exception is thrown. We try to call g in start. If we run into trouble then the exception is caught in the "case catch" structure inside of start.
Sample program listing:
# Erlang Programming/Example1

Objects with Erlang
Erlang is a functional programming language and a concurrency oriented programming languages (Armstrong, dissertation, 2005), but Erlang does not have explicit built-in object oriented language features. An object oriented programming style can be achieved by alternative means easily. It is particularly easy to do object oriented programming if we restrict ourselves to single inheritance. One can use processes to represent classes and messages to represent methods. To do so, each object when created can create a chain of processes that represent their ancestors in the inheritance chain. The methods(messages) can be passed up the chain until they reach a process that has a matching method. If the message reaches the top of the chain(the Object class or above that dev_nul) then we can generate an exception for a "bad method name". Each class(process) will maintain its own attributes(variables) in its own recursive argument call list. These attributes can be accessed and updated with messages such as get and set. Attributes are stored in a dictionary called a Bundle, in each class process.
Included is some example code that creates OOP using the described technique. In the program, we create an instance of the class integer. Its parent float, knows how to take the square root of reals. Its parent complex, knows how to take the square root of negative numbers. Its parent matrix, knows how to take the square root of a diagonal matrix.
Logically, the traditional class relationship is held in the class diagram. An integer is a Real. A Real(float) is a (subset of) complex. An a complex number is a (subset of) complex matrices, if we think of a (1 by 1) matrix as a single number.
A message(method) is sent to an instance of an object. If a process does not know how to do something, it passes a message(method) to its parent(process in this situation). If we tried to do something like take the sqrt(non-diag-matrix) it would be passed up to dev_nul and generate an error.
The start function creates an instance of the integer class. Then it asks the instance to calculate the square_root of 4 numbers: 4, 0.04, -4 and the matrix [[4,0],[0,9]]. The answers are: 2, 0.2, {2, i} and [[2,0],[0,3]].
# Erlang Programming/Debugging and Tracing
## Tools

* Debugging
** dbg
** debugger
* Tracing
** ttb
** invision
** et
* Coverage
** Cover

### Coverage

Coverage shows what functions are covered by a test. Sample program: test_rotate.erl
Sample output:
Contents of cover.html shows that each clause was run once except for left_rotate(). Each time the program is tested, the run count for each visited clause is increased by one. Cover sample output file:
# Erlang Programming/Design Principles
## Design Principles
### Send Messages, do not share memory

Messages are sent between processes. The compiler is very picky about what operations are "parallel-safe" and is not shy about letting you know. The compiler is particularly picky (parallel-safe) about sending and receiving messages. If you recurse after each message is processed then your code is more parallel-safe. Messages are delivered in order and are selected for removal from the queue by pattern matching (as in Prolog). Because of the extensive built-in pattern matching, Erlang operates in a declarative way. Because of the parallel-picky compiler, it is often as easy to write a parallel program in Erlang as it is to write a serial program in other languages, once you get the hang of the language.

### Fail Early and Often

Erlang designers often use an unusual but effective design technique called "fail early and often", FEO. Let processes fail. If unexpected inputs arrive, then let the process crash, and restart it. This allows for terse code that is robust. We do not waste time coding for bad inputs. We code to expected inputs(the specification only). Theoretically, this technique should make for improved security because unexpected inputs cause processes to self destruct and errors and bad behaviour do not propagate.

### Debugging

Once a process has crashed we can gather crash information and let the programmer fix problems early. If a process is written to specification, and it crashes then the only possible problem is that it received bad input.
# Erlang Programming/Expressions

← Pattern Matching | Functions →

## Expressions

Erlang statements look a little like sentences. One statement is a series of comma separated expressions ending with a period. Erlang expressions can either be ignored, stored, or returned depending on their position and structure in a statement.
In this Erlang example the expression: 4+3 is computed, the expression H=6-2 is computed, and the reverse of the list [3,4,5] is computed and returned. The results of 4+3 are ignored and the pattern 4 is matched to the variable H. For ever after H will have the unchangeable value 4. "lists" is the name of a standard module (library) that provides list utility functions. The result shown from the above expression is the value of the last statement so the repl will only show [5, 4, 3] as indicated above.
Problems:
1) Write an expression that matches the pattern H2 to the reverse of the list [{1,2},{2,1}].
2) Write an expression that matches the pattern H3 to the length of the list [{1,2},{2,1}].
3) Write an expression that matches the pattern H4 to the length of the flattened version of the list [{1,2},{2,1}].
# Erlang Programming/Functions

← Expressions | guards →

## Erlang Functions

To see a function in erlang we can create the file: even_prime.erl with the following code.
The function clauses are put in the order that they are checked. First is_even_prime(2) is checked for a match. If the argument matches then true is returned. This clause ends in a semicolon because the function is not finished being defined. If is_even_prime(2) fails to match then is_even_prime(N) is tried. is_even_prime(N) is checked for a match. N is a variable that matches any integer. The statement when is_integer is a guard that admits only integer types to N. The semicolon says we have more to go. The period at the end tells us that the function is finished being defined. is_even_prime(Any) matches anything of any type and returns the value 'I prefer integer inputs'. The function is now finished. This function is a total function and should cover all possible single argument inputs.
outputs: