OpenLLM-France/wikimedia huggingface dataset:
# Oberon/ETH Oberon/Tutorial/DataConversion

These tutorial pages were written by André Fischer (afi) with editorial assistance of Hannes Marais, were hosted at the ETHZ and remain under the ETH license. Related content is found in the system via Book.Tool. Extended content is also available on paper. Some tutorial pages are in the WayBack archive.

## Objective

Learn how to exchange ASCII and Unix text files via FTP, e-mail or diskette.
Estimated time: 5 minutes.

## Text conversions

Among the files that you might encounter on some FTP sites are Unix ASCII text files which use 0AX where Oberon uses 0DX. The conversion involves changing these LFs to CRs. If you open a text and find that it is shown interspersed with small rectangular boxes (representing the LFs), you can be sure that a Unix ASCII text is involved.
EditTools.OpenUnix fileName | ^ opens a document viewer displaying the named Unix ASCII file converted to Oberon System 3 text.
EditTools.StoreUnix [*] stores the marked Oberon text document as a Unix ASCII file. The file name is taken from the document's name plate. If the command is executed from within a document, the document itself is implied: it must not necessarily be marked and the "*" is not required.
Exercise:
Access "ftp://nuchem.nsrl.rochester.edu/pub/Oberon/B2Project/" and download (in binary) [Get ^] Version.0.4.ascii
then convert it with: EditTools.OpenUnix Version.0.4.ascii ~
which you may now store as an Oberon System 3 text document.
Among the files that you might want to convert are MS DOS ASCII text files which use 0DX 0AX where Oberon uses 0DX. The conversion involves changing the CR/LF pairs to single CRs. If you open a text and find that it is shown with small rectangular boxes (representing the LFs) at the beginning of each line, you can be sure that an MS DOS ASCII text is involved.
EditTools.OpenAscii fileName | ^ opens a document viewer displaying the named MS DOS ASCII file converted to Oberon System 3 text.
EditTools.StoreAscii [*] stores the marked text document as an MS DOS ASCII file. The file name is taken from the document's name plate. If the command is executed from within a document, the document itself is implied: it must not necessarily be marked and the "*" is not required.
You may verify that with the typical and very central _OBERON.INI file, called Registry, used by Oberon for Windows and by MacOberon. But, be careful not to damage this essential file and exercise with a copy of it.
You may easily verify the content of the files with the Hex.Open fileName | ^ command.

## Index

E
EditTools.OpenAscii EditTools.OpenUnix EditTools.StoreAscii EditTools.StoreUnix
H
Hex.Open
T
text conversion
Revised, 01 Dec 1996 Installed on 30 05 1997
# Open Source Handbook of Nursing/Nursing diagnosis

There has been a large volume of work to develop a global nursing language. This effort has led to the development of a separate discipline of health informatics which deals with categories of diagnosis and management activities with each client. Informatics is closely connected with financial management of health services. There has been some move toward a searchable on-line database to address ethical issues of global accessibility and equity of terms arising in the international academic literature. Leading the charge toward a universal nursing language is the International Council of Nurses.

## International Council of Nurses

The global nursing community worldwide strives to ensure quality care for all, while maintaining their credentials, code of ethics, standards, and competencies, and continuing their education. The International Council of Nurses (ICN) is a federation of national nurses associations in more than 130 countries. Operated by nurses and leading nursing internationally, ICN works to ensure quality nursing care for all and sound health policies globally. Founded in 1899, ICN is the world’s first and widest reaching international organization for health professionals and is headquartered in Geneva, Switzerland. Searchable online database
* ↑ The International Classification For Nursing Practice Project
# Open Source Handbook of Nursing/Nursing theory
### pre-modern nursing

* Parabalani
* Knights Templar
* Sisters of Mercy
* Sisters of St John of God
* Nazarene sisters

### Egalitarian approach

Most nurses have some exposure to nursing theory in their training. There are so many theorists worthy of our attention, that many nurses adopt an egalitarian or fusion approach to deal with the overwhelming swampiness of nursing schools of thought. In other words, nurses usually draw from theory rather than subscribe to a particular theorist. For example, many nurses tend to prefer unity theorists or an atomistic approach and study those which suit them best.

## Florence Nightingale

Florence is generally considered to be the mother of modern nursing. Her published ideas about nursing are examples of early theorizing.
# Open Source Handbook of Nursing/Nursing assessment
## Wikipedia:Nursing assessment

(I regard the wikipedia content adequate to augment the nursing book, which is long overdue for development)Tradimus (discuss • contribs) 14:46, 19 April 2011 (UTC)
# Open Source Handbook of Nursing/Activity exercise
## mobility

Nurses can support client mobility using a number of aids, including
* wheel chair
* hydraulic or electric lift (standing or sitting type)
* crutches
* slide sheet
Because of the seriousness and frequency of carer injuries, most health care workplaces in industrialized countries have moved to adopt no-lift policies to protect nurses from injuries sustained while mobilizing clients. Nurses have a responsibility for responsible body mechanics around manual handling tasks. For example, should have a wide base of support and prefer pushing to pulling while managing clients in supine or recumbent positions.

## sprain

muscular strains occasionally rupture the muscle or associated soft tissue. The first aid treatment for such injuries can be summarized in the mnemonic
* REST
* ICE
* COMPRESSION
* ELEVATION
Immobilising an injured limb is the best course until a definite diagnosis can be made by a physiotherapist or radiological examination. There are a number of devices available for nurses to use, such as inflatable or re-usable splints and a stop sign sling made with linen around the upper limb, suspended from an intravenous pole or monkey-grip. Full plaster as a form of splinting fractures has largely been replaced by unilateral (back-slab) plaster because of the risk of compression injuries. All splints will require neurovascular observations
* COLOUR
* WARMTH
* MOVEMENT
* SENSATION
* PULSES - possibly using a doppler for pulses in the foot.
# Open Source PIM

Open Source PIM stands for Open Source Personal Information Management. This book describes the philosophy and methods for Personal Information Management from the perspective of Open Source. In this context, Open Source refers to both software and standards that are substantially unencumbered by licensing restrictions and lack of flexibility.
This book is primarily intended as a practical guide for anyone who wishes to consider effective ways of maintaining personal information on a computer with minimal effort and with the greatest degree of personal flexibility.

## Introduction

    Core Challenges
    Core Solutions

## Hyperlinks

    Plain Text Hyperlinks
# Open Source Handbook of Nursing/Respiratory Care
## glossary

* Atelectasis - deflateded lung
* pleural effusion - collection of fluid between lung and chest wall.
* thoracentesis - removal of pleural effusion via needle
* cachexia - muscle wasting (due to under-nutrition in respiratory conditions when eating becomes exhausting)

## Airway management

Suction is life-saving here clients are unable to maintain their own airway. Nurses must take responsibility for checking function of suction apparatus, where it is kept. Airway management may be as simple as reminding narcotised clients to take a deep breath occasionally, or keeping the clients head in a neutral or even extended position to prevent lingual obstruction (tongue blockage).

## position

clients may need positioning for drainage of secretions. clients may find relief in positioning upright to allow maximum chest expansion and having a table to lean upon.
# Microprocessor Design/Sockets and interfacing
## Form Factors

A matter that is peripheral to the subject of microprocessor design, but not wholely unrelated is the subject of form factors, sockets, and interfacing. When it comes to microprocessors and microcontrollers there is no standard size or shape, no standard connectors, etc. An Intel Pentium chip cannot plug into the same socket as an AMD Athlon chip, even though they are both IA32 chips, and both of them can run the same software. The size, shape, number of connectors and orientation of the connectors are known collectively as the form factor of the chip. Each separate form factor requires a specific interface for the chip to connect to called a socket.
# Microprocessor Design/Simulator

Simulators are software programs that have grown in popularity among design groups in recent years. Once an ISA is finalized, and the basics of the datapath are mapped out (especially the timing and delays), a simulator can be a very valuable project to work on.
A simulator allows software for your new microprocessor to be tested on a separate computer. This means that people can write and test software for your new processor even before you have finished designing it!
Simulators have lead to a fascinating new realm of productivity known as hardware software co-design.
# Microprocessor Design/Single Cycle Processors

Single-cycle processors are what we have been studying so far: an instruction is fetched from memory, it is executed, and the results are stored all in a single clock cycle.
The benefits of single-cycle processors is that they tend to be the most simple in terms of hardware requirements, and they are easy to design. Unfortunately, they tend to have poor data throughput, and require long clock cycles (slow clock rate) in order to perform all the necessary computations in time.

## Cycle Times

The length of the cycle must be long enough to accommodate the longest possible propagation delay in the processor. This means that some instructions (typically the arithmetic instructions) will complete quickly, and time will be wasted each cycle. Other instructions (typically memory read or write instructions) will have a much longer propagation delay.
As this image shows, an instruction is not over until all 5 components have acted. This means that the length of the cycle must be the length of the longest instruction. The longest path from one end of the processor to the other is called the critical path and is used to determine the cycle time.

## Redundant Hardware

Single cycle processors typically require a number of ALUs (or a single master ALU, and smaller ALUs) to handle the increment operations on the instruction pointer, and the memory address calculations for the data memory. When resources are at a premium, having multiple ALU units in your design can be costly and pointless. It requires nearly as many resources to construct an adder that adds a constant value as it does to construct a more general purpose adder unit.

## Single Cycle Designs

It is very rare, if not completely unheard of, for a modern processor unit to have a single-cycle design. The reasons for this are the long cycle times, the wasted resources, and the large amount of wasted time in each cycle. What the single-cycle lacks in timing and efficiency, it makes up for in simplicity and elegance. It is for this reason that single-cycle processors work as a good teaching tool, but are not often employed in actual designs.
# Microprocessor Design/Superscalar Processors

In a superscalar design, the processor actually has multiple datapaths, and multiple instructions can be executed simultaneously, one in each datapath. It is not uncommon for a superscalar CPU to have multiple ALU and FPU units, for each datapath.
In this image, all the stages highlighted in green are executing simultaneously. As we can see from this image, there are two execution cores operating simultaneously.
# Microprocessor Design/VLIW Processors

Very Long Instruction Words (VLIW) can be used to simultaneously specify multiple instructions in parallel with one another.

## VLIW Vs Superscalar

In a superscalar design, the microprocessor will have multiple independent execution units. An instruction scheduler determines which instructions will be executed on which execution unit, at what time. This scheduler unit requires large amounts of additional hardware complexity.
VLIW is similar to the superscalar architecture except that instead of using scheduling hardware to map instructions to available execution units, instructions for all units are provided in every instruction word. The scheduling is performed by the compiler at compile time.
The term VLIW comes from the fact that multiple instructions typically requires large instruction words. If each instruction is 32 bits (including opcode, source and destination registers, etc), and the processor has 4 execution cores, then the total instruction word length is 128 bits long!

## Multi-Issue

Similar to the VLIW design, a multi-issue processor will issue an unfixed number of instructions per cycle, and each will be executed simultaneously.
# Microprocessor Design/Vector Processors

Vector processors, or SIMD processors are microprocessors that are specialized for operating on vector or matrix data elements. These processors have specialized hardware for performing vector operations such as vector addition, vector multiplication, and other operations.
Modern graphics processors and GPUs tend to be vector-based processors. Modern Intel-based chips also have SIMD capabilities known as SSE or MMX operations.

## Parallel Execution

Vector processors which perform an instruction on all data elements simultaneously are said to execute in parallel.
Each EX in this image shows a separate execution core (typically an ALU) operating in parallel with one another.

## Non-Parallel Execution

Vector processors which reuse a single ALU for a vector operation look like this:
As this diagram shows, each EX stage is a new set of data from the first instruction being loaded into the execution core. The next instruction will not be fetched until all the data has been acted upon.
# Perl Programming/Concept Index/case sensitivity

The perl interpreter is case sensitive. This means that identifier names containing lowercase letters will be treated as being different and separate from those containing uppercase letters:

## Converting Strings

The perl interpreter provides the following functions for converting strings to uppercase or to lowercase: uc Converts a string to upper case lc Converts a string to lower case ucfirst Converts the first letter of a string to upper case lcfirst Converts the first letter of a string to lower case
# Conditionals
## The if statement

The if statement is the primary conditional structure in Perl. The syntax is as follows:
If the boolean expression evaluates to true, the statements between the two braces will be executed. The braces around statements are mandatory, even if there is only one statement (unlike C or Java).
An alternative syntax to the if statement may be used on a single statement. This involves putting the conditional at the end of the statement rather than before, and does not include braces:
The following statements are synonymous:
You should choose whichever one is clearer in a given situation. For example, the following is legal, but unclear:
This hides the last (which is like break, and ends the loop) over at the right. Instead, use a postfix if:
The boolean expression conditional can contain any one of the comparison operators covered in the next section.
Multiple conditions can be checked together using the boolean expression operators:
* && - logical and, C style; used for most conditionals
* and - logical and, but with a lower precedence; used for flow control
* || - logical or, C style; used for most conditionals
* or - logical or, but with a lower precedence; used for flow control
* ! - logical not, C style
* not - logical not, but with a lower precedence
Conditional statements can also be extended with the elsif and else structures:
Note that an if statement is followed by any number (including zero) of elsif statements, and finally an optional else statement. The statements of an elsif will be executed, if its boolean expression is true, and no preceding (els)if statement's boolean expression is true. The trailing else (if present) is executed, if none of the preceding statements' boolean expressions are true.

### Shorthand if ... else notation

If you want to shorten the conditional into one line, you may use the shortcut syntax:
# Perl Programming/Control flow
## Control structures

The basic control structures do not differ greatly from those used in the C programming language or Java programming language:

### Loops

Though syntactically the same, Perl does not use break and continue to change the flow of loops. Perl provides the following commands: (with C equivalents in comments)
Note that the statements in a while (or until) loop are not executed, if the Boolean expression evaluates to false (or true, respectively) on the first pass, even when specified at the end of the code block. Therefore the following loops are functionally equivalent: (the same applies to: do until)
The do while and the do until loops are technically statement modifiers and not actual control structures. The statements will be executed at least once.
$variable is an alias to each element of the @list, starting at the first element on the first pass through the loop. The loop is exited when all the elements in the list have been exhausted. Since $variable is an alias, changing the value will change the value of the element in the list. This should generally be avoided to enhance maintainability of the code.
If $variable is omitted, the default variable $_ will be used.
Note that for and foreach are actually synonyms and can be used interchangeably.
Blocks may have an optional continue section, which is executed at the end of each iteration.

### next, redo, last

When inside a loop, there are three keywords that manipulate how the loop is handled.
To start the next iteration, next jumps to the end of the block. If there is a continue block, that part is executed, as is the conditional to resume the loop.
To restart an iteration, redo jumps to the beginning of the block. Neither continue nor the conditional are executed.
To break out of the loop, last jumps outside the end of the block. Neither continue nor the conditional are executed.

### given

Until version 5.10.1, Perl did not have an equivalent of the switch statement in other programming languages. Starting in that version, it became an experimental feature.
In Perl 5, it first needs to be enabled with one of the following statements:
By default, the expressions in when is matched to what is found in given. In certain exceptional cases, the value may be used directly as a boolean.

### if-then statements

Statements with else blocks (these also work with unless instead of if)

### Postfix notation

Control statements can also be written with the conditional following the statements (called "postfix"). This syntax functions (nearly) identically to the ones given above.
# Perl Programming/Exercise 1
## Getting started, displaying text

Task: Create a Perl program which displays "Hello world" and then exits.

## Displaying numbers

Try doing these few excercises yourself
* Put the number 4000/7 into a variable, and display it on screen.
* Adapt the program to display the number to 3 decimal places. (Hint: The well-known printf works in Perl!)
* Adapt the program to round up if the last decimal place is greater than 5
* Adapt the program to display the number with leading zeros
* Adapt the program to show a + sign if the number is positive, and check that it correctly displays a - sign if you subtract 1000 from the number.

## Functions

Write a function to calculate the roots of a Quadratic equation, where you give the coefficients a,b,c to the function, and it returns both the values of x

## Putting it all together

Put together these programs into one which:
* Displays a title on screen
* Creates 3 random numbers (a,b,c)
* Displays those numbers neatly formatted
* Uses those numbers as the coefficients of a quadratic equation, calculates and displays both roots.
Answers
Next exercise
# Perl Programming/Comments
## Comments

Comments should be used in your Perl script to help other developers who may look at your project later down the line understand what it is you have done. A comment can be made using the # key.
Example:
In some text editors, such as Sublime (link at the bottom), you can comment out large sections of code by highlighting the code and pressing ctrl+/. It doesn't matter what language you are coding in, if you have the file saved and sublime knows what file type it is, it will automatically put the right comment syntax in for you. This is useful, to temporarily comment out a section of code, for example while you are re-writing its functionality, or if it is not yet ready to run. (To un-comment large sections in Sublime, just highlight the text and press the same keys).
Comments are also a crucial part to declaring the file type, the authors name, the date the file was made and what it is the program is supposed to do. Developers will not respect your work unless you do this correctly and give them all the details they need. It should be written like this:
# Perl Programming/Concept index

This is the concept index for the Perl Programming book.

## A

* Actions
* Anonymous subroutines
* Argc
* Argv
* Arithmetic
* Arrays
* Ascii
* Assignment

## B

* Backslash
* Bare block
* Bareword strings
* Begin blocks
* Bit manipulation
* Bitwise operators
* Blocks
* Boolean truth
* Brackets
* Branches

## C

* Case conversion
* Case sensitivity
* Case switching
* Caveats
* CGI Common Gateway Interface Programming
* Child
* Cmp
* Combination assignment operators
* Comma
* Commands
* Command line parameters
* Comments
* Comparative operators
* Concatenation
    Operators
    Strings
* Conditional branches
* Conditional loops
* Conversion qualifiers
* Conversion specifiers
* Constants
* Constructors
* Context
* Control statements
* Control structures
* Conversion
* Converting statements into expressions
* Crypt

## D

* Data Types
* Date functions
* Declaration
* Decrement
* Default variable
* Delimiters
* Destructors
* Doublemint operator
* Double quotes

## E

* Empty statement
* Empty string
* Encryption
* Environment
* Error handling
* Equivalence
* Error handling
* Escape sequences
* Event handling
* Expressions
* External functions

## F

* Fields
* Field separator
* File handling
* Floating point numbers
* For loops
* Foreach loops
* Formatting functions
* Functions

## G

* Given
* Goto
* Grouping arguments

## H

* Hashbang
* Hashes
* Hello World
* Here documents

## I

* Identifiers
* If Conditionals
* Inbuilt functions
* Infinite loops
* Input
* Instructions
* Internals
* Interpolation
* Iterator
* Iterative loops
* Inverted syntax
* Invocation

## K

* Keywords

## L

* Labels
* Libraries
* Lists
* Literal characters
* Local
* Locale
* Logical operators
* Loops
* Loop modifiers
* Limitations

## M

* Main block
* Mathematical functions
* Metacharacters
* Mistakes
* Modules
* Multiple branch conditionals

## N

* Nested loops
* Nudge operators
* Numbers

## O

* Operators

## P

* Patterns
* Precedence
* Print
* Printf

## Q

* Quotation marks

## R

* Records
* Record separator
* References to data
* Regular expressions

## S

* Search patterns
* Special variables
* Statements
* Strings
* Subprograms
* Subroutines
* Symbols

## T

* Truth
* Typecasting

## V

* Values
* Variables
* Variable assignment
* Variable names

## W

* While loops
* Whitespace