OpenLLM-France/wikimedia huggingface dataset:
# Caro-Kann Defence:Korchnoi Variation

Viktor Korchnoi has played 5...exf6 many times (including in a world championship match). 5...exf6 is sounder than 5...gxf6!? of the Bronstein-Larsen Variation and offers Black rapid development.

## Theory table

For explanation of theory tables, see theory table and for notation, see algebraic notation. .
1.e4 c6 2.d4 d5 3.Nc3 dxe4 4. Nxe4 Nf6 5. Nxf6+ exf6
* 6
* Bc4
* c3
* Nf3
* g3
* Ne2
* Be2
* Bf4
* Be3
When contributing to this Wikibook, please follow the Conventions for organization.

## References

* This Chess related article is a stub. Please assist Wikibooks by expanding it.
# Caro-Kann Defence

Almost always played, weakening black's pawn structure.

## Theory table

For explanation of theory tables, see theory table and for notation, see algebraic notation. .
1.e4 c6 2.d4 d5 3.Nc3 dxe4 4. Nxe4 Nf6 5. Nxf6+
| | 5 |
| Bronstein-Larsen variation | ... gxf6 |
| Korchnoi variation | ... exf6 |
When contributing to this Wikibook, please follow the Conventions for organization.

## References

* This Chess related article is a stub. Please assist Wikibooks by expanding it.
# Smyslov/Karpov Variation
## 4...Nd7

By developing his Knight rather than the Bishop, Black aims to trade for White's central Knight, without compromising his pawn structure.
At one time named after the first world champion Wilhelm Steinitz, nowadays the variation is more often referred to as the Smyslov Variation after the seventh world champion Vasily Smyslov who played a number of notable games with it, or the Karpov Variation, after the twelfth World Champion Anatoly Karpov, in whose repertoire it appeared quite often. The short-term goal of 4...Nd7 is to ease development by the early exchange of a pair of Knights without compromising the structural integrity of his position. Play is similar to the Classical Variation except that Black has more freedom by delaying the development of his bishop, and is not forced to play it to the g6 square. However, this freedom comes at a cost as White enjoys added freedom in taking up space in the center, and often plays the aggressive 5.Ng5!? where Black's development is brought into question as well as the positional weakness of the f7-square. The famous last game of the Deep Blue-Garry Kasparov rematch where Kasparov committed a known blunder and lost was played in this very line.

## Theory table

For explanation of theory tables, see theory table and for notation, see algebraic notation. .
1.e4 c6 2.d4 d5 3.Nc3 dxe4 4. Nxe4 Nd7
| 5 | 6 |
| Nf3 Ngf6 | Nxf6 Nxf6 | += |
| Bc4 Ngf6 | Ng5 e6 | = |
| Ng5 Ngf6 | Bc4 e6 | = |
| Bd3 Ngf6 | Ng5 e6 | = |
| Ne2 Ngf6 | N2g3 Nxe4 | = |
| c3 Ngf6 | Nxf6 Nxf6 | = |
| Qe2?! Ndf6 | Nf3 Nxe4 | = |
When contributing to this Wikibook, please follow the Conventions for organization.

## References

* Nunn's Chess Openings. 1999. John Nunn (Editor), Graham Burgess, John Emms, Joe Gallagher. ISBN 1-8574-4221-0.
* Modern Chess Openings: MCO-14. 1999. Nick de Firmian, Walter Korn. ISBN 0-8129-3084-3.
* Kasparov, Garry, & Keene, Raymond 1989 Batsford chess openings 2. ISBN 0-8050-3409-9.
# Chess Opening Theory/1. e4/1...c6/2. d4/2...d5/3. Nc3/3...dxe4/4. Nxe4/4...Nd7/5. Qe2
## 5.Qe2?!

This is an unusual looking move, but it creates a subtle mate threat. Black can fall into it very easily in amateur play, and so this move is recommended. Black can get mated in one move if he makes an error.
If black plays correctly, it is easier for him to equalize. Black can get mated on move 5.

## Theory table

| Caro-Kann Defence | Qe2 Ndf6 | Nf3 Nxe4 | = |
| Caro-Kann Defence | Qe2 Ngf6?? | Nd6# | +/- |
| Smyslov Variation | Qe2 e6 | Nf3 Ngf6 | =/= |

## References

Hodgson, Julias. Quick Chess Knockouts. Globe Print Press. p. 103. ISBN 1-85744-045-5.
# Chess Opening Theory/1. e4/1...c6/2. d4/2...d5/3. Nc3/3...dxe4/4. Nxe4/4...Nd7/5. Qe2/5...Ngf6
## 5.Ngf6??

This move looks like simple development, yet black is now doomed to a mate in 1. Can you see it?. This trap has ensnared countless amateurs. Much better is 5...Ndf6.

## Theory table

| Caro-Kann defence | Ngf6?? Ne6# | +/- |

## References

Hodgson, Julias. Quick Chess Knockouts. Globe Print Press. p. 103. ISBN 1-85744-045-5. {{cite book}}: Cite has empty unknown parameter: |1= (help)
# Chess Opening Theory/1. e4/1...c6/2. d4/2...d5/3. Nc3/3...dxe4/4. Nxe4/4...Nd7/5. Ng5/5...h6
## 5...h6?!

This move seems logical, as Nxf7 doesn't work. However, White can get a slight edge with Ne6! and can win quickly if Black makes a blunder. A grandmaster lost to this trap. The e8-h5 diagonal is slightly weakened, and so is f7. The main line is Ne6! Qb6 (Wisely avoiding fxe6?? Qh5+ g6 Qxg6#) Nxf8 Nxf8 with two Bishops and a slight edge.

## Theory table

| h6?! Ne6! | Qb6 Nxf8 | Nxf8 | +/= |

## References

Hodgson, Julias. Quick Chess Knockouts. Globe Print Press. p. 105. ISBN 1-85744-045-5. {{cite book}}: Cite has empty unknown parameter: |1= (help)
* ↑ http://www.chessgames.com/perl/chessgame?gid=1103592
# Building Haycocks/Safe harbour
## Safe Harbour

This wikibook is for general information and no responsibilty is accepted for any injury or loss for use of the information in this WikiBook. Haymaking and associated activities hold inheirent risks and due dilligence is require to minimize the risk to self, other people and property.
# Building Haycocks/Building/Tramping

Tramping refers to the practice of treading on the loose hay being built to enable a reasonable compression on the hay being built. As well as building haycocks the method can also be used in the storing of hay in barns, sheds and on hay carts. The person doing the tramping may also use a fork to help receive the hay, though this may be a safety risk if an inexperiences younger person is doing the tramping which is often the case. If a dedicated tramping is not available a builder may sometimes jump on the haycock while the build is low to stop the haycock growing too fast with a low density of hay. Unless done poorly the tramping should add to the stability of the haycock being built and reduce the risk of instability and toppling.
# Building Haycocks/Glossary
## C

* Cock: Short and commonly-used abbreviation of haycock.

## F

* Fork: Commonly used short form of pitchfork

## H

* Handshaking: A small form of haycock typically half the size of a haycock.
* Hay-making machine: (with back action) Can also be known as a Shaker. Used for scattering the hay to help it dry.
* Haycart: Horse drawn used to transport hay. Usually used where the hay is built directly onto the cart for transport rather than use or an intermediate haycock.

## L

* Lap: A small loose bundle of hay formed by loosening up a bundle of hay in the arms and placing on the ground. Typically a last resort technique used in wet weather.

## P

* Pike: Alterative name for haycock, may sometimes be used for a larger haycock perhaps built outside for longer storage.
* Pitchfork: Wooden pole tool of length usually under 2 metres with two (or sometimes three) curved sharp metal tangs at one end generally useful for many operations on loose hay.

## R

* Rake: The rake used for hay is normally of all wooden construction with up to about twenty wooden pegs
* Roller: A drum of Template:Long or heavier pulled by 1, 2 or 3 horses depending on model for the purpose of flattening land and breaking up clods of turf. Can cause problems if used inappropriately.

## S

* Side delivery: A machine hauled by a strong horse to move and rake hay to one side. Can be used for rowing and raking.
# Building Haycocks/Haymaking

Haymaking is the process of taking the fresh cut grass and turning it into hay fodder ready for building into a haycock. The process of haymaking for a bale is similar but the hay must be drier and more seasoned before attempting to bale it, particularly for square bales. Grass cut for silage by contrast only requires minimal drying before being baled before taken to a pit.
There is an adage make hay while the sun shines. If the sun is shining and hot and the field open and especially with a gentle breeze the grass will turn to hay with relatively little work and trouble. If the weather turns wet and cold and the field is shady and the days less long saving the hay will become much more difficult.
# Building Services

Scope
This book aims to explain the basics of building services, building services being all the things in modern buildings that we take for granted such as lighting, heat and sanitation. It is not an in-depth guide to any specific discipline therefore should be suitable for anybody that is interested in the subject to get a basic understanding without any prior knowledge. The book covers services in both individual domestic buildings and large industrial and commercial buildings. It should also be pointed out at this stage that building services are typically governed by strict building regulations, which vary between countries; these are outside the scope of this book. Finally, this book is for general information only, neither the authors nor WikiBooks will be held responsible for any issues arising from the use of this information.
Introduction
Although we often take them for granted, most of us utilise a range of building services every day. From taking a hot shower in the morning to using the lift at work, without these vital services, buildings would be little more than a cave. This book is for anyone who has been interested in learning more about how these services work. Those studying building services may find this book of use although a proper textbook is probably more suitable as this only covers the basics.
Chapters
Chapters without a hyperlink have not been written yet but are in the pipeline!
Ventilation
Refrigeration and air conditioning
Space heating
Hot water
Cold water
Wastewater and drainage
Electrical services
Vertical Transportation
Voice & data services
Fire protection
Security
# Building Haycocks/Building/Topping

Topping refers to the building of the topmost part of the cock which narrows in at the apex. As the top is neared it is a skilled art to gently layer precisely hay to the top of the haycock. Gentle beating with pitchforks and use of rakes may be used to keep the top even and well combed down. It is possible to use a less well seasoned forkful of hay for the very top if required.
In the event of wind it may be necessary for one person to hold the top down with a pitchfork rake until the haycock can be secured with ropes.
# Building Haycocks/Cutting/Implements

The original tool for cutting hay was a scythe, which is a slow, labour-intensive means of cutting a hay meadow. Horse-drawn machines with finger bar mowers pulled by one or who horses were a great improvement. Tractors also have finger bar mower attachments availabe. The finger bar mower can sometimes jam in heavy meadows, and with tractors it is important to ensure the power to the mover is removed before clearing a jam or their is a risk of injury including loss of fingers. A drum mower, with two rotating drums rotating at speed is has typcially replaced the finger mower. These are generally more efficient and less susceptable to jaming. The cutting implement gear is generally covered by a skirt as stones can be flung out at high speed, there is still risk of this if one is followed on foot.
# Building Haycocks/To do

Feel free to add your suggestions to this list of improvements. If you complete one of the tasks, please place strike through the comment using 

 tags.
This book is at infant, nay perhaps newborn stage, so todo's are at broad level

## Current To-Dos

* Somebody please remove the speedy template or I'm wasting my time and resource I and any other contributor could be putting to better use of in WP and RL will be wasted. Only an idiot would join a book under a speedy.
* Complete a basic page for every subpage in the Haymaking Chapter including Navigation
* Complete a basic page for all the Chapter Level tasks.
* Add a stage thingy for every page in the master TOC
# Authoring Webpages
## Foreword

The World Wide Web (often simply called "the Web") is a means of communication using inter-linked pages of text called "web pages". A coherent group of such pages is called a "website". This short course will attempt to provide a hands-on approach to teach you how to make high-quality web pages. After a short introduction, you will be thrown in at the deep end and start making web pages yourself.

## Table of contents

* Requirements
* Introduction: the World Wide Web
* Creating a simple page
* How to write for the web
* Adapting a webpage for visual browsers
* HTML, XHTML and DOCTYPEs
* Collecting pages in a website
* Promote your website
* Scalable websites (Advanced topic)
* Avoiding pitfalls
* Preventing link rot
* Conclusion
* Answers

## Rationale

Many textbooks approach the creation of webpages and websites as a computing task. Many others approach it as a graphical design challenge. Both approaches are rooted in treating the web as if it were a computational or graphical medium. Rooting the web in a understandable metaphor may be comforting, it is also misleading.
The web is a new medium, that requires a completely new approach to building parts of it. Although students will often pick up some of the right concepts while studying the 'programming' and 'designing' books, it is often better to start with the right concepts, and deal with the computational and graphical aspects of the web later.
What this textbook therefore tries to accomplish, is providing the student with a strong basis for learning more about building webpages. This book will try and do this in a practical, hands-on way. Almost from the get-go, students will start authoring their own webpages.

## For teachers

* Teacher's Guide

## For further reading

* Starting A Website
* Wikiversity: Web_design
* Web Development
* HyperText Markup Language
* Web Design References - A huge mega-reference (nearly 3,000 links) of information and articles about web design and development. It is dedicated to disseminating news and information about web design and development with emphasis on elements of the user experience, accessibility, web standards, CSS, JavaScript and much more.
* Web Design Update - broken link - A a plain text email digest newsletter. It typically goes out once a week. All web designers and developers are invited to join.
* - Books -List includes Accessibility, Color, CSS, Dreamweaver, Information Architecture, Evaluation, JavaScript, Navigation, PHP, Project Management, Typography, Usability, Web Standards, Writing, (X)HTML.
* Webpage design flaws: Mistakes to avoid by Bill Beaty
# Rewrite this paragraph using the inverted pyramid.

Behold the following text: "Long-dead authors that are still remembered, are remembered because of the quality of their work. And no work can be stiled that of a genius, until other works have come along against which it can be compared. It is always the dead that are praised, or so claim those who are unsuccessful while alive. Perhaps this is so, partly because some people only revere that which has passed. However, works that have withstood the test of time, have withstood its scrutiny." (Free after Samuel Johnson's "Preface to Shakespeare".)
# Authoring Webpages/HTML, XHTML and DOCTYPEs

The current version of HTML is HTML5. Since modern browsers have been supporting HTML5 for several years now (as of 2016), you'll probably want to use that one.
Versions of HTML prior to 4.0 are obsolete. Web pages in these versions should be withdrawn or converted to a variant of HTML version 4.01 or HTML5. No new page should be created using a version prior to HTML 4.01. You shouldn't be using any variant of XHTML, since it has largely been abandoned in favor of HTML5.
Internet Explorer version 8.0 and earlier (about 6% of web surfers were using Internet Explorer version 8.0 or lower in December 2014) does not support HTML5.

## Validation

Regardless of the version of HTML you choose to use, it is important that you regularly validate your pages to ensure they conform to your chosen specification. The World Wide Web Consortium (W3C) has an online validator at https://validator.w3.org/. You can either upload or HTML file or copy and paste it into the validator.

### HTML5 Doctype

The Doctype for HTML5 is <!DOCTYPE html>
All HTML5 documents must start with this line. Note that while this looks like a tag, it has special rules. It does not have a closing tag, nor is it self-closing.
Previous: Adapting a webpage for visual browsers - Up: Table of Contents - Next: Collecting pages in a website
# Authoring Foreign Language Textbooks/References
## References

References allow the reader to quickly find a certain rule that he needs to brush up on. References need to be accessible (ordered by alphabet, level and/or type to name a few) and complete. Don't, however, start something you won't finish. Know your limits.
# Authoring Webpages/Authoring websites
## URLs

URLs should be permanent. When you begin to put together a website make sure that the URLs you choose will survive redesigns. A useful article on good URLs is Choose URIs wisely.

## Navigation bars

Navigation bars normally consist of lists of links. Since they are lists they should be marked-up using the ul or ol elements. (XHTML 2.0 may introduce a special navigation list element when it is released.)
Every page on your website should include a link to your home page. The link should be in the same place on every page. In most cases it will be the first link in your primary navigation bar.

### Access keys

Access keys are keyboard shortcuts for links and form elements. Important links that appear on all pages on your website, e.g. the link to the home page, should be given an access key. The access key bindings should be the same on all pages on your website. You should include a web page that lists all the access keys used on your website.

## Search and Site Map

You can't have a link from your home page to every other page on the website. If your website contains more than a few pages you need a site map and possibly a search tool so users can find relevant pages easily.
Previous: HTML, XHTML and DOCTYPEs - Up: Table of Contents - Next: Promote your website
# Compiler Construction/References
## References

* Aho, Alfred & Sethi, Ravi & Ullman, Jeffrey. Compilers: Principles, Techniques, and Tools ISBN 0201100886 The Classic Dragon book.
* Appel, Andrew Modern Compiler Implementation in C/Java/ML (respectively ISBN 0-521-58390-X,ISBN 0-521-58388-8, ISBN 0-521-58274-1 is a set of cleanly written texts on compiler design, studied from various different methodological perspectives.
* Brown, P.J. Writing Interactive Compilers and Interpreters ISBN 047127609X Useful practical advice, not much theory.
* Fischer, Charles & LeBlanc, Richard. Crafting A Compiler ISBN 0805332014 Uses an ADA like pseudo-code.
* Holub, Allen Compiler Design in C ISBN 0131550454 Extensive examples in "C".
* Hunter, R. The Design and Construction of Compilers ISBN 0471280542 Several chapters on theory of syntax analysis, plus discussion of parsing difficulties caused by features of various source languages.
* Pemberton, S. & Daniels, M.C. Pascal Implementation. The P4 Compiler ISBN 0853123586 (Discussion) and ISBN 085312437X (Compiler listing) Complete listing and readable commentary for a Pascal compiler written in Pascal.
* Weinberg, G.M. The Psychology of Computer Programming: Silver Anniversary Edition ISBN 0932633420 Interesting insights and anecdotes.
* Wirth, Niklaus Compiler Construction ISBN 0201403536 From the inventor of Pascal, Modula-2 and Oberon-2, examples in Oberon.
# Compiler Construction/Semantic Analysis
## Semantic Analysis

This is roughly the equivalent of checking that some ordinary text written in a natural language (e.g. English) actually means something (whether or not that is what it was intended to mean).
The purpose of semantic analysis is to check that we have a meaningful sequence of tokens. Note that a sequence can be meaningful without being correct; in most programming languages, the phrase "x + 1" would be considered to be a meaningful arithmetic expression. However, if the programmer really meant to write "x - 1", then it is not correct.

### Name Table

Time to read Aho & Ullman/Dragon book carefully.
Semantic analysis is the activity of a compiler to determine what the types of various values are, how those types interact in expressions, and whether those interactions are semantically reasonable. For instance, you can't reasonably multiply a string by class name, although no editor will stop you from writing
To do this, the compiler must first identify declarations and scopes, and typically records the result of this step in a set of symbol tables. This tells it what specific identifiers means in specific contexts. It must also determine the types of various literal constants; "abc" is a different type than 12.2e-5.
Then it must visit all locations where identifiers and literals are used, and verify that the use of the identifier/literal, and the results computed, are compatible with the language definition (as in the above example).
As to how this is done: typically the source code is parsed, some representation of the program is constructed (syntax trees are very popular), and that representation is walked ("visited") element by element to collect/validate the semantic information. The symbol table is usually just a set of hash tables associated with the syntax tree representing a scope, hashing from identifiers to structures containing type declarations.

### Type Checking

In a statically typed language, immediately following the parsing phase is the type checking phase. This attempts to catch programming errors based on the theory of types. In practice this is checking things like a variable declared as a string is not used in an expression requiring an integer.
In a dynamically typed language no type checking is performed (it is actually deferred until runtime).
# Compiler Construction/Objective-C
## Objective-C
### Objects and fields

In Objective-C, each class is a struct in C. That is,
would be implemented as like:
Thus, since each object in Objective-C, a pointer to a memory block in the heap. And so the way to access fields is the same as the way for members of struct. That is,
The implication of this scheme is that while an object naturally fits to non-OOP C program, one disadvantage is that fields cannot be "shadowed." That is,
This would result in duplicate members error. This contrasts with the situation in Java.
Finally, since the selection of methods occurs at runtime (in contrast to the cases in Java or C++), methods are handled differently than fields.

### Methods

In Objective-C, the selection of methods occurs at runtime. Compilers may issue warnings about likely mistyped names because the compiler can know a set of selector names that are defined in the program. This, however, is not semantically necessary; any message can be sent to any object.
Semantically, the sender of a message checks if a given object responds to the message, and if not, try its super class, and if not again, its super and so on.
A complication may arise, for example, when there are two selectors with the differing return type. Consider the following case.
In this case, because the compiler cannot know to which method--(float) func or (int) func—an object would respond, it cannot generate code that sends a message, as returning a float value usually differs from doing an int value.
# Civ/Sid Meier's Alpha Centauri/Citizens
## Citizens
### Doctor

* Psych: 2

### Empath

* Prerequisite: Centauri Meditation
* Economy: 2
* Psych: 2
Replaces Doctor

### Engineer

* Prerequisite: Fusion Power
* Economy: 3
* Labs: 2
Replaces Technician

### Librarian

* Prerequisite: Planetary Networks
* Labs: 3

### Technician

* Economy: 3

### Thinker

* Prerequisite: Mind/Machine Interface
* Psych: 1
* Labs: 3
Replaces Librarian

### Transcend

* Prerequisite: Secrets of Alpha Centauri
* Economy: 2
* Psych: 2
* Labs: 4
Replaces Empath and Thinker