Article ID : 00099202 / Last Modified : 18/12/2020
Does Blu-ray Disc media have region codes?
 Blu-ray Disc media does have region codes, but unlike DVD players, the region codes for Blu-ray Disc media use letters instead of numbers to indicate a particular zone or region where the discs can be played.
 The Blu-ray Disc region codes are as follows:
 - Region A: North America, South America, U.S. Territories, Japan, South Korea, Taiwan, and other areas of Southeast Asia
 - Region B: Europe, Africa, Middle East, Australia, and New Zealand.
 - Region C: Asia (except for Japan, Korea, Taiwan, and other areas of Southeast Asia)
 - Region FREE: This is not an official setting, but discs that have the region FREE symbol either have no flag set or have all region flags (A, B & C) set.
 NOTE: The region codes for commercial Blu-ray Disc movies can be found on the back of the Blu-ray Disc case.
 The Blu-ray Disc device or drive will support playback of Blu-ray Disc purchased in the same region, unless otherwise specified in the player or computer documentation. In other words, computers and Blu-ray Disc players purchased in countries / regions corresponding to region A can play back Blu-ray Discs for region A, but cannot play back Blu-ray Discs for region B or region C. (The exception is a disc, player or drive coded as Region FREE.) The same will be true for a computer or Blu-ray Disc player purchased in another region.
 Ultra HD Blu-ray Discs are region-free and can be played back using a player that supports Ultra HD Blu-ray, regardless of the region where they were purchased.
 - The region code settings for a Blu-ray Disc player device cannot be changed.
 - The region code settings for a computer Blu-ray Disc optical drive can only be changed within computers that have software capable of effecting that change, and can only be changed a total of five times. Refer to the Blu-ray Disc player software documentation for instructions on how to change the optical drive region code settings.
 - For most Blu-ray Disc optical drives, whatever the region code the software is set to upon the fifth region code setting change will become the permanent setting. Once this occurs the region code setting cannot be changed again.
 - If the region code of the Blu-ray Disc optical drive has been permanently set to an undesirable region, and you wish to use Blu-ray Discs with a different region code setting, the drive will need to be replaced.


text:
Result-based contracts connect payments to environmental effects or the amount of AECPGs provided (environmental outcomes and benefits). In result-oriented agreements, the payment may depend on a simplified measurement based on models or a point system linking a set of practices to expected outcomes. In the latter, the difference between result-based and action-based is more blurred.
For result-based payments, it is necessary first to identify the availability, source, and type of funding and check if this contract type can comply with funding rules – exceptionally if it is foreseen to use CAP funding. Then the availability of knowledge, skills, and institutional capacity must be considered as the identification of suitable indicators and sound monitoring are essential for success. It is crucial to assess whether the target farmers' expected response and uptake will be sufficient to achieve the environmental objectives and, if relevant, whether farmers will cooperate with other stakeholders to define and measure the result indicators. It is also important to consider how to pay for the objectives achieved. When designing result-based contracts, the decision tree flowchart could be used as a support (Fig 6).
Fig 6 Decision tree for designing results-based contracts

source: m-a-p/FineFineWeb


text:
This lovely "Japanese Window" will bring an Asian feel to your garden. And add some good Feng Shui with the element of "Metal". The five different elements of Feng Shui can be incorporated in a garden with different objects and plants.' They are: Earth, Wood, Water, Metal and Fire. Good garden Feng Shui could enhance your outdoor space, creating balanced, calm and inspiring surroundings within nature. The Japanese Window will compliment not only the Asian themed garden but also other styles of garden or outdoor area - modern, cottage or traditional.The "Japanese Window" could be used in the following ways to enhance the garden:
- Create an inviting entrance.
- Define a walkway or separate sections to the garden or add interest to a pathway.
- Use the window to frame a lovely view or highlight a focal point such as a sculpture, large potted plant or water feature.
- Plant a flowering Clematis and allow it to wind its way up and over the frame for a beautiful floral display, that will compliment the shape and design.
Made in WA from Australian Steel
Products may look slightly different from photo.


Beginner's guide to Construct 2
475,688 visits, 2,624,453 views
Creating a heads-up display (HUD)
A heads-up display (aka HUD) is the interface that shows the player's health, score and other information in-game. Let's make a really simple HUD out of a text object.
The HUD always stays the same place on the screen. If we have some interface objects, we don't want them to scroll away as the player walks around - they should stay on the screen. By default, layers scroll. To keep them on the screen, we can use the layer Parallax setting. Parallax allows different layers to scroll at different rates for a sort of semi-3D effect. If we set the parallax to zero, though, the layer won't scroll at all - ideal for a HUD.
Go back to the layers bar we used earlier. Add a new layer called HUD. Make sure it's at the top, and selected (remember this makes it the active layer). The Properties bar should now be displaying its properties. Set the Parallax property to 0, 0 (that's zero on both the X and Y axes).
Double-click a space to insert another object. This time pick the Text object. Place it in the top left corner of the layout. It's going to be hard to see if it's black, so in the properties bar, make it bold, italic, yellow, and choose a slightly larger font size. Resize it wide enough to fit a reasonable amount of text. It should look something like this:
Switch back to the event sheet. Let's keep the text updated with the player's score. In the Every tick event we added earlier, add the action Text -> Set text.
Using the & operator, we can convert a number to text and join it to another text string. So for the text, enter:
"Score: " & Score
The first part ("Score: ") means the text will always begin with the phrase Score:. The second part (Score) is the actual value of the Score global variable. The & joins them together in to one piece of text.
Run the game, and shoot some monsters. Your score is displayed, and it stays at the same place on the screen!
Finishing touches
We're nearly done. Let's add some final touches.
Firstly, let's have some monsters regularly spawning, otherwise once you've shot all the monsters there's nothing left to do. We'll create a new monster every 3 seconds. Add a new event:
Condition: System -> Every X seconds -> 3
Action: System -> Create object -> Monster, layer 1, 1400 (for X), random(1024) (for Y)
1400 is an X co-ordinate just off the right edge of the layout, and random(1024) is a random Y co-ordinate the height of the layout.
Finally, let's have ghosts kill the player.
Condition: Monster -> On collision with another object -> Player
Action: Player -> Destroy
Congratulations, you've made your first HTML5 game in Construct 2! If you have a server and want to show off your work, click Export in the File menu. Construct can save all the project files to a folder on your computer, which you can upload or integrate to a web page. If you don't have your own server, you can share your games on Dropbox.
You've learnt some important basics about Construct2: inserting objects, using layers, behaviors, events and more. Hopefully this should leave you well prepared to learn more about Construct 2! Try exploring its features and see what it can do for you.
The finished thing
Try downloading the finished tutorial project. I've added in some extra features like some "Game over" text, and monsters which gradually speed up. Knowing what you know now, it shouldn't be hard to figure out how it works. There are also lots of comments describing how it works.
Well done! If you have any problems or you think any part of this tutorial could be improved, leave a comment or drop us a message on the forum. We'll see what we can do!
Finally, if you liked this tutorial and think someone you know might also like Construct 2, why not send them a link to this tutorial? Surely it can't hurt :)
Further reading
Want to add music and sound effects? See Sounds & Music in the manual for a quick overview.
You may be interested in our alternative platformer-based beginner's tutorial, How to make a platform game.
If you'd like to know more about how events work in Construct 2, see the section on How Events Work in the manual. It's highly recommended so you can get going quickly with your own projects! Then for even more information, don't forget there is complete documentation in the manual
 - Order by
Want to leave a comment? Login or Register an account!


text:
Geo can be used in combination with Object Storage (AWS S3, or other compatible object storage).
Currently, secondary sites can use either:
- The same storage bucket as the primary site.
- A replicated storage bucket.
- Local storage, if the primary uses local storage.
The storage method (local or object storage) for files is recorded in the database, and the database is replicated from the primary Geo site to the secondary Geo site.
When accessing an uploaded object, we get its storage method (local or object storage) from the database, so the secondary Geo site must match the storage method of the primary Geo site.
Therefore, if the primary Geo site uses object storage, the secondary Geo site must use it too.
- GitLab manage replication, follow Enabling GitLab replication.
- Third-party services manage replication, follow Third-party replication services.
Introduced in GitLab 12.4.
Secondary sites can replicate files stored on the primary site regardless of whether they are stored on the local file system or in object storage.
To enable GitLab replication:
- On the top bar, select Menu > Admin.
- On the left sidebar, select Geo > Nodes.
- Select Edit on the secondary site.
- In the Synchronization Settings section, find the Allow this secondary node to replicate content on Object Storage checkbox to enable it.
For LFS, follow the documentation to set up LFS object storage.
For CI job artifacts, there is similar documentation to configure jobs artifact object storage
For user uploads, there is similar documentation to configure upload object storage
If you want to migrate the primary site's files to object storage, you can configure the secondary in a few ways:
- Use the exact same object storage.
- Use a separate object store but leverage your object storage solution's built-in replication.
- Use a separate object store and enable the Allow this secondary node to replicate content on Object Storage setting.
GitLab does not currently support the case where both:
- The primary site uses local storage.
- A secondary site uses object storage.
When using Amazon S3, you can use Cross-Region Replication (CRR) to have automatic replication between the bucket used by the primary site and the bucket used by secondary sites.
For manual synchronization, or scheduled by

source: openbmb/Ultra-FineWeb


text: A new variation of holographic interferometry has been utilized to perform simultaneoustwo-wavelength measurements, allowing quantitative analysis of the heavy particle and electron densities in a superorbital facility. An air test gas accelerated to 12 km/s was passed over a cylindrical model, simulating reentry conditions encountered by a space vehicle on a superorbital mission. Laser beams with two different wavelengths have been overlapped, passed through the test section, and simultaneously recorded on a single holographic plate. Reconstruction of the hologram generated two separate interferograms at different angles from which the quantitative measurements were made. With this technique, a peak electron concentration of (5.5 ± 0.5) × 1023 m−3 was found behind a bow shock on a cylinder.


text:
Launch of the first Dugong Status Report and Action Plan
13 February 2002 | News story
Cartagena, Colombia 13.02.02. IUCN's Director General, Achim Steiner, and Dr. Klaus Töpfer, Executive Director of the United Nations Environment Programme (UNEP) launched a joint publication, Dugong: Status Report and Action Plans for Countries and Territories, during the seventh special session of UNEP's Governing Council in Columbia yesterday.
Steiner said that the report provides a practical example of global collaboration on environmental issues as also shown by the current Global Ministerial Environmental Forum convening in Cartagena this week. The report, compiled by Helene Marsh, a member of the IUCN/SSC Sirenia Specialist Group has been several years in development and is the first ever global study of the enigmatic "sea cow". The publication presents a global overview of the status of the dugong and its management in the many countries that make up its range. It is hoped the report will help individual countries develop their own, more detailed conservation plans for the species.
"IUCN is proud to be part of this important collaboration. An enormous amount of work has gone into this publication by our Species Survival Commission and we are extremely pleased that UNEP is making the information and recommendations available to global audiences via the Internet," said Steiner during a press conference. The report will be printed in English and French.
Töpfer said that IUCN is one of the most important international environmental organisations, providing a platform for governments and NGOs to meet, and being supported by a large scientist network.
"Status Reports and Action Plans are critical in alerting the global community to the plight of our species - the challenge is to ensure that the recommendations are quickly implemented to reverse the fortunes of dugong populations," said Steiner.
The dugong, the only herbivorous mammal that is strictly marine, is long-lived and reproduces slowly. It relies on seagrasses of coastal habitats which are often under pressure from human activities. Dugongs are also impacted by pollution, disease, hunting, and incidental drowning in fishing nets. The species is listed as Vulnerable in the IUCN Red List of Threatened Species.
The full publication is available on the UNEP website at _URL_
A list of all SSC species Action Plans is available here.

source: HuggingFaceFW/fineweb-edu


How Lighting, Camera Distance and Vampirism Portrays the Death of the Rural Countryside in 1980s America in the Movie 'Near Dark'
America in the nineteen-eighties was a difficult time for farmers and landowners as the expansion of cities destroyed agricultural land and engulfed small towns. Literature and film created in this time period often portrayed rural communities as a utopia due to a negative stigma associated with the advancement of technology and growth of urban life (Dyer 54). The feature film, Near Dark, released in 1987 uses camera distance, lighting and vampirism to portray the death of the rural countryside in nineteen-eighties America.
The movie follows Caleb, a young man having grown up in a rural farming community who wants nothing more than to escape the small-town life and travel "a thousand miles from here tonight." The opening scenes of the movie show the sun setting over the rolling fields, the light fading and darkness falling the further Caleb drives into his small town. This is the first sense the viewer has that lightness, and therefore life, is a feature of the rural areas. As the movie progresses, city scenes are shot solely in the night's darkness, while the countryside remains a contrasting golden hew of daylight. This portrays the sinister aspects of city life. If the protagonist had been a city man falling prey to the vampiric lifestyle, the film would have lost this representation entirely. However, having the vampires, one of which is the love of Caleb's life, lure him into the city, contrasts the innocence or rural life with the malevolence of urban. Vampires, trapped in limbo between life and death, are often shot with there faces half in darkness and half in light. The light depicting the life they yearn to have in the country, the dark depicting the cities that engulf them. Mae, a vampire, meets Caleb in the country, suggesting the city moving into the country. Mae's line, "look, the night, it's so bright it'll blind you," suggests she's been kept in the dark from her crimes, and therefore the cities' crimes. In "Rural America in Film and Literature" Dyer argues that this depiction is idealized: "Although this sentimental yearning for ponds, vegetable gardens, and old houses set deeply in the woods seems relatively harmless, it frequently prevents us from recognizing and understanding the hard realities of our rural population: financial difficulties of the farmers, unemployment of miners and loggers, boredom and confusion of youth living in small country towns." The title itself, Near Dark, is a commentary on the lighting, the skyscrapers that will soon cast a shadow over the countryside, leaving it in darkness. Dyer points out that this sense of rural utopia is fictionalized and portrays a biased view of rural standard of living.
Furthermore, camera distance is used to create a similar effect. After Caleb is initially bit by Mae, he runs home to safety. The fields he runs through are shot with loose framing to suggest freedom and safety. He can run in any direction, it's only the vampire bite and the growing infection that slows him down. However, the moment Caleb is kidnapped by the vampires he is sequestered into an RV where the framing is tight suggesting the confinement of the expanding cities. Tight framing and confined spaces are used every time Caleb is pressured to act in a criminal manner; the train car with only one exit, the dive bar where Severn instructs Caleb to kill for the first time, and the hotel room where the vampires find themselves under the attack of the police. These close shots give the impression of claustrophobia, while the shots of the ranch are always loose with wide frames. When Caleb's father and sister visit the police to enquire about Caleb's missing person's case, we once again have tight framing and shadowy lighting. This suggests that the country folk are turning towards authority, and therefore the city for help, which is leading them into darkness. In the end, it is not the police or even the hospital that brings Caleb to safety and health, but rather his return to the countryside.
Lastly, a significant historical event of the nineteen-eighties is the discovery of AIDS, a disease rampant in many young urban men (CDC 430). In cinema, vampires have often been symbolic of the detriments of unsafe blood transfer and the spreading of disease (Marty 416-432). Near Dark is no exception. Caleb and Mae's first sexual encounter, a simple kiss turned bite, leads to the transfer of blood that infects Caleb and turns him into a vampire. A creature of the night. A city dweller. The drinking of blood is played out in overtly sexual ways, often leading to the death of the human, which suggests the spreading of AIDS throughout the city, causing an influx in mortality. It should be noted that when Caleb watches Mae kill for the first time there are oil rigs in the background. She sucks the blood from a man while the city sucks the "life" from the Earth. Since vampires acting sexually towards their prey before killing them is not unlike the oilrigs "raping" the rural landscape. Although the vampires reside in the city, their prey tends to be people in rural areas, like the country folk in the dive bar, people that won't be missed. Furthermore, when Caleb chooses not to kill in order to survive, there's a sign in the background reading "Because Clean Hay Pays," which once again connects the countryside to life and survival. In the end, Caleb cannot overcome his sickness until he returns to his home in the country. He no longer wants to run away from small town life, instead he's found contentment within. The last scene is of Mae choosing to love by joining Caleb in the country; she too is given a second chance at life now that she has put the city behind her. In "Embracing the metropolis: Urban Vampires in American Cinema of the 1980s and 90s" Abbott writes, "Since Stoker's novel, vampires, particularly in film, have been increasingly attracted to cities in which they are free to hunt amongst the crowds… The vampire in cinema is no longer an outsider representing the pre-modern but rather embraces the metropolis as its home and through it modernity itself." When Caleb and Mae leave the city, they no longer embrace modernity and therefore can no longer be considered vampires.
The nineteen-eighties were a time when rural life was depicted in film and literature as a utopia that should be strived towards, as the expansion of city goes hand in hand with the expansion of crime (Dyer 54). Although this a skewed view of rural living, it is a reminder that with change comes fear. Much like changing from human to vampire. Near Dark uses lighting, camera distance and vampirism to depict the death of the rural countryside due to the expansion of cities. However, it also suggests hope. Hope that people can realize when something is wrong, fight against it, and return to what is safe and pure. An especially poignant line, delivered by Mae in this film is, "Don't think of it as killing. Don't think at all." This line juxtaposes the intention of the film, to have the viewer consider the expansion of evil, and take action against it.
Abbott, Stacey. "Embracing the metropolis: Urban vampires in American cinema of the 1980s and 90s." Vampires: Myths and metaphors of enduring evil 28 (2006): 125.
Bigelow, Kathryn. "Near Dark." Perf. Adrian Pasdar, Jenny Wright, Lance Henriksen. F/M (1987).
Centers for Disease Control and Prevention (CDC. "HIV and AIDS–United States, _PHONE_." MMWR. Morbidity and mortality weekly report 50.21 (2001): 430.
Dyer, Joyce. "Rural America in Film and Literature." The English Journal 76.1 (1987): 54-57.
Fink, Marty. "AIDS Vampires: Reimagining Illness in Octavia Butler's "Fledgling"." Science Fiction Studies (2010): 416-432.
Stoker, Bram. Dracula. Broadview Press, 1997.
I am a screenwriter and story editor based out of Vancouver. I have attended Vancouver Film School and have now joined the amazing Canadian writer's community.
Leave a Reply
You are commenting using your account. Log Out / Change )
Google photo
Twitter picture
Facebook photo
Connecting to %s


"Femicide is any form of violence exercised on women on the basis of an alleged male superiority, through both physical and psychological enslavement." This is the definition of a new term coined due to the growing number of acts of violence against the female gender.
But is this number really growing? Statistics confirm this: every two days in Italy a woman is killed by her partner, without taking into account all other types of non-domestic violence. From murder to rape, from stalking to verbal insult, the types of violence are numerous, but they all affect the victim both psychologically and physically.
The age range of executioners and victims vary, but generally the former are between 31 and 50 years old, while the latter, much younger, between 18 and 31. However, femicide is also increasing at the expense of older women, between 71 and 80 years old.
Although the phenomenon is so widespread and above all serious, the sentences received are not equivalent to the crime inflicted.
Vote DownVote Up (+21 rating, 28 votes)
Bucchi Aurora
1 B Liceo Linguistico
Condividi su facebook
Condividi su twitter
Condividi su linkedin
Leggi Tutto »


text:
- Admiral William Smyth's Sailor's Word Book, 1867
Ullage of a cask is what such a vessel wants of being full.
- Edward Phillips' New World of English Words, 1706
The quantity of liquor contained in a cask partially filled, and the cpacity of the portion which is empty, are termed respectively the wet and dry ullage.
- Encylopedia Britannica, 1883
To Calculate the amount of ullage in a cask. To fill up again an ullaged cask.
- Sir James Murray's New English Dictionary, 1926


14-Year-Old's Anonymous Messaging App Has Nothing To Do With Anonymity
Just as Snapchat is not necessarily about secrecy, Backchat has less to do with the desire to be anonymous than with the desire for a new type of digital conversation.
Daniel Singer understands the marketing value of being a 14-year-old app creator. "People want to move to newer platforms suited for people in their demographic," he says. "I am a teen, so I have a decent picture of what they want."
The app Singer co-founded with his father, Backchat, attempts to paint that picture. It enables anonymous messaging between social network connections. But just as Snapchat is not necessarily about privacy, Backchat has less to do with the desire to be anonymous than with the desire to break from the conversational confines of established social media.
Backchat Screenshots
First of all, it's not actually anonymous. You need to be connected to someone through Facebook or Google+ before you can send them a message, and the app gives the recipient clues about your identity. Those clues might be where you go to school, your gender, or your interests. If the original hints aren't enough to pinpoint your identity, the recipient can purchase more clues (9 clues for $.99).
If Backchat is not actually that anonymous, then what does its anonymous messaging system accomplish? A few things, says Singer:
Avoiding Snap Judgments: "When you don't have your name attached to it, there's a different social weight attributed to it," Singer says. "On Facebook, if you post something, people view that content differently based on whether it's their best friend, a friend they met in high school, or just some person they know, who they know their name." In other words, Backchat allows your recipient to judge what you're saying before they judge who said it.
Discouraging Bullies: "When you want to bully someone, one of the main drivers is you look for that reward at the end," Singer says. "Whether that's a laugh, a smile, approval from your peers, a Facebook like, whatever that is." Backchat is one-on-one, so there's nobody else around to laugh at mean comments. And even if there were, it would not be instantly clear who deserved "credit."
Fun: "When you don't know who it is, you're driven by curiosity to figure out who is messaging you," Singer says. It's a game.
Backchat is Singer's second attempt at entrepreneurship. When he was 12, he created a website called Youtell that allowed for one-way anonymous messages such as "FYI, you have food in your teeth." He and his dad decided to move all efforts to Backchat when it started to gain traction. In the last three months, the company has added 100,000 users, most of whom are between the ages of 14 and 20. In December, Backchat raised $200,000 of seed funding from a small Brazillian VC firm called ArpexCapital.
As Facebook loses steam with teenagers, the tech world has been eager to crown a replacement communication channel for the cool kids. Candidates include Snapchat, which seemingly disappears messages after they're received; Whisper, an anonymous digital cork board for confessions; and WhatsApp, a group messaging platform. These apps' popularity among young users adds up to more than just "sexting," "secrets," and "chat," which might be why established players have often failed when they try to mimic them.
The mission of Singer's anonymous app, for instance, is not anonymity, but to "make texting fun again." Maybe none of us adults had realized that texting had stopped being fun. Or that it was supposed to be fun.
"I wouldn't say it's not fun, I would just say it's become less of a novelty and kind of become utilitarian," Singer says. "I mean, emoticons used to have a lot of meaning, but it's kind of degraded and become integrated into society, and it's not something that's new and exciting."
We don't have time to ask what happens to Backchat's fun factor if it succeeds, like texting and Facebook, at becoming "integrated into society." Singer has to get to Spanish class.
[Guess Who Image: CandyBox Images via Shutterstock]
Add New Comment
 - Md Emon
 I am happy that many young person involved in the development of an application which appears to solve a teen problem.I hope that he will grow up being an application architect focused on serious business in the real world.
 - Mike Odoulle
 I am glad that such a young person is involved in development of an application which appears to solve a teen problem. Hopefully he will grow up being an application architect focused on serious business or research applications in the real world.


text:
In computer science and logic, a dependent type is a type that depends on a value. Dependent types play a central role in intuitionistic type theory and in the design of functional programming languages like ATS, Agda and Epigram.
An example is the type of n-tuples of real numbers. This is a dependent type because the type depends on the value n.
Deciding equality of dependent types in a program may require computations. If arbitrary values are allowed in dependent types, then deciding type equality may involve deciding whether two arbitrary programs produce the same result; hence type checking may become undecidable.
The Curry–Howard correspondence implies that types can be constructed that express arbitrarily complex mathematical properties. If the user can supply a constructive proof that a type is inhabited (i.e., that a value of that type exists) then a compiler can check the proof and convert it into executable computer code that computes the value by carrying out the construction. The proof checking feature makes dependently typed languages closely related to proof assistants. The code-generation aspect provides a powerful approach to formal program verification and proof-carrying code, since the code is derived directly from a mechanically verified mathematical proof.
 Systems of the lambda cube
Henk Barendregt developed the lambda cube as a means of classifying type systems along three axes. The eight corners of the resulting cube-shaped diagram each correspond to a type system, with simply typed lambda calculus in the least expressive corner, and calculus of constructions in the most expressive. The three axes of the cube correspond to three different augmentations of the simply typed lambda calculus: the addition of dependent types, the addition of polymorphism, and the addition of higher kinded type constructors (functions from types to types, for example). The lambda cube is generalized further by pure type systems.
 First order dependent type theory
The system of pure first order dependent types, corresponding to the logical framework LF, is obtained by generalising the function space type of the simply typed lambda calculus to the dependent product type.
Writing for -tuples of real numbers, as above, stands for the type of functions which given a natural number n returns a tuple of real numbers of size n. The usual function space arises as a special case when the range type does not actually depend on the input, e.g. is the type of functions from natural numbers to the real numbers, written as in the simply typed lambda calculus.
 Second order dependent type theory
The system of second order dependent types is obtained from by allowing quantification over type constructors. In this theory the dependent product operator subsumes both the operator of simply typed lambda calculus and the binder of System F.
 Higher order dependently typed polymorphic lambda calculus
The higher order system extends to all four forms of abstraction from the lambda cube: functions from terms to terms, types to types, terms to types and types to terms. The system corresponds to the Calculus of constructions whose derivative, the calculus of inductive constructions is the underlying system of the Coq proof assistant.
 Object-oriented programming
|Language||Actively developed||Paradigm[fn 1]||Tactics||Proof terms||Termination checking||Types can depend on[fn 2]||Universes||Proof irrelevance||Program extraction||Extraction erases irrelevant terms|
|ATS||Yes||Functional / imperative||No||Yes||Yes||?||?||?||Yes||?|
|Cayenne||No||Purely functional||No||Yes||No||Any term||No||No||?||?|
|Coq||Yes||Purely functional||Yes||Yes||Yes||Any term||Yes[fn 5]||No||Haskell, Scheme and OCaml||Yes|
|Dependent ML||No[fn 6]||?||?||Yes||?||Natural numbers||?||?||?||?|
|Epigram 2||Yes||Purely functional||No||Coming soon[dated info]||By construction||Any term||Coming soon[dated info]||Coming soon[dated info]||Coming soon[dated info]||Coming soon[dated info]|
|Guru||No||Purely functional||hypjoin||Yes||Yes||Any term||No||Yes||Carraway||Yes|
|Idris||Yes||Purely functional||Yes||Yes||Yes (optional)||Any term||No||No||Yes||Yes, aggressively|
|Matita||Yes||Purely functional||Yes||Yes||Yes||Any term||Yes||?||OCaml||?|
|NuPRL||No||Purely functional||Yes||Yes||Yes||Any term||Yes||?||Yes||?|
|Twelf||Yes||Logic programming||?||Yes||Yes (optional)||Any (LF) term||No||No||?||?|
 See also
- This refers to the core language, not to any tactic or code generation sublanguage.
- Subject to semantic constraints, such as universe constraints
- Ring solver
- Optional universes, optional universe polymorphism, and optional explicitly specified universes
- Universes, automatically inferred universe constraints (not the same as Agda's universe polymorphism) and optional explicit printing of universe constraints
- Has been superseded by ATS
- Anton Setzer (2007). "Object-oriented programming in dependent type theory". In Henrik Nilsson. Trends in Functional Programming, vol. 7. Intellect. pp. 91–108.
- "Agda download page".
- "Agda Ring Solver".
- "Announce: Agda 2.2.8".
- "ATS Changelog".
- "email from ATS inventor Hongwei Xi".
- "Coq CHANGES in Subversion repository".
- "Epigram homepage".
- "Guru SVN".
- Aaron Stump (6 April 2009). "Verified Programming in Guru". Retrieved 28 September 2010.
- Adam Petcher (1 April 2008). "Deciding Joinability Modulo Ground Equations in Operational Type Theory". Retrieved 14 October 2010.
- "Idris git repository".
- "Idris, a language with dependent types - extended abstract".
- Edwin Brady. "How does Idris compare to other dependently-typed programming languages?".
- "Matita SVN".
- "Xanadu home page".
 Further reading
- Martin-Löf, Per (1984). Intuitionistic Type Theory. Bibliopolis.
- Nordström, Bengt; Petersson, Kent; Smith, Jan M. (1990). Programming in Martin-Löf's Type Theory: An Introduction. Oxford University Press.
- Barendregt, Henk (1992). "Lambda calculi with types". In S. Abramsky, D. Gabbay and T. Maibaum. Handbook of Logic in Computer Science. Oxford Science Publications.
- McBride, Conor; McKinna, James (January 2004). "The view from the left". Journal of Functional Programming 14 (1): 69–111.
- Altenkirch, Thorsten; McBride, Conor; McKinna, James (April 2005). Why dependent types matter.
- Norell, Ulf. Towards a practical programming language based on dependent type theory. PhD thesis, Department of Computer Science and Engineering, Chalmers University of Technology, SE-412 96 Göteborg, Sweden, September 2007.
- Oury, Nicolas and Swierstra, Wouter (2008). "The Power of Pi". Accepted for presentation at ICFP, 2008.
- Norell, Ulf (2008). Dependently Typed Programming in Agda.


text: , Russian olive, or Elaeagnus angustifolia, is native to Europe. Invasive tree roots are seeking nutrients and water and such pipes draw them in for the growth. An invasive tree could be the reason. Invasive Species - (Elaeagnus umbellata) Restricted in Michigan Autumn olive is a deciduos shrub that can grow to 20 feet high. An Olive tree can grow to a height of 40 feet, with a canopy of 15 feet wide. Use a chainsaw or even heavy forest machinery to speed the cutting up, if you've got a large surface to cover. Also, Russian olive tends to alter nitrogen reserves in the soil, fixating it in the roots and wood. Its leaves are bright green on top and distinctively silver underneath. Introduced in 1830 as an ornamental plant that could provide habitat and food to wildlife, Autumn olive was widely planted by the Soil Conservation Service as erosion control near roads and on ridges. Blocked drains and lifted paving may also be a problem. It was introduced to North America in 1830 as an ornamental plant. they extend roots downward up to 9 feet until they reach a groundwa-ter supply. Check in subsequent years for new growth. They interfere with streets and sidewalks, sneak into septic lines and cause trip hazards. Find out about the nature of a treeâs root system before planting it. Itâs important to select trees that donât â¦ In both the United States and Canada, local governments where the plant has become invasive have added Russian olive to their noxious weed list. in a trench around the root zone. Avoid Planting Trees with an Invasive Root System. To make the most of its fragrance, grow this drought-tolerant evergreen near a pathway or an entrance. Of course, hindsight is 20-20 and it is best to choose plants that have well controlled root systems in your garden. Trees that have invasive root systems invade pipes because they contain the three essential elements to sustain life: air, moisture and nutrients. can transform a city or suburban yard. The olive tree is an evergreen fruit tree that is very popular in gardens. For invasive trees, expertsâ advice planting them 25 to 50 feet of space away. The Russian Olive tree, as opposed to the native American silverberry, is considered a highly invasive species in some parts of the United States and Canada. The latin name of this tree is Elaeagnus angustifolia and although it looks very similar to the common olive tree, they belong to different plant families. It's the tree that the book "A Tree Grows in Brooklyn" is referring to. The many qualities of Russian olive set the stage for its introduction in North America: a fast-growing, resilient plant was needed to stave off erosion. Yellow-flowered Russian olive (also on social media), Olive tree with yellow fungus on branches, White substance on lower branches of potted Olive. The Russian Olive tree, as opposed to the native American silverberry, is considered a highly invasive species in some parts of the United States and Canada. Remember: Choose a plant in your zone for best results , and plant at the right time of year . â¦ Young olive trees are sold in 15" boxes and will cost around $85. Save my name, email, and website in this browser for the next time I comment. CalPoly's Urban Forests Ecosystems Institute has a list of other plants with low root damage potential and other attributes to help you avoid tree root problems. Majestic Beauty has an open, airy canopy so will provide filtered but not dense shade. These trees are drought resistant, and grow in shallow, alkaline soils with little fertilization. Planting Precautions for Invasive Trees . Many private land owners around Utah Lake have this invasive plant on their property. Description. Even persons who understand the issue don't easily engage into the work-intensive labor required. In most cases, Russian olive grows dense and lush and keeps other seeds from germinating under it. Most trees growing near buildings cause no damage. Some tree root systems such as Japanese fir, Acacia and Vine maples are considered minimally invasive. Once you find a tree you like, do a little research to see how fast growing and destructive their roots could be. Sweet olive can reach 8 to 15 feet tall and wide, but it's typically pruned shorter or trained as a tree. You could discover now deep these roots are and how far they go by digging down at a distance from the tree and seeing where the roots are. They have shallow roots which are not considered invasive. Russian olive is a small tree with distinctive silvery leaves. But it actually isn't so difficult to reduce Russian olive infestations once your mind is set to it. Do you have struggling plants in your landscape and don't know why? Distinguishable by its silvery narrow leaves, thorny twigs, fragrant yellow flowers and silver berries, Russian olive has been a popular ornamental tree choice among gardeners for many years. Most trees growing near buildings cause no damage. Russian olive roots have a relationship with bacteria that can fix nitrogen in the soil, changing soil conditions. The wise homeowner should learn how to control invasive roots to avoid and minimize these problems. It can also change nutrient cycling and tax water reserves.


The ancient art of egg decorating still thrives in many European countries as a symbolic part of Easter.
Easter egg tree
Easter egg tree at a Russian Orthodox church.
Purple eggs
Etched goose and duck eggs from the Czech Republic.
Bunny by fountain
Easter fountain in Ginsheim/Rhine near Mainz, Germany. Photo: Eric Eichberger
St. Wendel Fountain
Easter fountain in St. Wendel, in Germany's Saarland region. Photo: Amt fuer Stadtmarketing, St. Wendel
Easter Egg tree
An Easter egg tree decorated with eggs from many Central and Eastern European countries.
Easter eggs
Goose eggs from the Czech Republic, decorated with colored straw.
Sharon Hudgins
About the writer
Easter eggs in basket
Goose and duck eggs from Poland, decorated with paint and colored straw.
By Sharon Hudgins
Photos by the author and courtesy German National Tourist Board
Europeans take their Easter egg traditions seriously.
From Scandinavia and Britain in the north to Italy and Greece in the south, from the Slavic countries to Germany, Romania and Hungary, eggs at Easter time are dyed in many colors, decorated with intricate designs, hung from tree branches, strung onto wires, buried in the ground, featured in games, exchanged among friends, baked into breads and taken to church to be blessed on Easter morning.
Pre-Christian Tradition
Although colored eggs are the most salient symbol of Easter today, their association with springtime reaches much farther into the past. Archeologists in Europe have uncovered egg-shaped artifacts with ornate designs made thousands of years before the Christian era.
Folklorists say that decorated eggs were part of pagan spring festivals, for which eggs were painted in bright colors to symbolize blossoming plants. So it's not surprising that the egg, representing the creation of new life, would also find a place in religious celebrations of the resurrection of Christ. The decorating of Easter eggs is a long-established folk art in many parts of Europe, still practiced today. During the 40-day Lenten fast preceding Easter, many Christians abstain from eating certain foods, including eggs. But the hens keep on laying. Some of these excess eggs are dyed a solid color: red is especially symbolic, representing drops of Christ's blood as well as the regeneration of life.
Red eggs in basket
Easter eggs in the Czech Republic, with traditional folk art designs.
Others are decorated with intricate floral or geometric motifs. Several countries and regions in Europe—Poland, Ukraine, Belarus, Moravia, Slovakia, Bohemia, Hungary, Slovenia, Romania, Germany, Austria—are well known for their production of beautifully decorated eggs, using age-old techniques and designs, many of which are unique to that particular place. The connoisseur of folk art eggs can tell at a glance whether an egg has come from the eastern or western part of the Czech Republic, from Slovakia, from northern Croatia or from central Austria.
Maundy Thursday
In many parts of Europe, Maundy Thursday (the day before Good Friday) is the traditional day for decorating Easter eggs. Up through the 19th century, superstitions from earlier times survived in the belief that eggs laid on Maundy Thursday, Good Friday or Easter Sunday had magical powers: to prevent illness, to bring good luck, to act as an aphrodisiac, to ensure that the next baby will be a boy, to forestall an early death, to foretell the future. In some places, Easter eggs were fed to the livestock to protect the animals, or buried in the fields to help produce abundant crops. And Eastern European bee-keepers put a colored Easter egg under each hive to guarantee a good supply of honey.
Eggs on hutch
Decorated goose eggs from the Czech Republic.
A charming custom that dates from the 19th century is the making of an egg tree at Easter. Long branches of budding pussy willows or yellow forsythia are arranged in a vase, and eggs are hung on the branches like Christmas ornaments on an evergreen tree. Traditionally the eggs are hollow chicken or duck eggs, the whites and yolks first removed through pin holes before the eggshells are dyed and decorated, then a loop of ribbon or yarn pulled through the holes for suspending the eggs from the boughs. Sometimes brightly painted wooden eggs are also hung from the branches, along with little wooden birds. These egg trees are especially popular in Germany (where they're known as Ostersträusse, Easter bouquets, or Osterbäume, Easter trees) and in several other parts of Central Europe, too.
Outdoor Easter Trees
In some regions you'll even see outdoor Easter trees, with real or plastic eggs suspended from the branches of live bushes or trees. In the Franconian Alps of northern Bavaria, the fountain or well in the center of many villages is decorated with garlands of evergreens, colorful streamers, fresh flowers and hundreds of painted eggs. For two weeks beginning on Good Friday, more than 200 of these traditional Osterbrunnen (Easter wells) are on display in Franconian towns.
In Europe today, Easter eggs are made from a wide variety of materials: natural egg shells—chicken, duck, goose—with the egg white and yolk blown out of the shell; uncooked eggs with their shells intact; hard-boiled eggs; edible substances such as sugar, chocolate and marzipan; precious metals, enameled metals, wood, wax, porcelain, onyx, marble, glass, cinnabar, cardboard and papier-mâché.
Close up of Easter Eggs
Czech Easter eggs, with traditional folk art designs.
Decorations range from solid colors to painted, etched or batiked designs. Beads, lace, straw, colored paper and decals are also glued onto eggshells. The designs can be geometric, floral, symbolic—whatever suits the egg decorator's fancy. And sizes extend from miniature jeweled eggs made with precious stones to the giant chocolate eggs, up to a meter tall, so beloved by Italian children.
You can see hundreds of handcrafted eggs at the many Easter markets held in Europe during the spring. Prices range from just a few euros for simply painted hens' eggs to several thousand euros for large exotic-bird eggs painted by internationally renowned artists. One of the most stunning eggs I saw at a Munich Ostereiermarkt (Easter egg market) was a huge ostrich egg acid-etched to look like lace. It was priced way beyond my budget, but I still came home with some lovely smaller samples of folk-art eggs by local artists. Now it's time for me to find some pussy willow boughs and start decorating my own egg tree for the season.
_URL_ (German only)
_URL_ (German only)
_URL_ (German Only)
_URL_ (German only)
Czech Republic


ApeScript is a programming language created in 1995. ApeScript is an interpreted procedural dynamic-typed language. It was developed for the Noble Ape Simulation through mid-2005 by Tom Barbalet. ApeScript was designed with the following specifications; simple language, stable memory footprint, minimal crashes, and, small code size.ApeScript is defined in the Noble Ape Simulation manual. Read more on Wikipedia...
25Years Old 20Users ?Jobs
Example code from Wikipedia:
function( being ){
 number_b = 942 ;
 which_function = 2 ;
 offset_function = 15 ;
 which_function = 30 ;
 which_function = 151 ;
 run( which_function ){
 run( actual_three ){
 number_a = 932 ;
 number_a = 19572 ;
 number_a = 19699 ;
 }
 }
 number_result = 19699 ;
 }
Last updated January 18th, 2020
Edit ApeScript on GitHub


How haploid plants are produced?
Haploid production occurs through anther or pollen culture, and they are referred to as androgenic haploids. 2. Gynogenesis: Ovary or ovule culture that results in the production of haploids, known as gynogenic haploids.
What culture produces haploid?
-Application of Anther culture: 1) Production of haploid plants. 2) With this method, we can produce a homozygous diploid plant from haploids. This is achieved by the application of colchicine to the haploid which leads to duplication of chromosomes.
What do you mean by haploid production?
Haploid gametes are produced during meiosis, which is a type of cell division that reduces the number of chromosomes in a parent diploid cell by half. Some organisms, like algae, have haploid portions of their life cycle. Other organisms, like male ants, live as haploid organisms throughout their life cycle.
What are the techniques for haploid production?
What are haploid tissues?
Haploid refers to the presence of a single set of chromosomes in an organism's cells. Sexually reproducing organisms are diploid (having two sets of chromosomes, one from each parent). In humans, only the egg and sperm cells are haploid.
What is haploid culture and how is it obtained?
Hint: Haploid plant culture is a method by which haploid plants are produced in vitro. In seeding plants, a haploid plant culture can be obtained from the cells of the gametes produced on the anther or inside an ovary.
What is the purpose of haploid plants?
Answer. Haploid plants are the plants possessing only a single set of chromosomes in the sporophyte. In vitro production of haploids is of great significance in plant breeding programmes. By the process of androgenesis to produce haploids, followed by chromosome doubling, it is possible to develop exclusive male plants …
What is the significance of haploid culture?
Haploid cell cultures are useful material for induction of mutations and to study the effect of mutation. This method can overcome the masking effect of presence of dominant gene. The screening method for detection of mutational effect is also easier in this technique.
What is the importance of haploid plant culture?
The major importance of haploid plant production is improvement of plant or crop production. Somaclonal variation leads to the creation of additional genetic variability.
What are the advantages of haploid culture?
It may be concluded that the main advantages of the haploid method in breeding self- pollinated crops are a saving of time through fast homozygosis and an improvement of the efficiency of classical breeding methods through the improved reliability of selection.
What is the advantage of haploid?
The nutrient-limitation hypothesis postulates that haploid cells, because they are small and thus have a higher surface area to volume ratio, are advantageous in nutrient-poor environments.
What is haploid plant example?
What is a haploid plant? Haploid plants originate from gametes (or gamete-like cells) that do not go through fertilization, but can still generate a viable individual. Therefore, haploids contain only the chromosome set found after meiosis in male (sperm cells) or female (egg cells) gametes.
What is the importance of haploid production?
What are some advantages of using haploid cells to generate plants?
In contrast, haploid cells enjoy an advantage in nutrient-poor environments, because the smaller haploid cells are better able to deal with nutrient scarcity owing to their greater ratio of surface area to volume (Coelho et al., 2007; Mable and Otto, 1998; Otto and Gerstein, 2008; Perrot, 1994).
How haploid plants are useful?
They are used in plant breeding to obtain a pure homozygous line by using colchicine to double the chromosome number, or by depending on spontaneous mutations. The major importance of haploid plant production is improvement of plant or crop production.
What is the function of haploid?
Typically, haploid cells are created for reproductive purposes. By reducing the genome to one copy, different copies can be rearranged when creating a zygote. By reducing the DNA material in the gametes to haploid, many new combinations are possible within the offspring.
What is the purpose of haploid cells?
What is the importance of haploid cells?
Solution : a. Haploid cells ( gametes ) are required for sexual reproduction . b. The gametes unite at the time of fertilization and thus chromosome number is restored in the progency.
What is the advantage of haploid cells?
Haploid cells are excellent tools to study gene function as they contain a single copy of the genome and are thus unable to mask the effect of mutations.
How do haploid cells reproduce?
Haploid cells in humans are produced by meiosis. This is a type of cell division in which a single diploid parent cell divides to produce four, non-identical haploid daughter cells. Meiosis is used to produced gametes and is a necessary precursor to sexual reproduction.
How many haploid cells are produced?
four daughter cells
The purpose of meiosis is to produce gametes, or sex cells. During meiosis, four daughter cells are produced, each of which are haploid (containing half as many chromosomes as the parent cell).
What are haploids?
Why is haploid produced?
The production of haploids through anther or pollen culture is called androgenesis and to-date, it has been reported in 135 species. The principle involved in the process is to halt the development of pollen cells into a gamete and induce it in a suitable environment to develop into a haploid plant.
What is haploid culture and how does it work?
Haploid culture is an in vitro technique used to produce haploid (cells have half the number of chromosomes) plants. Blackslee et al. (1922) first reported the natural occurrence of the haploid condition in Datura plants, due to parthenogenesis (embryo development from an unfertilized egg).
How is haploid production achieved in Plant Biotechnology?
In the plant biotechnology programmes, haploid production is achieved by two methods. 1. Androgenesis: Haploid production occurs through anther or pollen culture, and they are referred to as androgenic haploids.
What is haploid plant?
Subsequently, Bourgin and Hitsch (1967) obtained the first full-pledged haploid plants from Nicotiana tabacum. Thereafter, much progress has been made in the anther cultures of wheat, rice, maize, pepper and a wide range of economically important species. Haploids may be divided into two broad categories: 1. Monoploids (monohapioids):
How efficient are anther cultures for Haploid production?
Thus, anther cultures are reasonably efficient for haploid production. The major limitation is that the plants not only originate from pollen but also from other parts of anther. This results in the population of plants at different ploidy levels (diploids, aneuploids).
Previous post Do Fireworks damage ships Sea of Thieves?
Next post What paperwork do you need for a film?


Parakaleo is one of the oldest and richest words in the Greek language. The compound—para, "alongside," and kaleo, "to call," conjured up at least five vivid pictures to the Greeks. It was used to mean:
 1. To rekindle a flame. Parakaleo pictured someone gently, patiently blowing on dying embers to bring a fire to life again.
 2. To call forth comfort. Parakaleo pictured the cries of a frightened child in the night calling for the comfort and reassurance of his father.
 3. To call a physician. Parakaleo pictured someone who was injured calling for a physician to set his broken bone or bind his wound.
 4. To stabilize the troops. Parakaleo pictured the military officer who, in the heat of battle, could calmly encourage, exhort, and steady the frightened soldiers in his ranks.
 5. To plead one's case. Parakaleo pictured the counsel for the defense, making an appeal for his client before a judge.
 Jesus told His disciples that the Holy Spirit would be the Parakletos—the Encourager, the Helper, the Consoler, the Comforter—who would take His place. All the things that Jesus was to the disciples, the Holy Spirit would be, when Jesus was gone. The Spirit would do in the disciples what the Lord in the flesh could only do for them.
Series Navigation
<< Man's Barrier with God <<--->> Seven Steps of Spiritual Recovery >>


text:
Fan Li, Yiming Yang
Learning the structures of large undirected graphs with thousands of nodes from data has been an open challenge. In this paper, we use graphical Gaussian model (GGM) as the underlying model and propose a novel ARD style Wishart prior for the precision matrix of the GGM, which encodes the graph structure we want to learn. With this prior, we can get the MAP estimation of the precision matrix by solving (a modified version of) Lasso regressions and achieve a sparse solution. We use our approach to learn genetic regulatory networks from genome-wide expression microarray data and protein-binding location analysis data. Evaluated on the basis of consistency with the GO annotations, the experiments show that our approach has a much better performance than the clustering-based approaches and BN learning approaches in discovering gene regulatory modules.
Content Area: 12. Machine Learning
Subjects: 12. Machine Learning and Discovery; 15.7 Search
Submitted: May 10, 2005


text: A hot-water drill developed during the past 2 years at Alfred Wegener Institute was used to penetrate the Ekstrom Ice Shelf several times near the Georg von Neumayer Station. The drilling operation was successful, and the initial large diameter (>35 cm) allowed easy access to the ocean. One hole was used to install an ultrasonic echo-sounder which recorded the ablation at the ice-shelf bottom continuously. Another hole was used for emplacement of a thermistor string throughout the 237 m thick ice shelf for ice-temperature measurements. Several CTD profiles in the 175 m deepwater column, and the analysis of water samples, provided valuable data for the understanding of ice-shelf-ocean interactions.


module Gem::Security
Signing gems
The Gem::Security implements cryptographic signatures for gems. The section below is a step-by-step guide to using signed gems and generating your own.
Walkthrough
Building your certificate
In order to start signing your gems, you'll need to build a private key and a self-signed certificate. Here's how:
# build a private key and certificate for yourself:
$ gem cert --build _EMAIL_
This could take anywhere from a few seconds to a minute or two, depending on the speed of your computer (public key algorithms aren't exactly the speediest crypto algorithms in the world). When it's finished, you'll see the files "gem-private_key.pem" and "gem-public_cert.pem" in the current directory.
First things first: Move both files to ~/.gem if you don't already have a key and certificate in that directory. Ensure the file permissions make the key unreadable by others (by default the file is saved securely).
Keep your private key hidden; if it's compromised, someone can sign packages as you (note: PKI has ways of mitigating the risk of stolen keys; more on that later).
Signing Gems
In RubyGems 2 and newer there is no extra work to sign a gem. RubyGems will automatically find your key and certificate in your home directory and use them to sign newly packaged gems.
If your certificate is not self-signed (signed by a third party) RubyGems will attempt to load the certificate chain from the trusted certificates. Use gem cert --add signing_cert.pem to add your signers as trusted certificates. See below for further information on certificate chains.
If you build your gem it will automatically be signed. If you peek inside your gem file, you'll see a couple of new files have been added:
$ tar tf your-gem-1.0.gem
metadata.gz
metadata.gz.sum
metadata.gz.sig # metadata signature
data.tar.gz
data.tar.gz.sum
data.tar.gz.sig # data signature
Manually signing gems
If you wish to store your key in a separate secure location you'll need to set your gems up for signing by hand. To do this, set the signing_key and cert_chain in the gemspec before packaging your gem:
s.signing_key = '/secure/path/to/gem-private_key.pem'
s.cert_chain = %w[/secure/path/to/gem-public_cert.pem]
When you package your gem with these options set RubyGems will automatically load your key and certificate from the secure paths.
Signed gems and security policies
Now let's verify the signature. Go ahead and install the gem, but add the following options: -P HighSecurity, like this:
# install the gem with using the security policy "HighSecurity"
$ sudo gem install your.gem -P HighSecurity
The -P option sets your security policy – we'll talk about that in just a minute. Eh, what's this?
$ gem install -P HighSecurity your-gem-1.0.gem
ERROR: While executing gem ... (Gem::Security::Exception)
 root cert /CN=you/DC=example is not trusted
The culprit here is the security policy. RubyGems has several different security policies. Let's take a short break and go over the security policies. Here's a list of the available security policies, and a brief description of each one:
The reason RubyGems refused to install your shiny new signed gem was because it was from an untrusted source. Well, your code is infallible (naturally), so you need to add yourself as a trusted source:
# add trusted certificate
gem cert --add ~/.gem/gem-public_cert.pem
You've now added your public certificate as a trusted source. Now you can install packages signed by your private key without any hassle. Let's try the install command above again:
# install the gem with using the HighSecurity policy (and this time
# without any shenanigans)
$ gem install -P HighSecurity your-gem-1.0.gem
Successfully installed your-gem-1.0
1 gem installed
This time RubyGems will accept your signed package and begin installing.
While you're waiting for RubyGems to work it's magic, have a look at some of the other security commands by running gem help cert:
Options:
 -a, --add CERT Add a trusted certificate.
 -l, --list [FILTER] List trusted certificates where the
 subject contains FILTER
 -r, --remove FILTER Remove trusted certificates where the
 subject contains FILTER
 -b, --build EMAIL_ADDR Build private key and self-signed
 certificate for EMAIL_ADDR
 -C, --certificate CERT Signing certificate for --sign
 -K, --private-key KEY Key for --sign or --build
 -s, --sign CERT Signs CERT with the key from -K
 and the certificate from -C
We've already covered the --build option, and the --add, --list, and --remove commands seem fairly straightforward; they allow you to add, list, and remove the certificates in your trusted certificate list. But what's with this --sign option?
Certificate chains
To answer that question, let's take a look at "certificate chains", a concept I mentioned earlier. There are a couple of problems with self-signed certificates: first of all, self-signed certificates don't offer a whole lot of security. Sure, the certificate says Yukihiro Matsumoto, but how do I know it was actually generated and signed by matz himself unless he gave me the certificate in person?
The second problem is scalability. Sure, if there are 50 gem authors, then I have 50 trusted certificates, no problem. What if there are 500 gem authors? 1000? Having to constantly add new trusted certificates is a pain, and it actually makes the trust system less secure by encouraging RubyGems users to blindly trust new certificates.
Here's where certificate chains come in. A certificate chain establishes an arbitrarily long chain of trust between an issuing certificate and a child certificate. So instead of trusting certificates on a per-developer basis, we use the PKI concept of certificate chains to build a logical hierarchy of trust. Here's a hypothetical example of a trust hierarchy based (roughly) on geography:
 --------------------------
 | _EMAIL_ |
 --------------------------
 |
 -----------------------------------
 | |
 ---------------------------- -----------------------------
 | _EMAIL_ | | _EMAIL_ |
 ---------------------------- -----------------------------
 | | | |
--------------- ---------------- ----------- --------------
| drbrain | | zenspider | | pabs@dc | | tomcope@dc |
--------------- ---------------- ----------- --------------
Now, rather than having 4 trusted certificates (one for drbrain, zenspider, pabs@dc, and tomecope@dc), a user could actually get by with one certificate, the "_EMAIL_" certificate.
Here's how it works:
I install "rdoc-3.12.gem", a package signed by "drbrain". I've never heard of "drbrain", but his certificate has a valid signature from the "_EMAIL_" certificate, which in turn has a valid signature from the "_EMAIL_" certificate. Voila! At this point, it's much more reasonable for me to trust a package signed by "drbrain", because I can establish a chain to "_EMAIL_", which I do trust.
Signing certificates
The --sign option allows all this to happen. A developer creates their build certificate with the --build option, then has their certificate signed by taking it with them to their next regional Ruby meetup (in our hypothetical example), and it's signed there by the person holding the regional RubyGems signing certificate, which is signed at


text:
Structural Biology and Nobel Prizes
The 2019 Nobel Prize for Physiology or Medicine will be awarded this week to three researchers who discovered the molecular details of this central oxygen-sensing process, termed the HIF (Hypoxia-Inducible Factor) system. This award inspired the Molecule of the Month article on Hypoxia-Inducible Factors.
Since its inception, many awards have recognized achievements made in molecular biology, structural biology, and related research.
Browse PDB-101 to explore the structures and methods behind these Prizes.
A list of Nobel prizes and related Molecule of the Month articles is available.


Mammoth elm gives up likely tornado souvenir
Some 45-feet in the air with his tree-trimming bucket, John Carlson gets set to lop off the branch with an in-grown chunk of metal.
Tom Byrne concluded that the tree limb had about 49 rings, making it possible that the metal was blown into the tree crotch by the 1968 Tracy Tornado.
By Seth Schmidt
A behemoth elm tree that shaded the corner of Fourth and Harvey streets for generations, fell to the rasping snarl of John Carlson's chain saw last week.
The 70-foot elm had been dead since last summer, a victim of Dutch elm disease. But the tree had one last legacy to leave: likely debris from the Tracy Tornado of June 13, 1968.
About 45-feet up in the air, imbedded in a 10-inch tree crotch, a four-feet strip of metal was noticed. By the looks of the branch, the tree branch had been growing around the metal for a long time.
After lopping off the metal-infused limb, Carlson brought it into his bucket and took it to the ground for a hand-off to his assistant, Tom Byrne.
Bryne started counting the limb's rings to determine its age. He stopped after reaching 40.
"It could be!" he said excitedly. "I've counted 40 rings and I haven't got to the small outside rings. It could easily be 49-years-old."
A 49-year-old dating would be evidence that the metal strip had been blow into the tree by the Tracy Tornado.
The elm stood on the edge of the tornado's path. Less than a half-block further west, houses were obliterated by the tornado. An elementary school wrecked by the tornado was a block away.
"What else could it be?" besides debris from the tornado, Byrne asked.
The tree limb was given to the Wheels Across the Prairie Museum.
The EF-5 Tracy Tornado destroyed or damaged more than 160 houses and killed nine people. The storm path was about a block and a half wide, striking first on the southwest edge of town and proceeding northeasterly. After crossing the railroad yards near Fifth and South streets, the twister left a path of destruction between Sixth and Fourth streets before exiting the town near Swift Lake Park.


+ can be merged, rather than just the end parts of it.
+ We currently only focus on whole block merging, so in that sense
+ calling this pass tail merge is a bit of a misnomer.
+
+ We distinguish 2 kinds of situations in which blocks can be merged:
+ - same operations, same predecessors. The successor edges coming from one
+ block are redirected to come from the other block.
+ - same operations, same successors. The predecessor edges entering one block
+ are redirected to enter the other block. Note that this operation might
+ involve introducing phi operations.
+
+ For efficient implementation, we would like to value numbers the blocks, and
+ have a comparison operator that tells us whether the blocks are equal.
+ Besides being runtime efficient, block value numbering should also abstract
+ from irrelevant differences in order of operations, much like normal value
+ numbering abstracts from irrelevant order of operations.
+
+ For the first situation (same_operations, same predecessors), normal value
+ numbering fits well. We can calculate a block value number based on the
+ value numbers of the defs and vdefs.
+
+ For the second situation (same operations, same successors), this approach
+ doesn't work so well. We can illustrate this using the example. The calls
+ to free use different vdefs: MEMD.3923_16 and MEMD.3923_14, and these will
+ remain different in value numbering, since they represent different memory
+ states. So the resulting vdefs of the frees will be different in value
+ numbering, so the block value numbers will be different.
+
+ The reason why we call the blocks equal is not because they define the same
+ values, but because uses in the blocks use (possibly different) defs in the
+ same way. To be able to detect this efficiently, we need to do some kind of
+ reverse value numbering, meaning number the uses rather than the defs, and
+ calculate a block value number based on the value number of the uses.
+ Ideally, a block comparison operator will also indicate which phis are needed
+ to merge the blocks.
+
+ For the moment, we don't do block value numbering, but we do insn-by-insn
+ matching, using scc value numbers to match operations with results, and
+ structural comparison otherwise, while ignoring vop mismatches.
+
+
+ IMPLEMENTATION
+
+ 1. The pass first determines all groups of blocks with the same successor
+ blocks.
+ 2. Within each group, it tries to determine clusters of equal basic blocks.
+ 3. The clusters are applied.
+ 4. The same successor groups are updated.
+ 5. This process is repeated from 2 onwards, until no more changes.
+
+
+ LIMITATIONS/TODO
+
+ - block only
+ - handles only 'same operations, same successors'.
+ It handles same predecessors as a special subcase though.
+ - does not implement the reverse value numbering and block value numbering.
+ - improve memory allocation: use garbage collected memory, obstacks,
+ allocpools where appropriate.
+ - no insertion of gimple_reg phis, We only introduce vop-phis.
+ - handle blocks with gimple_reg phi_nodes.
+
+
+ SWITCHES
+
+ - ftree-tail-merge. On at -O2. We may have to enable it only at -Os. */
+
+#include "config.h"
+#include "system.h"
+#include "coretypes.h"
+#include "tm.h"
+#include "tree.h"
+#include "tm_p.h"
+#include "basic-block.h"
+#include "output.h"
+#include "flags.h"
+#include "function.h"
+#include "tree-flow.h"
+#include "timevar.h"
+#include "bitmap.h"
+#include "tree-ssa-alias.h"
+#include "params.h"
+#include "tree-pretty-print.h"
+#include "hashtab.h"
+#include "gimple-pretty-print.h"
+#include "tree-ssa-sccvn.h"
+#include "tree-dump.h"
+
+/* Describes a group of bbs with the same successors. The successor bbs are
+ cached in succs, and the successor edge flags are cached in succ_flags.
+ If a bb has the EDGE_TRUE/VALSE_VALUE flags swapped compared to succ_flags,
+ it's marked in inverse.
+ Additionally, the hash value for the struct is cached in hashval, and
+ in_worklist indicates whether it's currently part of worklist. */
+
+struct same_succ
+{
+ /* The bbs that have the same successor bbs. */
+ bitmap bbs;
+ /* The successor bbs. */
+ bitmap succs;
+ /* Indicates whether the EDGE_TRUE/FALSE_VALUEs of succ_flags are swapped for
+ bb. */
+ bitmap inverse;
+ /* The edge flags for each of the successor bbs. */
+ VEC (int, heap) *succ_flags;
+ /* Indicates whether the struct is currently in the worklist. */
+ bool in_worklist;
+ /* The hash value of the struct. */
+ hashval_t hashval;
+};
+typedef struct same_succ *same_succ_t;
+typedef const struct same_succ *const_same_succ_t;
+
+/* A group of bbs where 1 bb from bbs can replace the other bbs. */
+
+struct bb_cluster
+{
+ /* The bbs in the cluster. */
+ bitmap bbs;
+ /* The preds of the bbs in the cluster. */
+ bitmap preds;
+ /* Index in all_clusters vector. */
+ int index;
+ /* The bb to replace the cluster with. */
+ basic_block rep_bb;
+};
+typedef struct bb_cluster *bb_cluster_t;
+typedef const struct bb_cluster *const_bb_cluster_t;
+
+/* Per bb-info. */
+
+struct aux_bb_info
+{
+ /* The number of non-debug statements in the bb. */
+ int size;
+ /* The same_succ that this bb is a member of. */
+ same_succ_t same_succ;
+ /* The cluster that this bb is a member of. */
+ bb_cluster_t cluster;
+ /* The vop state at the exit of a bb. This is shortlived data, used to
+ communicate data between update_block_by and update_vuses. */
+ tree vop_at_exit;
+ /* The bb that either contains or is dominated by the dependencies of the
+ bb. */
+ basic_block dep_bb;
+};
+
+/* Macros to access the fields of struct aux_bb_info. */
+
+#define BB_SIZE(bb) (((struct aux_bb_info *)bb->aux)->size)
+#define BB_SAME_SUCC(bb) (((struct aux_bb_info *)bb->aux)->same_succ)
+#define BB_CLUSTER(bb) (((struct aux_bb_info *)bb->aux)->cluster)
+#define BB_VOP_AT_EXIT(bb) (((struct aux_bb_info *)bb->aux)->vop_at_exit)
+#define BB_DEP_BB(bb) (((struct aux_bb_info *)bb->aux)->dep_bb)
+
+/* VAL1 and VAL2 are either:
+ - uses in BB1 and BB2, or
+ - phi alternatives for BB1 and BB2.
+ Return true if the uses have the same gvn value. */
+
+static bool
+gvn_uses_equal (tree val1, tree val2)
+{
+ gcc_checking_assert (val1 != NULL_TREE && val2 != NULL_TREE);
+
+ if (val1 == val2)
+ return true;
+
+ if (vn_valueize (val1) != vn_valueize (val2))
+ return false;
+
+ return ((TREE_CODE (val1) == SSA_NAME || CONSTANT_CLASS_P (val1))
+ && (TREE_CODE (val2) == SSA_NAME || CONSTANT_CLASS_P (val2)));
+}
+
+/* Prints E to FILE. */
+
+static void
+same_succ_print (FILE *file, const same_succ_t e


Combining screens
It is a common requirement to be able to gather output data from multiple host screens and present it in a single output page, or to provide a single input page, which then supplies multiple host screens with input data. ZIETrans provides several methods for performing these operations. The different methods include the use of screen combinations, screen customizations, transformations, macros, global variables, and Integration Objects. Which method you use depends upon the operation to be performed and the location of the data.
The following sections summarize four operations and possible ZIETrans methods for performing them. Combining operations and ZIETrans methods for performing them are not limited to those summarized below.
Combining contiguous output data
For this example, contiguous output data is defined as data all of which appears within one rectangular region on a host screen and appears at the same location on subsequent consecutive screens. An example of this would be a list of output data that does not all fit on one screen. In this example, using a terminal emulator a user must navigate forward through consecutive screens to view all of the data. No matter what screen the user views, the data appears within the same location on the display screen.
For this type of data, you can use a ZIETrans screen combination to gather the whole multi-screen block of contiguous data into a single scrollable GUI for the user. A screen combination is one type of ZIETrans screen event. For more information about screen events and creating and editing screen combinations see Working with screen events.
Combining noncontiguous output data
For this example, noncontiguous output data is defined as output data that appears in multiple rectangular regions on a host screen and may appear at different locations on other, not necessarily consecutive, screens of the same host application. Examples of this would be any data that might be spread throughout multiple screens of a host application.
To combine this type of data, you can use ZIETrans macros to automatically navigate through the host screens and use the macro Add Extract Action function either to gather data into global variables for later display in a single transformation or to use a ZIETrans macro event handler transformation to display the data. For information about using ZIETrans macros, see Macros and host terminal. For information about using ZIETrans global variables, see Interacting with global variables.
Combining output from multiple applications
This example assumes that output data, whether contiguous or noncontiguous as defined above, originates from multiple host applications. These host applications can be located on the same host system or different host systems.
To gather data from multiple host applications, you can use ZIETrans Integration Objects and ZIETrans support for background connections to multiple host applications. Integration Objects are Java™ beans that encapsulate interactions with a host application. They are generated from ZIETrans macros and can be driven by Model 1 Web pages.
For each host application, create a background connection and connect, disconnect, and data macros. Create the data macros to accept the appropriate input, navigate through the screens of the application, and extract the data you want to display for the user. From each data macro, generate an Integration Object. From one of the Integration Objects, generate Model 1 Web pages that will pass input to the Integration Object and display the output extracted by the Integration Object. Then edit the output Web page and use the ZIETrans tool to Insert Integration Objects Properties to run the other Integration Objects and add their output to the same Web page. While editing the output Web page you can organize the output from the multiple Integration Objects (that is, from the multiple host applications) in any way you like to combine the data for display to the user. For information about using ZIETrans Integration Objects, see Using Integration Objects. For information about defining ZIETrans connections, see Managing connections.
Combining input for multiple screens
To provide a single input page, which then supplies multiple host screens in the same application with input data, you can use transformations, global variables, and macros. For example, use a transformation to collect the input data into global variables. One method is to use the Global Variable Overrides function, enabled on the Other tab of the Project Settings editor, to allow users to input data on the transformation that will initialize the global variables. See Global variable overrides for more information. Then create a macro that navigates through multiple host screens using the values of the global variables as input, and put a button on the transformation the user can click to run the macro.
To supply input to multiple host applications, you can use Integration Objects running on multiple background connections similar to the method described in the section, Combining output from multiple applications. While building the macros from which the Integration Objects will be generated, you can use the Add Prompt Action function to create prompts for the input, or you can use the Global Variable Overrides function described above.


Calcium citrate
From Wikipedia, the free encyclopedia
Jump to: navigation, search
Calcium citrate
Calcium citrate
CAS number 813-94-5 N5785-44-4 (tetrahydrate)
PubChem 13136
ChemSpider 12584 YesY
EC number 212-391-7
ATC code A12AA13
Jmol-3D images Image 1
Molecular formula Ca3(C6H5O7)2
Molar mass _PHONE_ g/mol (anhydrous)
570.49452 g/mol (tetrahydrate)
Appearance White powder
Odor odorless
Density 1.63 g/cm3, solid
Melting point 120 °C (248 °F; 393 K) (loses water)
Boiling point Decomposes
0.095 g/100 mL (25 °C)
Solubility insoluble in alcohol
MSDS External MSDS
Main hazards Irritant
NFPA 704
Related compounds
Other cations Sodium citrate
Infobox references
Calcium citrate is the calcium salt of citric acid. It is commonly used as a food additive (E333), usually as a preservative, but sometimes for flavor. In this sense, it is similar to sodium citrate. Calcium citrate is also found in some dietary calcium supplements (e.g. Citracal). Calcium makes up 24.1% of calcium citrate (anhydrous) and 21.1% of calcium citrate (tetrahydrate) by mass.
Chemical properties[edit]
Calcium citrate is an odorless white powder, practically insoluble in cold water.
Calcium citrate is an intermediate in the isolation of citric acid from the fermentation process by which citric acid is produced industrially.[1] The citric acid in the broth solution is neutralized by calcium hydroxide, precipitating insoluble calcium citrate. This is then filtered off from the rest of the broth and washed to give clean calcium citrate.
3Ca(OH)2(s) + 2C6H8O7(l) → Ca3(C6H5O7)2(s) + 3H2O(l)
Biological role[edit]
In many individuals, bioavailability of calcium citrate is found to be equal to that of the cheaper calcium carbonate.[2] However, alterations to the digestive tract may change how calcium is digested and absorbed. Unlike calcium carbonate, which is basic and neutralizes stomach acid, calcium citrate has no effect on stomach acid.[3] Calcium carbonate is harder to digest than calcium citrate,[3] and calcium carbonate carries a risk of "acid rebound" (the stomach overcompensates by producing more acid),[3] so individuals who are sensitive to antacids or who have difficulty producing adequate stomach acid may choose calcium citrate over calcium carbonate for supplementation. According to recent research into calcium absorption after gastric bypass surgery,[4] calcium citrate may have improved bioavailability over calcium carbonate in Roux-en-Y gastric bypass patients who are taking calcium citrate as a dietary supplement after surgery. This is mainly due to the changes related to where calcium absorption occurs in the digestive tract of these individuals.
 1. ^ "Use of Lime in the Chemical Industry". National Lime Association. Archived from the original on 2006-09-29. Retrieved 2006-11-25.
 2. ^ Heaney RP, Dowell MS, Bierman J, Hale CA, Bendich A (June 2001). "Absorbability and cost effectiveness in calcium supplementation". Journal of the American College of Nutrition 20 (3): 239–46. doi:10.1080/07315724.2001._PHONE_. PMID _PHONE_. Retrieved 2009-11-03. | PMID _PHONE_
 3. ^ a b c "What you need to know about calcium". Harvard Health Publications. Retrieved 4 August 2014.
 4. ^ Tondapu, P. and Provost, D. and Adams-Huet, B. and Sims, T. and Chang, C. and Sakhaee, K. (June 2009). "Comparison of the Absorption of Calcium Carbonate and Calcium Citrate after Roux-en-Y Gastric Bypass". Obesity Surgery 19 (9): 1256–1261. doi:10.1007/s11695-_PHONE_-6. PMID _PHONE_. Retrieved 2010-08-11.
External links[edit]


text: In this study, we developed a novel three-dimensional (3D) cancer cell chip using a three-floor hierarchical 3D pyramid structure (3D pyramid) to simulate 3D tumor cell growth in vitro and to detect anticancer drugs. The proposed 3D pyramid-based cancer cell chip offered substantial advantages for the agglomerate formation of tumor cells, in which cells could be maintained as tumor spheroids for up to 3 weeks. Soon after HeLa tumor cells adhered to the micropatterned pillar sidewalls, they were suspended between the pillars based on scanning electron microscopy images. Treatment with the anticancer drug oleanolic acid resulted in 46.33% and 5.86% apoptotic cells on the 2D plate and 3D pyramid-based cell chip, respectively, compared with only 0.06% apoptotic cells in the control. The increase in chemoresistance to anticancer drugs in the 3D pyramid-based cell chip might be a result of cell confluence and hypoxia due to the spheroid formation of tumor cells in the 3D pyramid structure. These results indicated that the proposed cell chip could potentially be used for anticancer drug screening or can be incorporated into other models aimed at prolonging various cell functions in culture.


Take the 2-minute tour ×
I have a structure, that i want to write to a regular file as one record, with comma delimited fields. For example
 struct A {
 int a;
 int b;
 } test;
Given test.a=1 and test.b = 2, the regular file will have a corresponding 1,2 as one line record. Another requirement, is that i want to write the entire structure with one system call. So, i created a char buffer[10], stored the value of int a,b into buffer, with comma delimited and a new line character and used Linux system write() call to write the buffer.
The problem is that the record ends up as binary in the file. Which is intuitive as i took away the "typeness" from the variables, the momment i stored them in a char array. I can use standard io, but i would like to learn, how i can achieve the desired results with standard linux system calls with the outlined constraints. How can i preserve the "typness" of a variable. By typeness i mean that if the variable is of type int, the regular file should have human readable digits.
share|improve this question
Do you mean fprintf(file, "%d, %d\n", a, b);? – user529758 Jan 14 '13 at 16:56
This doesn't make sense. You're saying that you create a human-readable string (presumably with sprintf or similar), but then when you write() it, the file contains only binary representation of your values? – Oli Charlesworth Jan 14 '13 at 16:57
The typeness is applied by the human when reading the untyped human-readbale format. To have both (readabilty for humans and typeness for machines) you need to use human-readable format which incorporates the typeness as well. XML with a suitable scheme might help here. Further reading: w3.org/TR/xmlschema11-2 – alk Jan 14 '13 at 17:02
Why the downvote? This question targets an essential problem, which was around for a long time... - and hadn't been solved properly before mark-up came in use. – alk Jan 14 '13 at 17:09
If you want human-readable with types you must explicitly include the types in the formatted output. – Hot Licks Jan 14 '13 at 17:20
add comment
closed as not a real question by H2CO3, Mark, Soner Gönül, brenjt, Mario Jan 14 '13 at 21:08
3 Answers
up vote 5 down vote accepted
What you are looking to do is something like fprintf(fh, "%d,%d\n", test.a, test.b);, if you open the output file with fopen. If you really must use write() for some reason, you can sprintf(buffer, "%d,%d\n", test.a, test.b); write(fd, buffer, strlen(buffer));.
share|improve this answer
How do fprintf or sprintf achieve the correct result? At the lowest level, i am sure they are using write() also. Do they convert int to its ASCII or similar to make it human readable? – Jimm Jan 14 '13 at 17:05
sprintf does not because it only writes to a buffer in memory, not to an output file descriptor. fprintf does end up using write() in some way. What matters here is that both are able to translate numbers in binary form to an array of human readable characters. – whooot Jan 14 '13 at 17:10
It's not what the OP wants, as this way the typness is lost. – alk Jan 14 '13 at 17:15
He wants ints to appear as human readable numbers in the output file and he sure as hell got it. How is the typeness lost when all you have are comma separated numbers? – whooot Jan 14 '13 at 17:18
_USER_ I think you are reading more than there is in the question. – whooot Jan 14 '13 at 18:40
show 2 more comments
fprintf(fh, "struct:A{int:%d,int:%d}\n", test.a, test.b);
In some environments you might be able to write:
fprintf(fh, "struct:%s{%s:%d,%s:%d}\n", typeid(A).name(), typeid(test.a).name(), test.a, typeid(test.b).name(), test.b);
share|improve this answer
I'm curious. Is this some kind of standard format? – whooot Jan 14 '13 at 19:46
_USER_ - Nope. Just a stab at something that sorta fits the OP's presumed "requirement". – Hot Licks Jan 14 '13 at 20:18
ok, thank you for the answer. – whooot Jan 14 '13 at 21:36
add comment
Use fprintf if you want your file to be human readable, writing the file using code like
void writeArrayToFile(struct A* array, int count)
 int i;
 FILE* fp;
 // open file
 fprintf(fp, "%d,%d\n", array[i].a, array[i].b);
share|improve this answer
isnt that standard io? – Jimm Jan 14 '13 at 16:57
_USER_ It is. And now what? – user529758 Jan 14 '13 at 16:59
... also it does not preserve the variables types. – alk Jan 14 '13 at 17:08
_USER_ Can you update your question to show how you format your data before the write call, how your output file is currently structured and how you'd like it to appear please? It sounds like H2CO3, whooot and I may all have misunderstood what you're asking. If many users aren't understanding your question, re-wording it would be useful. – simonc Jan 14 '13 at 17:08
_USER_ Depends on your interpretation of the question I guess. I thought the question was just about getting human readable output (as opposed to using write(fp, &myint, sizeof(myint))) – simonc Jan 14 '13 at 17:11
show 5 more comments


CloudUploader#
class streaming.base.storage.CloudUploader(out, keep_local=False, progress_bar=False, retry=2, exist_ok=False)[source]#
Upload local files to a cloud storage.
clear_local(local)[source]#
Remove the local file if it is enabled.
Parameters
local (str) – A local file path.
classmethod get(out, keep_local=False, progress_bar=False, retry=2, exist_ok=False)[source]#
Instantiate a cloud provider uploader or a local uploader based on remote path.
Parameters
 - out (str | Tuple[str, str]) –
 Output dataset directory to save shard files.
 1. If out is a local directory, shard files are saved locally.
 2. If out is a remote directory, a local temporary directory is created to cache the shard files and then the shard files are uploaded to a remote location. At the end, the temp directory is deleted once shards are uploaded.
 3. If out is a tuple of (local_dir, remote_dir), shard files are saved in the local_dir and also uploaded to a remote location.
 - keep_local (bool) – If the dataset is uploaded, whether to keep the local dataset shard file or remove it after uploading. Defaults to False.
 - progress_bar (bool) – Display TQDM progress bars for uploading output dataset files to a remote location. Default to False.
 - retry (int) – Number of times to retry uploading a file. Defaults to 2.
 - exist_ok (bool) – When exist_ok = False, raise error if the local part of out already exists and has contents. Defaults to False.
Returns
CloudUploader – An instance of sub-class.
list_objects(prefix=None)[source]#
List all objects in the object store with the given prefix.
Parameters
prefix (Optional[str], optional) – The prefix to search for. Defaults to None.
Returns
List[str] – A list of object names that match the prefix.
upload_file(filename)[source]#
Upload file from local instance to remote instance.
Parameters
filename (str) – File to upload.
Raises
NotImplementedError – Override this method in your sub-class.