Kristína Kabátová

July 4th, 2009

Kristína Kabátová
Personal Information
Country represented:  Slovakia
Date of birth: June 4, 1992 (1992-06-04) (age 17)
Height: 152 cm
Former partner: Martin Hanulák
Coach: Voloda Dvojnikov
Choreographer: Voloda Dvojnikov, Tomas Kika
Skating club: SKP Bratislava
ISU Personal Best Scores
Combined Total: 92.54 2007 World Juniors
Short Program: 36.97 2007 World Juniors
Free Skate: 58.27 2006 JGP Liberec

Kristína Kabátová (born June 4, 1992 in Bratislava, Slovakia) is a Slovak pair skater. She previously competed with Martin Hanulák. They were the 2006 Slovakian junior national champions and placed 15th at the 2006 World Junior Figure Skating Championships.

3 Day Diet

Trichodesma laxiflorum

July 4th, 2009

Trichodesma laxiflorum
Conservation status

Least Concern (IUCN 3.1)
Scientific classification
Kingdom: Plantae
(unranked): Angiosperms
(unranked): Eudicots
(unranked): Asterids
Order: (unplaced)
Family: Boraginaceae
Genus: Trichodesma
Species: T. laxiflorum
Binomial name
Trichodesma laxiflorum
Balf.f.

Trichodesma laxiflorum is a species of plant in the Boraginaceae family. It is endemic to Yemen. Its natural habitats are subtropical or tropical dry forests and subtropical or tropical dry shrubland.

ed hardy ta4005 bag

Garner Magnet High School

July 3rd, 2009

kiss rare

Garner Magnet High School
Location
2101 Spring Drive
Garner, NC 27529
Information
Type Public
Motto Great Minds High Standards
Established 1968
School district Wake County Public School System
Faculty approx. 200
Enrollment approx. 2269
Information (919) 662-2379
Colors
Mascot
Blue and Gold
Trojan
Website

Garner Magnet High School (GMHS) is a 4AA school in the Wake County Public School System. Located in Garner, NC, 2101 Spring Drive 27529. GMHS has a current enrollment of 2096 students. GMHS offers the International Baccalaureate Diploma Programme, which is offered by only three schools in the WCPSS, including Broughton High and Enloe High School.

Contents

  • 1 Athletics
  • 2 Trojan Alumni
  • 3 References
  • 4 External links

Athletics

  • Baseball, 1979 NCHSSA 4A champions, 22 Conference titles
  • Men’s Basketball
  • Women’s Basketball, 1978 NCHSSA 4A champions, 2006 Eastern Regional semi-finalist
  • Cheerleading, 2003 & 2008 NC State Champions
  • Football, 1987 4AA North Carolina Football State Champions, 2006 4AA Eastern Conference Runner-up.
  • Lacrosse
  • Men’s Soccer
  • Women’s Soccer
  • Men’s Tennis, 2006 conference champions
  • Women’s Tennis
  • Softball, 17 Conference Titles
  • Cross Country
  • Men’s Golf
  • Women’s Golf
  • Volleyball
  • Wrestling

Trojan Alumni

  • Kameron Smith, 2008, US Naval Academy, football
  • Paige Dugal, 2008, NC State, soccer
  • Suzanne Jordan, 2008, Campbell University, cheerleading
  • Kanita Shepherd, 2008, James Madison, basketball
  • Morgan Barbour, 2008, NC State, softball
  • Amanda Beach, 2008, Peace College, softball
  • Reggie Bowens, 2008, South Carolina, football
  • Tony Morgan, 2008, Garden City CC, football
  • Tiffany Moody, 2008, Ohio Valley University, basketball
  • Booker Nunley, 2008, South Carolina, track
  • Alan McManus, 2008, Catawba College, football
  • Sam Stevenson, 2008, UNC Pembroke, golf
  • Wil Medlin, 2008, Chowan University, baseball
  • Zach Howell, 2008, UNC Greensboro, baseball
  • Jordan Young, 2008, Brunswick Community College, baseball
  • Matt Kiel, 2008, Brunswick Community College, baseball
  • Paige Thompson, 2008, UNC Wilmington, cheerleading

  • Josh Oglesby, 2007, Virginia Tech, football
  • Trey Grissom, 2007, US Naval Academy, football
  • Chris Culliver, 2007, South Carolina, football
  • Cedric Snead, 2007, South Carolina, football
  • Jeremy Hall, 2007, UNC Asheville, baseball
  • Kaitlin Wescoe, 2007, NC State, soccer
  • Colby Holloway, 2007, Elon University, football
  • Tucker Dupree, 2007, Olympic Swimmer, swimming
  • Charlise Cunningham, 2007, USC Upstate, soccer
  • Ashleigh Harris, 2007, Peace College, softball
  • Alesha Patterson, 2007, NC State, track
  • Cory Adams, 2007, Pfieffer, baseball
  • Nick Williams, 2007, Louisburg, baseball

  • Brandon Banks, 2006, Kansas State, football
  • Tim Lovick, 2006, St. Augustine, track, football
  • B.J. Williams, 2006, Louisburg College, basketball
  • Matt Linebarger, 2006, Fayetteville State University, football
  • Jill Hatcher, 2006, North Georgia State University, cheerleading
  • Orry Powers, 2006, Elon University, soccer
  • Richard Medlin, 2006, Fayetteville State University, football
  • Blake Lowry, 2006, Campbell University, baseball
  • Antoine Jacobs, 2006, Shaw University, tennis
  • Chris Nixon, 2006, NC A&T University, track
  • Darren Tew, 2006, Lander University, baseball

  • Jacob Wescoe, 2005, UNC, soccer
  • Josh Smith, 2005, East Carolina University, football
  • Adam Hamrick, 2005, UNC-Pembroke, baseball
  • Jaraea Shephard, 2005, UNC Wilmington, track
  • Mark Locklear, 2005, UNC Wilmington, baseball
  • Ashley Weathersbee, 2005, Peace College, softball

References

  1. ^ http://garnerhs.wcpss.net/
  2. ^ http://gmhs-athletics.blogspot.com/
  3. ^ http://gmhs-athletics.blogspot.com/2008/01/gmhs-alumni.html

mac makeup

Anxiety

July 3rd, 2009

plush

Anxiety
Classification and external resources
ICD-9 300
MeSH D001007

Anxiety is a psychological and physiological state characterized by cognitive, somatic, emotional, and behavioral components. These components combine to create an unpleasant feeling that is typically associated with uneasiness, fear, or worry.

Anxiety is a generalized mood condition that occurs without an identifiable triggering stimulus. As such, it is distinguished from fear, which occurs in the presence of an observed threat. Additionally, fear is related to the specific behaviors of escape and avoidance, whereas anxiety is the result of threats that are perceived to be uncontrollable or unavoidable.

Another view is that anxiety is “a future-oriented mood state in which one is ready or prepared to attempt to cope with upcoming negative events” suggesting that it is a distinction between future vs. present dangers that divides anxiety and fear.

Anxiety is considered to be a normal reaction to stress. It may help a person to deal with a difficult situation, for example at work or at school, by prompting one to cope with it. When anxiety becomes excessive, it may fall under the classification of an anxiety disorder.

Contents

  • 1 Symptoms
  • 2 Biological basis
  • 3 Clinical Scales
  • 4 Varieties
    • 4.1 Existential anxiety
    • 4.2 Test anxiety
    • 4.3 Stranger and social anxiety
    • 4.4 Trait anxiety
    • 4.5 Anxiety in Positive psychology
  • 5 External links
  • 6 See also
  • 7 References

Symptoms

Anxiety can be accompanied by physical effects such as heart palpitations, fatigue, nausea, chest pain, shortness of breath, stomach aches, or headaches. Physically, the body prepares the organism to deal with a threat. Blood pressure and heart rate are increased, sweating is increased, bloodflow to the major muscle groups is increased, and immune and digestive system functions are inhibited (the fight or flight response). External signs of anxiety may include pale skin, sweating, trembling, and pupillary dilation. Someone suffering from anxiety might also experience it as a sense of dread or panic.

Although panic attacks are not experienced by every anxiety sufferer, they are a common symptom. Panic attacks usually come without warning, and although the fear is generally irrational, the perception of danger is very real. A person experiencing a panic attack will often feel as if he or she is about to die or pass out. Panic attacks may be confused with heart attacks.

Anxiety does not only consist of physical symptoms. There are many emotional symptoms involved as well. Some of them include: “Feelings of apprehension or dread, trouble concentrating, feeling tense or jumpy, anticipating the worst, irritability, restlessness, watching (and waiting) for signs (and occurences) or danger, and, feeling like your mind’s gone blank.” There’s also, “nightmares/bad dreams, obsessions about sensations, deja vu, a trapped in your mind feeling, and feeling like everything is scary.”

One of the most common symptoms of anxiety is fear, which includes the fear of dying. “You may…fear that the chest pains are a deadly heart attack or that the shooting pains in your head are the result of a tumor or aneurysm. You feel an intense fear when you think of dying, or you may think of it more often than normal, or can’t get it out of your mind.”

Biological basis

Neural circuitry involving the amygdala and hippocampus is thought to underlie anxiety. When confronted with unpleasant and potentially harmful stimuli such as foul odors or tastes, PET-scans show increased bloodflow in the amygdala. In these studies, the participants also reported moderate anxiety. This might indicate that anxiety is a protective mechanism designed to prevent the organism from engaging in potentially harmful behaviors.

Although single genes have little effect on complex traits and interact heavily both between themselves and with the external factors, research is underway to unravel possible molecular mechanisms underlying anxiety and comorbid conditions.

  • PLXNA2

Clinical Scales

Further information: Beck Anxiety Inventory

The HAM-A (Hamilton Anxiety Scale) is a widely used interview scale that measures the severity of a patient’s anxiety, based on 14 parameters, including anxious mood, tension, fears, insomnia, somatic complaints and behavior at the interview. Developed by M. Hamilton in 1959, the scale predates the current definition of generalized anxiety disorder (GAD). However, it covers many of the features of GAD and can be helpful in assessing its severity.

Varieties

Existential anxiety

Further information: Angst, Existential crisis, and nihilism

Philosopher Søren Kierkegaard, in The Concept of Dread, described anxiety or dread associated with the “dizziness of freedom” and suggested the possibility for positive resolution of anxiety through the self-conscious exercise of responsibility and choosing.

Theologian Paul Tillich characterized existential anxiety as “the state in which a being is aware of its possible nonbeing” and he listed three categories for the nonbeing and resulting anxiety: ontic (fate and death), moral (guilt and condemnation), and spiritual (emptiness and meaninglessness). According to Tillich, the last of these three types of existential anxiety is predominant in modern times while the others were predominant in earlier periods. Tillich argues that this anxiety can be accepted as part of the human condition or it can be resisted but with negative consequences. In its pathological form, spiritual anxiety may tend to “drive the person toward the creation of certitude in systems of meaning which are supported by tradition and authority” even though such “undoubted certitude is not built on the rock of reality”.

According to Viktor Frankl, author of Man’s Search for Meaning, when faced with extreme mortal dangers the most basic of all human wishes is to find a meaning of life to combat the “trauma of nonbeing” as death is near.

Test anxiety

Main articles: Test anxiety and Mathematical anxiety

Test anxiety is the uneasiness, apprehension, or nervousness felt by students who have a fear of failing an exam. Students suffering from test anxiety may experience any of the following: the association of grades with personal worth, fear of embarrassment by a teacher, fear of alienation from parents or friends, time pressures, or feeling a loss of control. Emotional, cognitive, behavioral, and physical components can all be present in test anxiety. Sweating, dizziness, headaches, racing heartbeats, nausea, fidgeting, and drumming on a desk are all common. An optimal level of arousal is necessary to best complete a task such as an exam; however, when the anxiety or level of arousal exceeds that optimum, it results in a decline in performance. Because test anxiety hinges on fear of negative evaluation, debate exists as to whether test anxiety is itself a unique anxiety disorder or whether it is a specific type of social phobia. In 2006, approximately 49%(need reference) of high school students were reportedly experiencing this condition. While the term “test anxiety” refers specifically to students, many adults share the same experience with regard to their career or profession. The fear of failing a task and being negatively evaluated for it can have a similarly negative effect on the adult.

Stranger and social anxiety

Main articles: Stranger anxiety and Social anxiety

Anxiety when meeting or interacting with unknown people is a common stage of development in young people. For others, it may persist into adulthood and become social anxiety or social phobia. “Stranger anxiety” in small children is not a phobia. Rather it is a developmentally appropriate fear by toddlers and preschool children of those who are not parents or family members. In adults, an excessive fear of other people is not a developmentally common stage; it is called social anxiety.

Trait anxiety

Anxiety can be either a short term “state” or a long term “trait.” Trait anxiety reflects a stable tendency to respond with state anxiety in the anticipation of threatening situations. It is closely related to the personality trait of neuroticism.

Anxiety in Positive psychology

Anxiety Arousal Flow Control Relaxation Boredom Apathy Worry Enlarge image


Anxiety in terms of challenge level and skill level. Clickable.

In positive psychology, anxiety is described as a response to a difficult challenge for which the subject has low coping skills.

External links

  • Self help guide (NHS Direct)

See also

  • Panic attack
  • Panic disorder
  • Paranoia
  • Somatic anxiety
  • Stage fright

p h crane

Aishalton

July 3rd, 2009



























Aishalton

Jump to: navigation, search

Aishalton

Aishalton is located in Guyana

Aishalton
Aishalton

Location in Guyana

Coordinates: 2°31?N 59°15?W? / ?2.517°N 59.25°W? / 2.517; -59.25
Country Guyana
Region Upper Takutu-Upper Essequibo
Population (2005)
 - Total 1,200

Aishalton is a village of the Upper Takutu-Upper Essequibo Region, in the Rupununi savannah of southern Guyana, at an altitude of 300 metres. The population of 1,200 is mostly Wapishana Amerindian. Aishalton is approximately 60 miles southeast of Lethem.

Aishalton has secondary and elementary schools. The National Library service established a library in Aishalton in 1976. A hospital was built in the 1980s, with support from The Netherlands.

Internet service exists, donated by a Canadian mining company with interests in the area.

The Airport Code of the Aishalton landing strip is AHL.

Petroglyphs can be found near Aishalton. Anthropologist Denis Williams’ Master’s thesis, The Aishalton Petroglyph Complex in the Prehistory of the Rupununi Savannas, submitted to the University of Guyana in 1979, presented ideas elaborated in a 1985 article published in Advances in World Archeology.

The drink of choice, is parakari, a local drink made from fermented cassava in a complicated process involving up to thirty different stages. The result is a thick, greyish-brown brew, widely varying in strength and quality. If it is sweet, it can be drunk almost like water; if it is bitter, then it is a sign that the sugars have been turned into alcohol, and the unsuspecting drinker should beware. It is commonly served out of a bucket, and traditionally drunk by the bowlful, though concession to modern livers permits the use of a cup. According to custom, the “sharer”, whose job it is to replenish empty vessels, should be returned a shot for every one he distributes.

Coordinates: 2°31?N 59°15?W? / ?2.517°N 59.25°W? / 2.517; -59.25

 This Guyana location article is a stub. You can help Wikipedia by expanding it.

Retrieved from “http://en.wikipedia.org/wiki/Aishalton”
Categories: Cities, towns and villages in Guyana | Guyana geography stubsHidden categories: Articles lacking sources from April 2009 | All articles lacking sources

Views
  • Article
  • Discussion
  • Edit this page
  • History
Personal tools
  • Log in / create account

Navigation
  • Main page
  • Contents
  • Featured content
  • Current events
  • Random article
 

Interaction
  • About Wikipedia
  • Community portal
  • Recent changes
  • Contact Wikipedia
  • Donate to Wikipedia
  • Help
Toolbox
  • What links here
  • Related changes
  • Upload file
  • Special pages
  • Printable version
  • Cite this page
Languages
  • Español

Powered by MediaWiki
Wikimedia Foundation

  • This page was last modified on 10 April 2009 at 17:41.
  • Privacy policy
  • About Wikipedia
  • Disclaimers




Good Diets To Lose Weight

Longs, South Carolina

July 3rd, 2009

designer suit


























Longs, South Carolina

Jump to: navigation, search

Longs is a small unincorporated community in Horry County, South Carolina, United States. It lies about 14 miles northwest of North Myrtle Beach, located at the intersection of S.C. 9 and S.C. 905. The town itself consists of a post office, a gas station, and a few small businesses, however, the area is fast growing into a suburb of the Grand Strand.

Of historical note, Longs appears on a map from 1682 of “rivers, harbors, plantations, and other accommodations” in North and South Carolina (”Carolina Country”).

This South Carolina state location article is a stub. You can help Wikipedia by expanding it.

Coordinates: 33°56?19?N 78°43?59?W? / ?33.93861°N 78.73306°W? / 33.93861; -78.73306

Retrieved from “http://en.wikipedia.org/wiki/Longs,_South_Carolina”
Categories: South Carolina geography stubs | Horry County, South Carolina | Unincorporated communities in South Carolina

Views
  • Article
  • Discussion
  • Edit this page
  • History
Personal tools
  • Log in / create account

Navigation
  • Main page
  • Contents
  • Featured content
  • Current events
  • Random article
 

Interaction
  • About Wikipedia
  • Community portal
  • Recent changes
  • Contact Wikipedia
  • Donate to Wikipedia
  • Help
Toolbox
  • What links here
  • Related changes
  • Upload file
  • Special pages
  • Printable version
  • Cite this page

Powered by MediaWiki
Wikimedia Foundation

  • This page was last modified on 24 September 2008 at 10:51.
  • Privacy policy
  • About Wikipedia
  • Disclaimers




gen player

KS Skënderbeu Korçë

July 3rd, 2009

triple paste

K.F. Skënderbeu Korçë
Logo
Full name Klubi Futbollistik Skënderbeu Korçë
Nickname(s) Ujqerit e Debores(English: The Snow-Wolves)
Founded April 15th 1909
Ground Stadiumi Skënderbeu
Korçë, Albania
(Capacity: 10,000)
President Flag of Albania Niko Peleshi
Manager Flag of Albania Indrit Fortuzi
League Albanian First Division
2008/09 2nd (promoted to Albanian Superliga 2009-10


Team colours

Team colours

Team colours

Team colours

Team colours

Home colours

Team colours

Team colours

Team colours

Team colours

Team colours

Away colours

Klubi Futbollistik Skënderbeu Korçë is an Albanian football (soccer) club based in Korçë. Their home ground is “Skënderbeu Stadium” (10.000 seats).

Founded in 1923, the club participated for the first time in the Albanian First Division in 1930 (first Albanian tournament) and won one Albanian Title in 1933. Three-time finalists in Albanian Cup on 1958, 1965 and 1976 (losing all times), and won the Albanian Second Division in same year (1976).

In the season 2008-09, the club played in the Albanian First Division and finished 2nd, with 20 wins, 5 draws and 5 losses. So for the 2009/10 they have been promoted to the Albanian Superliga.

Current Squad

No. Position Player
Flag of Albania GK Edi Pelleshi
Flag of Albania GK Erjon Lapanji
Flag of Albania GK Estref Billa
Flag of Albania GK Olgert Ametli
Flag of Albania DF Alket Alcani
Flag of Albania DF Elidon Demiri
Flag of Albania DF Elton Doku
Flag of Albania DF Elton Lika
Flag of Albania DF Ervin Kotomelo
Flag of Albania DF Gentian Shkoza
Flag of Albania DF Jorgo Çipi
Flag of Albania DF Stavrion Lako
Flag of Albania MF Arlind Xaka
Flag of Albania MF Blendi Shkëmbi
Flag of Albania MF Denis Kita
Flag of Albania MF Endri Çajku
Flag of Albania MF Erstel Vieros
No. Position Player
Flag of Albania MF Eugest Neli
Flag of Albania MF Fidel Kreka
Flag of Albania MF Florenc Muça
Flag of Albania MF Gentian Kote
Flag of Albania MF Jurgen Xhaka
Flag of Albania MF Vasjan Ballço
Flag of Albania FW Daniel Drabaj
Flag of Kosovo FW Drilon Gashi
Flag of Albania FW Edmond Pino
Flag of Albania FW Erlis Frashëri
Flag of Albania FW Ermal Gega
Flag of Albania FW Igli Kokona
Flag of Albania FW Ligoraq Tiko
Flag of Albania Albi Agolli
Flag of Albania Elvis Zylyftari
Flag of Albania Emilian Memelli

maryland

Carla Ventresca

July 3rd, 2009

oil fantasy

Carla Ventresca is co-creator with husband Henry Beckett of the internationally syndicated comic strip On A Claire Day as well as, starting in October 2007, one of the new cartoonists for Parade Magazine. Carla won the 2007 National Cartoonists Society “Reuben” award for Best Greeting Cards. She also creates greeting cards for American Greetings with husband Henry.

Dan Brown, a friend of hers, named the character of the Camerlengo in Angels and Demons after Carla.

camera digital

The Days of Our Nights

July 3rd, 2009

The Days of Our Nights
The Days of Our Nights cover
Studio album by Luna
Released 26 October 1999
Recorded ???
Genre Indie pop, Indie rock
Length 54:01
Label Jericho
Producer Paul Kimble
Professional reviews
  • Allmusic 3/5 stars link
  • Pitchfork (6.8/10) link
  • Robert Christgau (** honorable mention) link
Luna chronology
Pup Tent
(1997)
The Days of Our Nights (1999) Luna Live
(2001)

The Days of Our Nights is an album by Luna, currently out of print in the United States. It is notable for a Luna-fied cover of the Guns N’ Roses hit “Sweet Child o’ Mine”.

Track listing

All songs written by Dean Wareham, except where noted.

  1. “Dear Diary” – 4:06
  2. “Hello, Little One” – 4:49
  3. “The Old Fashioned Way” – 4:36
  4. “Four Thousand Days” – 4:21
  5. “Seven Steps to Satan” – 4:58
  6. “Superfreaky Memories” – 4:53
  7. “Math Wiz” – 3:59
  8. “Words Without Wrinkles” – 4:22
  9. “The Rustler” – 4:07
  10. “U.S. Out of My Pants!” – 6:08
  11. “The Slow Song” – 3:17
  12. “Sweet Child o’ Mine” (Guns N’ Roses) – 4:25

christian audigier stiletto tank

Event driven application

July 3rd, 2009

micros

In computer programming, event-driven programming or event-based programming is a programming paradigm in which the flow of the program is determined by events—i.e., sensor outputs or user actions (mouse clicks, key presses) or messages from other programs or threads.

Event-driven programming can also be defined as an application architecture technique in which the application has a main loop which is clearly divided down to two sections: the first is event selection (or event detection), and the second is event handling. In embedded systems the same may be achieved using interrupts instead of a constantly running main loop; in that case the former portion of the architecture resides completely in hardware.

Event-driven programs can be written in any language, although the task is easier in languages that provide high-level abstractions, such as closures. Some integrated development environments provide code generation assistants that automate the most repetitive tasks required for event handling.

Contents

  • 1 Contrast with batch programming
    • 1.1 Batch version
    • 1.2 Event-driven version
  • 2 Example: reading from a socket
  • 3 Event handlers
    • 3.1 A trivial event handler
  • 4 Creating event handlers
  • 5 Binding event handlers
  • 6 Main loop
  • 7 See also
  • 8 References
  • 9 External links

Contrast with batch programming

In contrast, in batch programming, the flow is determined by the programmer. Although batch programming is the style taught in beginning programming classes, the more complex event-driven programming is the standard architecture of modern interactive programs.

Here are two pseudocode versions of a trivial program to add two numbers:

Batch version

read a number (from the keyboard) and store it in variable A
read a number (from the keyboard) and store it in variable A
print A+A

Event-driven version

set counter K to 0
repeat
{
   if a number has been entered (from the keyboard)
   {
     store in A and increment K
     if K equals 2 print A+A and reset K to 0
   }
}

At first sight, the event-driven program seems more cumbersome and for such a trivial task is indeed so. However, the second program can be generalized far more easily than the first. Instead of checking just for a number entry we may add code to check whether any of several events has occurred. Then for each event we can execute a particular piece of code that is commonly referred to as an event handler.

A slight variation in the above further illustrates the point:

set counter K to 0
repeat
{
   whenever a number has been entered (from the keyboard) // keyboard-number event
   {
     store in A and increment K // keyboard-number handler
   }
   if K equals 2 // ready-to-sum event
   {
     print A+A and reset K to 0 // ready-to-sum handler
   }
}

Example: reading from a socket

This example uses pseudocode to illustrate how data is read from a socket using an event-driven approach:

function read_next_data(fd)
   data = read_async( fd )
   if len(data) == 0
       => Nothing to read, register to be called back when something is ready
       event_polling_register( fd, read_next_data )
       => Go back to doing something else
   else
       => Data was available and len(data) was received
       add_data_to_buffer( buffer, data )
   end_if
end_function

This example uses Tcl code to illustrate how data is read from a socket using an event-driven approach:

 # open channel
 set chan 
 set buffer ""
 fconfigure $chan -blocking none
 # register event handler
 fileevent $chan readable   

 # process event until end of file
 proc read_next_data {chan bufferVar} {
    upvar #0 $bufferVar buffer
    append buffer 
    if {} {close $chan}
 }

Event handlers

Because the code for checking for events and the main loop does not depend on the application, many programming frameworks take care of their implementation and expect the user to provide only the code for the event handlers. In this simple example there may be a call to event handler called OnKeyEnter() that includes an argument with a string of characters, corresponding to what the user typed before hitting the ENTER key. If we want to add two numbers we need to use storage outside the event handler, so the implementation might look like this

A trivial event handler

globally declare the counter K and the integer T.
OnKeyEnter(character C)
{
   convert C to a number N
   if K is zero store N in T and increment K
   otherwise add N to T, print the result and reset K to zero
}

While keeping track of history is straightforward in a batch program, it requires special attention and planning in an event-driven program.

Creating event handlers

The first step in developing an event-driven program is to write a series of subroutines, or methods, called event-handler routines. These routines handle the events that the main program will respond to. For example, in a GUI program, we might be interested in a single (as opposed to a double) left-button mouse-click on a command button. So a routine would be written to respond to such an event. The routine might open another window, save data to a database or exit the application. Many modern day programming environments provide the programmer with event templates so that the programmer need only supply the event code.

Binding event handlers

The second step is to bind event handlers to events, so that the correct function is called when the event takes place.

Graphical editors combine the first two steps: double-click on a button, and the editor creates an (empty) event handler associated with the user clicking the button and opens a text window so you can edit the event handler.

Main loop

Main article: main loop

The third step in developing an event-driven program is to write the main loop: a function that checks for events, and then calls the matching event handler. Most event-driven programming environments already provide this main loop, so it need not be rewritten.

See also

  • DOM events
  • Event-driven architecture
  • Event Stream Processing (a similar concept)
  • Hardware Description Language
  • Inversion of control
  • Message-oriented middleware
  • Programming paradigm
  • Publish/subscribe
  • Signal programming (a similar concept)
  • SEDA
  • Virtual synchrony, a distributed execution model for event-driven programming

References

  • Grant Palmer: Java Event Handling, Prentice Hall, ISBN 0-13-041802-1.
  • David Luckham: The Power of Events - An Introduction to Complex Event Processing in Distributed Enterprise Systems, Addison-Wesley, ISBN 0-201-72789-7.
  • George S. Fishman: Discrete-Event Simulation - Modeling, Programming, and Analysis, Springer, ISBN 0-387-95160-1.
  • Bertrand Meyer (2004): The power of abstraction, reuse and simplicity: an object-oriented library for event-driven design, in Festschrift in Honor of Ole-Johan Dahl, eds. Olaf Owe et al., Springer-Verlag, Lecture Notes in Computer Science 2635, also available online.
  • Miro Samek: Practical UML Statecharts in C/C++, Second Edition: Event-Driven Programming for Embedded Systems, Newnes 2008, ISBN 978-0-7506-8706-5.
  • Faison, Ted (2006). Event-Based Programming: Taking Events to the Limit. Apress. ISBN 1-59059-643-9. 

yoyo