OpenLLM-France/wikimedia huggingface dataset:
# Bards Old Time Fiddle Tunebook Supplement/BOTFT Manual of Style

n this field, in accordance with the Ethnography of Fiddle Local Manual of Style, videographers, amateur or professional, are considered to be documentarians and thus secondary sources just as Allan Lomax or other professionally trained ethnomusicologists. Of course, their commentary may merge into authentic primary source to the extent they lack what has been called distanciation by literary critics or would be called professional distance by anthropologists or other trained professional observers. Thus, use of these sources might be controversial in projects such as our sister project Wikipedia, but Wikiversity, with which WikiBooks is closely affiliated, explicitly rejects the Wikipedia emphasis on secondary sources and thus the debate is moot. Please note that although this content is open source, it might be subject to controversy or deletion if transferred to Wikipedia.
"In practice, however, Wikibooks takes a permissive stance by allowing specific types of contributions that, strictly speaking, could be considered original research. This practice allows for the fact that Wikibooks might be the first place that certain knowledge is put into print. Moreover, authors may add content based on repeatable information from their personal experiences or from common knowledge they have "off the top of their heads." When adding unsourced information to Wikibooks, though, remember to avoid content that isn't well supported in subject literature, or that other contributors might reasonably disagree with unless you are prepared to defend."
This is not Wikipedia. Although we adhere to neutral point of view, a slavish adherence is not appropriate. This WikiBook follows professional standards of the field of ethnography and ethnomusicology which is consistent with Wikiversity's standard. WikiBooks strive for textbook quality and thus embrace academic standards; this means that "neutrality" as practiced here rejects points of view such as pseudoscience or Eurocentric chauvinism which suggests that the monoculture of Western Civilization as taught in the 1950's is superior and the only culture of interest. That is taken for granted in the field of Ethnomusicology and Ethnography except perhaps for fringe elements who are by definition not "neutral" even if, perhaps, in some ways they might be "more correct". This book is NPOV within the scope of ethnographic studies, and parties who do not concur might wish to develop a new book expressing dissent from mainstream ethnic studies, which would probably be acceptable within WikiBooks but would not be acceptable for this book, which is not intended as a radical critique of mainstream ethnomusicological standards.
# Bards Old Time Fiddle Tunebook Supplement/Cripple Creek

Cripple Creek is an Old Time Appalachian folk song for the fiddle, though it is often played on the banjo as well.. No one knows when it was composed, but there are theories about just where Cripple Creek is. Some say it is Cripple Creek, Virginia, while others say it is based on Cripple Creek, Colorado during the gold rush. It was frequently recorded by early country musicians in the 1920s.

## Lyrics

The following are lyrics from a 1909 version.
* A. "(From East Tennessee; mountain whites; from memory; 1909)"
    Goin' to Cripple Creek, goin' ter Rome (roam),
    Goin' ter Cripple Creek, goin' back home.
    See them women layin' in the shade,
    Waitin' fer the money them men have made.
    Roll my breeches ter my knees
    En wade ol' Cripple Creek when I please.
"A well-known mining district in Virginia." Probably Rome, Tennessee; there is also a Rome in Georgia.
* B. "(From South Carolina; country whites, MS. of Mr. Bryan; 1909)"
    Goin' to Cripple Creek, going in a run;
    Goin' to Cripple Creek to have my fun.
When Cecil Sharp collected folksongs in the Appalachian Mountains in 1917 he found one version of Cripple Creek:
* "Gone to Cripple Creek" sung by Mrs. Wilson Pineville, Kentucky, Aug 27, 1917.
    Gone to Cripple Creek, gone in a run,
    Gone to Cripple Creek to have some fun.
    Gone to Cripple Creek, gone in a run,
    Gone to Cripple Creek to have some fun.
       "Gone" is probably a mishearing of- goin'.

## References

* 1 2 Cripple Creek Song History
# C Programming/stdio.h/getc

getc is one of the character input functions. getc reads the next character from a file, it takes a file pointer to the file. It is the simplest function to read a file.
Like getchar, getc may be implemented macro instead of function. getc is equivalent to fgetc. getc returns the next character from the stream referred to by fp; it returns EOF for End Of File or error.

## Syntax

Here, parameter stream is the pointer to a FILE object which identify the stream on which the operation is to be performed.

## Example

/*getc example*/
Above program read the file called myfile.txt character by character and uses n variable to count '#' character contained in file.

## Return Value

Character read is returned as an int value.
If the End-of-File is reached or error in reading occurs, function returns EOF and corresponding error indicator. We can use either ferror or feof to determine whether an error happened or EOF reached.

## Reference

* c++ reference for getc function
* getc linux manual page

## External Links

* getc function in c
# C Programming/stdio.h/fseek

fseek is a C function belonging to the ANSI C standard library, and included in the file stdio.h. Its purpose is to change the file position indicator for the specified stream. Because fseek uses 32 bit values on many platforms it has a limitation of maximum 2 gigabyte seeks. fseeko64 would be used for larger offsets.

## Function prototype

    int fseek(FILE *stream_pointer, long offset, int origin);
The fseek function moves the file pointer associated with the stream to a new location that is offset bytes from origin
Argument meaning:
* stream_pointer is a pointer to the stream FILE structure of which the position indicator should be changed;
* offset is a long integer which specifies the number of bytes from origin where the position indicator should be placed;
* origin is an integer which specifies the origin position. It can be:
** SEEK_SET: origin is the start of the stream
** SEEK_CUR: origin is the current position
** SEEK_END: origin is the end of the stream

## Return value

The return value is an integer which mean:
* 0 (zero) : function performed successfully in the stream
* nonzero : an error occurred
* On devices incapable of seeking, the return value is undefined.
Note that each error number has a distinct meaning. The meaning can be revealed by checking errno.h.

### Example

This program code opens a file called file.bin in read-only mode. The length of the file is determined by seeking to the end and then reading back the position of the file pointer.

## External links

* C++ reference for std::fseek
# C Programming/stdio.h/ftell

The function ftell returns the current offset in a stream in relation to the first byte. It returns the current file position for stream, or -1 if an error occurs.
# C Programming/stdio.h/getchar

getchar is a function in C programming language that reads a single character from the standard input stream stdin, regardless of what it is, and returns it to the program. It is specified in ANSI-C and is the most basic input function in C. It is included in the stdio.h header file.
The getchar function prototype is
    int getchar(void);

## Sample usage

The following program uses getchar to read characters into an array and print them out using the putchar function after an end-of-file character is found.
The program specifies the reading length's maximum value at 1000 characters. It will stop reading either after reading 1000 characters or after reading in an end-of-file indicator, whichever comes first.

## Common mistake

A common mistake when using getchar is to assign the result to a variable of type char before comparing it to EOF.
The following example shows this mistake:
Consider a system in which chars are 8 bits wide, representing 256 different values. getchar may return any of the 256 possible characters, and it also may return EOF to indicate end-of-file, for a total of 257 different possible return values.
When getchar's result is assigned to a char, which can represent only 256 different values, there is necessarily some loss of information - when packing 257 items into 256 slots, there must be a collision. The EOF value, when converted to char, becomes indistinguishable from whichever one of the 256 characters shares its numerical value. If that character is found in the file, the above example will mistake it for an end-of-file indicator.
If the char type is unsigned, then the opposite effect occurs. Because EOF is negative, it can never be equal to any unsigned char, so the above example will not terminate at end-of-file. It will loop forever, repeatedly printing the character which results from converting EOF to a char.
On systems where int and char are the same size, even the "good" example in the previous section will suffer from the indistinguishability of EOF and some character's value. The proper way to handle this situation is to check feof and ferror after getchar returns EOF. If feof indicates that end-of-file has not been reached, and ferror indicates that no errors have occurred, then the EOF returned by getchar can be assumed to represent an actual character. These extra checks are rarely done, because most programmers assume that their code will never need to run on one of these "big char" systems.

## References

* ↑ http://www.phim.unibe.ch/comp_doc/c_manual/C/FUNCTIONS/getchar.html
* ↑ http://c-faq.com/stdio/getcharc.html
* getchar on Cplusplus.com, accessed in February 2006
# C Programming/stdio.h/fputs

fputs is a function in C programming language that writes an array of characters to a given file stream. fputs stands for file put string. It is included in the C standard library header file stdio.h.
The function fputs terminates after reaching terminating null character ('\0'). The null character is not copied to the stream. The prototype of the function is as follows:
The stream argument specifies the stream to which the string will be written. stdout is commonly used here, for writing to the standard output. Otherwise, a FILE * value returned by the fopen function is used.

## Sample usage

The following example is 'hello world' program using fputs:
The following is a program that asks the user for his name and then writes it out:

## External links

* C++ reference for std::fputs
# C Programming/stdio.h/fread

fread is a function that reads buffered binary input from a file. It is included from the stdio.h header file in the standard C library.
    size_t fread (void * restrict ptr, size_t size, size_t nmemb, FILE * restrict stream)
The fread function copies nmemb items of data of size size from the named input stream into an array pointed to by ptr. An item of data is a sequence of bytes (not necessarily terminated by a null byte) of length size. fread stops appending bytes when nmemb items have been read, end of file has been reached, or an error has occurred. Upon returning, fread sets the file pointer in the stream pointing to the byte past the last byte that has been read. The contents of stream remain unchanged. The fread function returns the number of items actually read. If nmemb is zero, no action is taken and the function will return 0.

## References

* ↑ ISO/IEC 9899:1999 specification (PDF). p. 301, § 7.19.8.1.

## External links

* C++ reference for std::fread
# C Programming/stdio.h/fsetpos

fsetpos positions stream at the position recorded by fgetpos in *ptr.fsetpos returns non-zero on error.It is one of the file positioning function.

## Prototype

int fsetpos(file *stream, const fpos_t *ptr)

## Reference

The C programing language(Second edition)
# C Programming/stdio.h/fwprintf

fwprintf is a C standard library function as defined in wchar.h. The required headers are whar.h and stdio.h. It is the wide character version of fprintf. It's function signature is
In signature of the fwprintf, fp is a stream to which you want to send output. format is wide character stream that specifies the format of output.The formatting string takes care of additional arguments you need to provide.

## Usage

fwprintf puts output on the named output stream. fwprintf performs wide character output to stream and this stream is not byte oriented The fwprintf is the function which converts all the arguments specified in the argument list in accordance with wide character format specifier in format.The fwprintf function writes output to the stream ,under control of the wide string pointed to by format.

## Format

fwprintf function can convert, print and format its arguments in the parenthesis which converts the format wide characters string. Here the format consists of either numbered argument specifications such as "%n$"and "*m$" or unnumbered arguments conversion specifiers such as % and *.But both cannot be.

## Return

fwprintf returns the number of wide characters used excluding the NULL character. If an error occurs ,it returns a negative number.
# C Programming/stdio.h/fwrite

The fread and fwrite functions respectively provide the file operations of input and output. fread and fwrite are declared in <stdio.h>. It usually wraps write.

## Writing a file using fwrite

fwrite is defined as
    int fwrite ( const void * array, size_t size, size_t count, FILE * stream );
fwrite function writes a block of data to the stream. It will write an array of count elements to the current position in the stream. For each element, it will write size bytes. The position indicator of the stream will be advanced by the number of bytes written successfully.
The function will return the number of elements written successfully. The return value will be equal to count if the write completes successfully. In case of a write error, the return value will be less than count.

## Example

The following program opens a file named sample.txt, writes an array of characters to the file, and closes it.
# Annotations to James Joyce's Ulysses/Wandering Rocks/238
## Annotations

mélange (French) coffee served with whipped cream. Gifford incorrectly identifies this as a mixture of fruits in whipped cream. 239.26, however, settles the matter.

## References

* ↑ Oxford English Dictionary.
* ↑ Gifford (1988) 280.
# Annotations to James Joyce's Ulysses/Wandering Rocks/237
## Annotations

locum tenens (Latin) A locum tenens is a deputy or substitute who temporarily stands in for another person; the term is usually applied to a professional, especially a doctor or clergyman. The term is Latin for one holding a place or one holding a post.

## References

* ↑ Gifford (1988) 280.
# Annotations to James Joyce's Ulysses/Wandering Rocks/232
## Annotations

Stephano Dedalo, alumno optimo, palmam ferenti (Latin) To Stephen Dedalus, best pupil, prizewinner.

## References

* ↑ Gifford (1988) 277.
# Annotations to James Joyce's Ulysses/Wandering Rocks/239
## Annotations

idée fixe (French) obsession; fixed idea. This French term was first coined by the composer Hector Berlioz to describe a recurring musical motif in his Symphonie fantastique that represents the artist's obsessive love for his beloved. In 1885 it was established as a quasi-technical term in psychiatry to describe a form of neurotic obsession known today as monomania.

## References

* ↑ Gifford (1988) 281.
# Annotations to James Joyce's Ulysses/Wandering Rocks/235
## Annotations

basso profondo (Italian) a very deep bass voice. Basso profondo is a musical term.

## References

* ↑ Gifford (1988) 278.
# Algorithm Implementation/Viterbi algorithm

The following implementations of the w:Viterbi algorithm were removed from an earlier copy of the Wikipedia page because they were too long and unencyclopaedic - but we hope you'll find them useful here!
# Algorithm Implementation/Trees/B+ tree

In computer science, a B+ tree is a type of tree data structure. It represents sorted data in a way that allows for efficient insertion and removal of elements. It is a dynamic, multilevel index with maximum and minimum bounds on the number of keys in each node.
A B+ tree is a variation on a B-tree. In a B+ tree, in contrast to a B tree, all data are saved in the leaves. Internal nodes contain only keys and tree pointers. All leaves are at the same lowest level. Leaf nodes are also linked together as a linked list to make range queries easy.
The maximum number of keys in a record is called the order of the B+ tree.
The minimum number of keys per record is 1/2 of the maximum number of keys. For example, if the order of a B+ tree is n, each node (except for the root) must have between n/2 and n keys.
The number of keys that may be indexed using a B+ tree is a function of the order of the tree and its height.
For a n-order B+ tree with a height of h:
* maximum number of keys is $n^{h}$
* minimum number of keys is $2(n/2)^{h-1}.$
The B+ tree was first described in the paper "Rudolf Bayer, Edward M. McCreight: Organization and Maintenance of Large Ordered Indices. Acta Informatica 1: 173-189 (1972)".

## Sample implementation in C++

CAREFUL: THE FOLLOWING CODE EXAMPLES DO NOT IMPLEMENT A PROPER B+-TREE. While they are very similar to a B+-Tree, they do not fulfill the B+-Tree criteria (as the authors admit in some comments).
This code snippet has been tested under Linux on a 32-bit x86 computer. Deletion of keys has not been implemented yet. It can be done quite easily in a lazy way with an amortized cost of O(log n), by rebuilding the tree from scratch every time that there are as many deleted keys as non-deleted keys. The rebuilding can be done in O(n) time, so its amortized cost is only O(1). This approach, however, would not be appropriate for real time systems.
The implementation uses the Boost library to have compile-time assertions and efficient memory allocation. The latter could be done with the new operator instead, resulting in some performance penalty.

### Violate the B+Tree definition during inner node split

After convert it into Java code, I realize the following code doing split insertInner violate the B+ Tree definition For example, what if N = 4, so after you split, we end up with 3 nodes, root node with 1 key, original node with 1 key, and the sibling node with 3 keys. So it (original node) violates the B+ Tree rules at least half full in the inner node. Look like we still need the canonical algorithm to make it right. Not shortcut here. So this algorithm is not strict B+ Tree, but it works. Anyway, I convert above C++ code to Java code shown below.
It doesn't really work because generic arrays cannot be created by casting from a newly created array of a concrete ancestor like Object.
ie. T a = new T[10] won't work. see the field declarations of LNode.
# Algorithms
## Table of Contents

* Preamble
* Introduction
* Mathematical Background
* Divide and Conquer
* Randomization
* Backtracking
* Dynamic Programming
* Greedy Algorithms
* Hill Climbing
* Unweighted Graph Algorithms
* Distance approximations
* Appendix A: Ada Implementation
* Appendix B: Sources

## Contributors

Macneil Shonle A large portion of my contributions here come from lectures made by [Impagliazzo] at UCSD. I like this project because it gives me a chance to explain algorithms in the way that I finally understood them
Matthew Wilson I typed in an outline after finishing a graduate algorithms course. M. Shonle has taken this textbook and really made it something great.
Martin Krischik I supplied the Ada examples for the algorithms. You never know if an algorithm works until you have actually implemented it.
See also the Sources list for contributions used with permission.
# Algorithms/Appendix B: Sources
## Sources

The following sources are used with permission from the original authors. Some of the sources have been edited (sometimes heavily) from the initial versions, and thus all mistakes are our own.
| [Impagliazzo] | Russell Impagliazzo. Lecture notes from algorithms courses 101 (Spring 2004; undergraduate), and 202 (Spring 2004, Fall 2004; graduate). University of California, San Diego. Used almost everywhere. |
| [Lippert] | Eric Lippert. "Recursion and Dynamic Programming," from Fabulous Adventures In Coding. 21 July 2004. Used with permission. http://blogs.msdn.com/b/ericlippert/archive/2004/07/21/recursion-and-dynamic-programming.aspx Used in the backtracking and dynamic programming chapters. |
| [Wikipedia] | Wikipedia, the free encyclopedia. http://www.wikipedia.org. Quoted/appropriated pervasively. |

## References

The authors highly recommend the following reference materials.
| [Aho] | Alfred V. Aho, Jeffrey D. Ullman, John E. Hopcroft. Data Structures and Algorithms. Addison Wesley, 1983. |
| [CLRS] | Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein. Introduction to Algorithms. McGraw-Hill, 2001. |
| [Hoare] | C. A. R. Hoare. "Algorithm 63: Partition", "Algorithm 64: Quicksort", "Algorithm 65: Find", from Communications of the ACM. Volume 4, Issue 7 (July 1961). Page 321. ISSN:0001-0782. http://doi.acm.org/10.1145/366622.366642. |
| [Knuth] | Donald E. Knuth. The Art of Computer Programming, Volumes 1-3. Addison-Wesley Professional, 1998. |

## External links

* Algorithms by S. Dasgupta, C.H. Papadimitriou, and U.V. Vazirani
* Introduction to Algorithms by C.E. Leiserson
# Kadas Opening
### 2. h5

White continues to march the flank pawn, allowing Black to take the full center with 2...e5. Another common response is 2...h6.
# Kádas Opening: Koola-Koola Variation

This opening is a little-known but strong response to 1.h4. After 2. h5 a4 3. h6 a3 4. hxg7 Bxg7 Black puts pressure on White's queenside.
Kádas Opening: Koola-Koola Variation :
| | a | b | c | d | e | f | g | h | |
| 8 | | | | | | | | | 8 |
| 7 | | | | | | | | | 7 |
| 6 | | | | | | | | | 6 |
| 5 | | | | | | | | | 5 |
| 4 | | | | | | | | | 4 |
| 3 | | | | | | | | | 3 |
| 2 | | | | | | | | | 2 |
| 1 | | | | | | | | | 1 |
| | a | b | c | d | e | f | g | h | |

### White's responses

White has many decent replies.
* 2.h5 this move is a mistake
* 2.a4 a strong move that blocks the advance of the a-pawn. after 2...h5 an equal position arises
* 2.g3 An interesting move, preparing the bishop's exit to g2.

# Statistics

No statistics as 1. h4 a5 is rarely played.
# Kadas Opening
### 2...e5

Black took the full center, unruffled by White's strange h-pawn advance.
White usually responds with
* 3. h6, the Croon's Gambit, or
* 3. c3, preparing 4. d4.
# Kadas Opening: Croon's Gambit
### 3. h6

The Croon's Gambit is an ambitious attempt to ruin Black's kingside at the cost of a pawn. The main plan of this opening is to open up White's rook file or have a thorn pawn on h6, then strike at the center with d4 and c4 afterwards. Sometimes if Black takes the pawn, White can take back with Bxh6 after d4. White will always play d4 in every line.

## Theory table

For explanation of theory tables, see theory table and for notation, see algebraic notation. .
1. h4 d5 2. h5 e5 3. h6
| | 3 | 4 | 5 | 6 |
| Knight's Acceptation | Nxh6 | d4 exd4 | Bxh6 gxh6 | Qxd4 Rg8 |
| Risky Variation | gxh6 | d4 |
| Thorn defense | g6 | d4 |

## Usage

FM Orest Vovk tried this opening at the European Blitz 2015 tournament with mixed success. As of 2022, he still regularly uses this opening online.

## References

* ↑ Vovk, Orest – Potapov, Pavel European Blitz 2015
* ↑ Chess.com Opening Explorer for Orest Vovk
When contributing to this Wikibook, please follow the Conventions for organization.