Beta
×

Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

iPhone Gets .Net App Development

ScuttleMonkey posted more than 4 years ago | from the next-comes-drag-and-drop-development dept.

Novell 327

snydeq writes "Novell has announced MonoTouch 1.0, a commercial SDK that allows developers to build iPhone apps using Microsoft's .Net Framework instead of the Apple-designated C or Objective-C languages. The SDK leverages Novell's Mono runtime for running Windows apps on non-Windows systems, allowing developers to utilize code and libraries written for .Net and programming languages like C#. With MonoTouch, the Mono runtime provides such developer services as garbage collection, thread management, type safety, and Web services, said Mono leader Miguel de Icaza."

cancel ×

327 comments

Sorry! There are no comments related to the filter you selected.

Left fuckers (-1, Offtopic)

Anonymous Coward | more than 4 years ago | (#29419355)

http://www.cnn.com/2009/SHOWBIZ/books/04/27/ayn.rand.atlas.shrugged/index.html?eref=rss_topstories [cnn.com]

For twelve years, you have been asking: Who is John Galt? This is John Galt speaking. I am the man who loves his life. I am the man who does not sacrifice his love or his values. I am the man who has deprived you of victims and thus has destroyed your world, and if you wish to know why you are perishing-you who dread knowledge-I am the man who will now tell you.' The chief engineer was the only one able to move; he ran to a television set and struggled frantically with its dials. But the screen remained empty; the speaker had not chosen to be seen. Only his voice filled the airways of the country-of the world, thought the chief engineer-sounding as if he were speaking here, in this room, not to a group, but to one man; it was not the tone of addressing a meeting, but the tone of addressing a mind.

"You have heard it said that this is an age of moral crisis. You have said it yourself, half in fear, half in hope that the words had no meaning. You have cried that man's sins are destroying the world and you have cursed human nature for its unwillingness to practice the virtues you demanded. Since virtue, to you, consists of sacrifice, you have demanded more sacrifices at every successive disaster. In the name of a return to morality, you have sacrificed all those evils which you held as the cause of your plight. You have sacrificed justice to mercy. You have sacrificed independence to unity. You have sacrificed reason to faith. You have sacrificed wealth to need. You have sacrificed self-esteem to self-denial. You have sacrificed happiness to duty.

"You have destroyed all that which you held to be evil and achieved all that which you held to be good. Why, then, do you shrink in horror from the sight of the world around you? That world is not the product of your sins, it is the product and the image of your virtues. It is your moral ideal brought into reality in its full and final perfection. You have fought for it, you have dreamed of it, and you have wished it, and I-I am the man who has granted you your wish.

"Your ideal had an implacable enemy, which your code of morality was designed to destroy. I have withdrawn that enemy. I have taken it out of your way and out of your reach. I have removed the source of all those evils you were sacrificing one by one. I have ended your battle. I have stopped your motor. I have deprived your world of man's mind.

"Men do not live by the mind, you say? I have withdrawn those who do. The mind is impotent, you say? I have withdrawn those whose mind isn't. There are values higher than the mind, you say? I have withdrawn those for whom there aren't.

"While you were dragging to your sacrificial altars the men of justice, of independence, of reason, of wealth, of self-esteem-I beat you to it, I reached them first. I told them the nature of the game you were playing and the nature of that moral code of yours, which they had been too innocently generous to grasp. I showed them the way to live by another morality-mine. It is mine that they chose to follow.

"All the men who have vanished, the men you hated, yet dreaded to lose, it is I who have taken them away from you. Do not attempt to find us. We do not choose to be found. Do not cry that it is our duty to serve you. We do not recognize such duty. Do not cry that you need us. We do not consider need a claim. Do not cry that you own us. You don't. Do not beg us to return. We are on strike, we, the men of the mind.

"We are on strike against self-immolation. We are on strike against the creed of unearned rewards and unrewarded duties. We are on strike against the dogma that the pursuit of one's happiness is evil. We are on strike against the doctrine that life is guilt.

"There is a difference between our strike and all those you've practiced for centuries: our strike consists, not of making demands, but of granting them. We are evil, according to your morality. We have chosen not to harm you any longer. We are useless, according to your economics. We have chosen not to exploit you any longer. We are dangerous and to be shackled, according to your politics. We have chosen not to endanger you, nor to wear the shackles any longer. We are only an illusion, according to your philosophy. We have chosen not to blind you any longer and have left you free to face reality-the reality you wanted, the world as you see it now, a world without mind.

"We have granted you everything you demanded of us, we who had always been the givers, but have only now understood it. We have no demands to present to you, no terms to bargain about, no compromise to reach. You have nothing to offer us. We do not need you.

"Are you now crying: No, this was not what you wanted? A mindless world of ruins was not your goal? You did not want us to leave you? You moral cannibals, I know that you've always known what it was that you wanted. But your game is up, because now we know it, too.

"Through centuries of scourges and disasters, brought about by your code of morality, you have cried that your code had been broken, that the scourges were punishment for breaking it, that men were too weak and too selfish to spill all the blood it required. You damned man, you damned existence, you damned this earth, but never dared to question your code. Your victims took the blame and struggled on, with your curses as reward for their martyrdom-while you went on crying that your code was noble, but human nature was not good enough to practice it. And no one rose to ask the question: Good?-by what standard?

"You wanted to know John Galt's identity. I am the man who has asked that question.

"Yes, this is an age of moral crisis. Yes, you are bearing punishment for your evil. But it is not man who is now on trial and it is not human nature that will take the blame. It is your moral code that's through, this time. Your moral code has reached its climax, the blind alley at the end of its course. And if you wish to go on living, what you now need is not to return to morality-you who have never known any-but to discover it.

"You have heard no concepts of morality but the mystical or the social. You have been taught that morality is a code of behavior imposed on you by whim, the whim of a supernatural power or the whim of society, to serve God's purpose or your neighbor's welfare, to please an authority beyond the grave or else next door-but not to serve your life or pleasure. Your pleasure, you have been taught, is to be found in immorality, your interests would best be served by evil, and any moral code must be designed not for you, but against you, not to further your life, but to drain it.

"For centuries, the battle of morality was fought between those who claimed that your life belongs to God and those who claimed that it belongs to your neighbors-between those who preached that the good is self-sacrifice for the sake of ghosts in heaven and those who preached that the good is self-sacrifice for the sake of incompetents on earth. And no one came to say that your life belongs to you and that the good is to live it.

"Both sides agreed that morality demands the surrender of your self-interest and of your mind, that the moral and the practical are opposites, that morality is not the province of reason, but the province of faith and force. Both sides agreed that no rational morality is possible, that there is no right or wrong in reason-that in reason there's no reason to be moral.

"Whatever else they fought about, it was against man's mind that all your moralists have stood united. It was man's mind that all their schemes and systems were intended to despoil and destroy. Now choose to perish or to learn that the anti-mind is the anti-life.

"Man's mind is his basic tool of survival. Life is given to him, survival is not. His body is given to him, its sustenance is not. His mind is given to him, its content is not. To remain alive, he must act, and before he can act he must know the nature and purpose of his action. He cannot obtain his food without a knowledge of food and of the way to obtain it. He cannot dig a ditch-or build a cyclotron-without a knowledge of his aim and of the means to achieve it. To remain alive, he must think.

"But to think is an act of choice. The key to what you so recklessly call 'human nature,' the open secret you live with, yet dread to name, is the fact that man is a being of volitional consciousness. Reason does not work automatically; thinking is not a mechanical process; the connections of logic are not made by instinct. The function of your stomach, lungs or heart is automatic; the function of your mind is not. In any hour and issue of your life, you are free to think or to evade that effort. But you are not free to escape from your nature, from the fact that reason is your means of survival-so that for you, who are a human being, the question 'to be or not to be' is the question 'to' think or not to think.'

"A being of volitional consciousness has no automatic course of behavior. He needs a code of values to guide his actions. 'Value' is that which one acts to gain and keep, 'virtue' is the action by which one gains and keeps it. 'Value' presupposes an answer to the question: of value to whom and for what? 'Value' presupposes a standard, a purpose and the necessity of action in the face of an alternative. Where there are no alternatives, no values are possible.

"There is only one fundamental alternative in the universe: existence or non-existence-and it pertains to a single class of entities: to living organisms. The existence of inanimate matter is unconditional, the existence of life is not; it depends on a specific course of action. Matter is indestructible, it changes its forms, but it cannot cease to exist. It is only a living organism that faces a constant alternative: the issue of life or death. Life is a process of self-sustaining and-self-generated action. If an organism fails in that action, it does; its chemical elements remain, but its life goes out of existence. It is only the concept of 'Life' that makes the concept of 'Value' possible. It is only to a living entity that things can be good or evil.

"A plant must feed itself in order to live; the sunlight, the water, the chemicals it needs are the values its nature has set it to pursue; its life is the standard of value directing its actions. But a plant has no choice of action; there are alternatives in the conditions it encounters, but there is no alternative in its function: it acts automatically to further its life, it cannot act for its own destruction.

"An animal is equipped for sustaining its life; its senses provide it with an automatic code of action, an automatic knowledge of what is good for it or evil. It has no power to extend its knowledge or to evade it. In conditions where its knowledge proves inadequate, it dies. But so long as it lives, it acts on its knowledge, with automatic safety and no power of choice, it is unable to ignore its own good, unable to decide to choose the evil and act as its own destroyer.

"Man has no automatic code of survival. His particular distinction from all other living species is the necessity to act in the face of alternatives by means of volitional choice. He has no automatic knowledge of what is good for him or evil, what values his life depends on, what course of action it requires. Are you prattling about an instinct of self-preservation? An instinct of self-preservation is precisely what man does not possess. An 'instinct' is an unerring and automatic form of knowledge. A desire is not an instinct. A desire to live does not give you the knowledge required for living. And even man's desire to live is not automatic: your secret evil today is that that is the desire you do not hold. Your fear of death is not a love of life and will not give you the knowledge needed to keep it. Man must obtain his knowledge and choose his actions by a process of thinking, which nature will not force him t9 perform. Man has the power to act as his own destroyer-and that is the way he has acted through most of his history.

"A living entity that regarded its means of survival as evil, would not survive. A plant that struggled to mangle its roots, a bird that fought to break its wings would not remain for long in the existence they affronted. But the history of man has been a struggle to deny and to destroy his mind.

"Man has been called a rational being, but rationality is a matter of choice-and the alternative his nature offers him is: rational being or suicidal animal. Man has to be man-by choice; he has to hold his life as a value-by choice: he has to learn to sustain it-by choice; he has to discover the values it requires and practice his virtues-by choice.

"A code of values accepted by choice is a code of morality.

"Whoever you are, you who are hearing me now, I am speaking to whatever living remnant is left uncorrupted within you, to the remnant of the human, to your mind, and I say: There is a morality of reason, a morality proper to man, and Man's Life is its standard of value.

"All that which is proper to the life of a rational being is the good; all that which destroys it is the evil.

"Man's life, as required by his nature, is not the life of a mindless brute, of a looting thug or a mooching mystic, but the life of a thinking being-not life by means of force or fraud, but life by means of achievement-not survival at any price, since there's only one price that pays for man's survival: reason.

"Man's life is the standard of morality, but your own life is its purpose. If existence on earth is your goal, you must choose your actions and values by the standard of that which is proper to man-for the purpose of preserving, fulfilling and enjoying the irreplaceable value which is your life.

"Since life requires a specific course of action, any other course will destroy it. A being who does not hold his own life as the motive and goal of his actions, is acting on the motive and standard of death. Such a being is a metaphysical monstrosity, struggling to oppose, negate and contradict the fact of his own existence, running blindly amuck on a trail of destruction, capable of nothing but pain.

"Happiness is the successful state of life, pain is an agent of death. Happiness is that state of consciousness which proceeds from the achievement of one's values. A morality that dares to tell you to find happiness in the renunciation of your happiness-to value the failure of your values-is an insolent negation of morality. A doctrine that gives you, as an ideal, the role of a sacrificial animal seeking slaughter on the altars of others, is giving you death as your standard. By the grace of reality and the nature of life, man-every man-is an end in himself, he exists for his own sake, and the achievement of his own happiness is his highest moral purpose.

"But neither life nor happiness can be achieved by the pursuit of irrational whims. Just as man is free to attempt to survive in any random manner, but will perish unless he lives as his nature requires, so he is free to seek his happiness in any mindless fraud, but the torture of frustration is all he will find, unless he seeks the happiness proper to man. The purpose of morality is to teach you, not to suffer and die, but to enjoy yourself and live.

"Sweep aside those parasites of subsidized classrooms, who live on the profits of the mind of others and proclaim that man needs no morality, no values, no code of behavior. They, who pose as scientists and claim that man is only an animal, do not grant him inclusion in the law of existence they have granted to the lowest of insects. They recognize that every living species has a way of survival demanded by its nature, they do not claim that a fish can live out of water or that a dog can live without its sense of smell-but man, they claim, the most complex of beings, man can survive in any way whatever, man has no identity, no nature, and there's no practical reason why he cannot live with his means of survival destroyed, with his mind throttled and placed at the disposal of any orders they might care to issue.

"Sweep aside those hatred-eaten mystics, who pose as friends of humanity and preach that the highest virtue man can practice is to hold his own life as of no value. Do they tell you that the purpose of morality is to curb man's instinct of self-preservation? It is for the purpose of self-preservation that man needs a code of morality. The only man who desires to be moral is the man who desires to live.

"No, you do not have to live; it is your basic act of choice; but if you choose to live,. you must live as a man-by the work and the judgment of your mind.

"No, you do not have to live as a man; it is an act of moral choice. But you cannot live as anything else-and the alternative is that state of living death which you now see within you and around you, the state of a thing unfit for existence, no longer human and less than animal, a thing that knows nothing but pain and drags itself through its span of years in the agony of unthinking self-destruction.

"No, you do not have to think; it is an act of moral choice. But someone had to think to keep you alive; if you choose to default, you default on existence and you pass the deficit to some moral man, expecting him to sacrifice his good for the sake of letting you survive by your evil.

"No, you do not have to be a man; but today those who are, are not there any longer. I have removed your means of survival-your victims.

"If you wish to know how I have done it and what I told them to make them quit, you are hearing it now. I told them, in essence, the statement I am making tonight. They were men who had lived by my code, but had not known how great a virtue it represented. I made them see it. I brought them, not a re-evaluation, but only an identification of their values.

"We, the men of the mind, are now on strike against you in the name of a single axiom, which is the root of our moral code, just as the root of yours is the wish to escape it: the axiom that existence exists.

"Existence exists-and the act of grasping that statement implies two corollary axioms: that something exists which one perceives and that one exists possessing consciousness, consciousness being the faculty of perceiving that which exists.

"If nothing exists, there can be no consciousness: a consciousness with nothing to be conscious of is a contradiction in terms. A consciousness conscious of nothing but itself is a contradiction in terms: before it could identify itself as consciousness, it had to be conscious of something. If that which you claim to perceive does not exist, what you possess is not consciousness.

"Whatever the degree of your knowledge, these two-existence and consciousness-are axioms you cannot escape, these two are the irreducible primaries implied in any action you undertake, in any part of your knowledge and in its sum, from the first ray of light you perceive at the start of your life to the widest erudition you might acquire at its end. Whether you know the shape of a pebble or the structure of a solar system, the axioms remain the same: that it exists and that you know it.

"To exist is to be something, as distinguished from the nothing of non-existence, it is to be an entity of a specific nature made of specific attributes. Centuries ago, the man who was-no matter what his errors-the greatest of your philosophers, has stated the formula defining the concept of existence and the rule of all knowledge: A is A. A thing is itself. You have never grasped the meaning of his statement. I am here to complete it: Existence is Identity, Consciousness is Identification.

"Whatever you choose to consider, be it an object, an attribute or an action, the law of identity remains the same. A leaf cannot be a stone at the same time, it cannot be all red and all green at the same time, it cannot freeze and burn at the same time. A is A. Or, if you wish it stated in simpler language: You cannot have your cake and eat it, too.

"Are you seeking to know what is wrong with the world? All the disasters that have wrecked your world, came from your leaders' attempt to evade the fact that A is A. All the secret evil you dread to face within you and all the pain you have ever endured, came from your own attempt to evade the fact that A is A. The purpose of those who taught you to evade it, was to make you forget that Man is Man.

"Man cannot survive except by gaining knowledge, and reason is his only means to gain it. Reason is the faculty that perceives, identifies and integrates the material provided by his senses. The task of his senses is to give him the evidence of existence, but the task of identifying it belongs to his reason, his senses tell him only that something is, but what it is must be learned by his mind.

"All thinking is a process of identification and integration. Man perceives a blob of color; by integrating the evidence of his sight and his touch, he learns to identify it as a solid object; he learns to identify the object as a table; he learns that the table is made of wood; he learns that the wood consists of cells, that the cells consist of molecules, that the molecules consist of atoms. All through this process, the work of his mind consists of answers to a single question: What is it? His means to establish the truth of his answers is logic, and logic rests on the axiom that existence exists. Logic is the art of non-contradictory identification. A contradiction cannot exist. An atom is itself, and so is the universe; neither can contradict its own identity; nor can a part contradict the whole. No concept man forms is valid unless he integrates it without contradiction into the total sum of his knowledge. To arrive at a contradiction is to confess an error in one's thinking; to maintain a contradiction is to abdicate one's mind and to evict oneself from the realm of reality.

"Reality is that which exists; the unreal does not exist; the unreal is merely that negation of existence which is the content of a human consciousness when it attempts to abandon reason. Truth is the recognition of reality; reason, man's only means of knowledge, is his only standard of truth.

"The most depraved sentence you can now utter is to ask: Whose reason? The answer is: Yours. No matter how vast your knowledge or how modest, it is your own mind that has to acquire it. It is only with your own knowledge that you can deal. It is only your own knowledge that you can claim to possess or ask others to consider. Your mind is your only judge of truth-and if others dissent from your verdict, reality is the court of final appeal. Nothing but a man's mind can perform that complex, delicate, crucial process of identification which is thinking. Nothing can direct the process but his own judgment. Nothing can direct his judgment but his moral integrity.

"You who speak of a 'moral instinct' as if it were some separate endowment opposed to reason-man's reason is his moral faculty. A process of reason is a process of constant choice in answer to the question: True or False?-Right or Wrong? Is a seed to be planted in soil in order to grow-right or wrong? Is a man's wound to be disinfected in order to save his life-right or wrong? Does the nature of atmospheric electricity permit it to be converted into kinetic power-right or wrong? It is the answers to such questions that gave you everything you have-and the answers came from a man's mind, a mind of intransigent devotion to that which is right.

"A rational process is a moral process. You may make an error at any step of it, with nothing to protect you but your own severity, or you may try to cheat, to fake the evidence and evade the effort of the quest-but if devotion to truth is the hallmark of morality, then there is no greater, nobler, more heroic form of devotion than the act of a man who assumes the responsibility of thinking.

"That which you call your soul or spirit is your consciousness, and that which you call 'free will' is your mind's freedom to think or not, the only will you have, your only freedom, the choice that controls all the choices you make and determines your life and your character.

"Thinking is man's only basic virtue, from which all the others proceed. And his basic vice, the source of all his evils, is that nameless act which all of you practice, but struggle never to admit: the act of blanking out, the willful suspension of one's consciousness, the refusal to think-not blindness, but the refusal to see; not ignorance, but the refusal to know. It is the act of unfocusing your mind and inducing an inner fog to escape the responsibility of judgment-on the unstated premise that a thing will not exist if only you refuse to identify it, that A will not be A so long as you do not pronounce the verdict 'It is.' Non-thinking is an act of annihilation, a wish to negate existence, an attempt to wipe out reality. But existence exists; reality is not to be wiped out, it will merely wipe out the wiper. By refusing to say 'It is,' you are refusing to say 'I am.' By suspending your judgment, you are negating your person. When a man declares: 'Who am I to know?'-he is declaring: 'Who am I to live?'

"This, in every hour and every issue, is your basic moral choice: thinking or non-thinking, existence or non-existence, A or non-A, entity or zero.

"To the extent to which a man is rational, life is the premise directing his actions. To the extent to which he is irrational, the premise directing his actions is death.

"You who prattle that morality is social and that man would need no morality on a desert island-it is on a desert island that he would need it most. Let him try to claim, when there are no victims to pay for it, that a rock is a house, that sand is clothing, that food will drop into his mouth without cause or effort, that he will collect a harvest tomorrow by devouring his stock seed today-and reality will wipe him out, as he deserves; reality will show him that life is a value to be bought and that thinking is the only coin noble enough to buy it.

"If I were to speak your kind of language, I would say that man's only moral commandment is: Thou shalt think. But a 'moral commandment' is a contradiction in terms. The moral is the chosen, not the forced; the understood, not the obeyed. The moral is the rational, and reason accepts no commandments.

"My morality, the morality of reason, is contained in a single axiom: existence exists-and in a single choice: to live. The rest proceeds from these. To live, man must hold three things as the supreme and ruling values of his life: Reason-Purpose-Self-esteem. Reason, as his only tool of knowledge-Purpose, as his choice of the happiness which that tool must proceed to achieve-Self-esteem, as his inviolate certainty that his mind is competent to think and his person is worthy of happiness, which means: is worthy of living. These three values imply and require all of man's virtues, and all his virtues pertain to the relation of existence and consciousness: rationality, independence, integrity, honesty, justice, productiveness, pride.

"Rationality is the recognition of the fact that existence exists, that nothing can alter the truth and nothing can take precedence over that act of perceiving it, which is thinking-that the mind is one's only judge of values and one's only guide of action-that reason is an absolute that permits no compromise-that a concession to the irrational invalidates one's consciousness and turns it from the task of perceiving to the task of faking reality-that the alleged short-cut to knowledge, which is faith, is only a short-circuit destroying the mind-that the acceptance of a mystical invention is a wish for the annihilation of existence and, properly, annihilates one's consciousness.

"Independence is the recognition of the fact that yours is the responsibility of judgment and nothing can help you escape it-that no substitute can do your thinking, as no pinch-hitter can live your life-that the vilest form of self-abasement and self-destruction is the subordination of your mind to the mind of another, the acceptance of an authority over your brain, the acceptance of his assertions as facts, his say-so as truth, his edicts as middle-man between your consciousness and your existence.

"Integrity is the recognition of the fact that you cannot fake your consciousness, just as honesty is the recognition of the fact that you cannot fake existence-that man is an indivisible entity, an integrated unit of two attributes: of matter and consciousness, and that he may permit no breach between body and mind, between action and thought, between his life and his convictions-that, like a judge impervious to public opinion, he may not sacrifice his convictions to the wishes of others, be it the whole of mankind shouting pleas or threats against him-that courage and confidence are practical necessities, that courage is the practical form of being true to existence, of being true to one's own consciousness.

"Honesty is the recognition of the fact that the unreal is unreal and can have no value, that neither love nor fame nor cash is a value if obtained by fraud-that an attempt to gain a value by deceiving the mind of others is an act of raising your victims to a position higher than reality, where you become a pawn of their blindness, a slave of their non-thinking and their evasions, while their intelligence, their rationality, their perceptiveness become the enemies you have to dread and flee-that you do not care to live as a dependent, least of all a dependent on the stupidity of others, or as a fool whose source of values is the fools he succeeds in fooling-that honesty is not a social duty, not a sacrifice for the sake of others, but the most profoundly selfish virtue man can practice: his refusal to sacrifice the reality of his own existence to the deluded consciousness of others.

"Justice is the recognition of the fact that you cannot fake the character of men as you cannot fake the character of nature, that you must judge all men as conscientiously as you judge inanimate objects, with the same respect for truth, with the same incorruptible vision, by as pure and as rational a process of identification-that every man must be judged for what he is and treated accordingly, that just as you do not pay a higher price for a rusty chunk of scrap than for a piece of shining metal, so you do not value a totter above a hero-that your moral appraisal is the coin paying men for their virtues or vices, and this payment demands of you as scrupulous an honor as you bring to financial transactions-that to withhold your contempt from men's vices is an act of moral counterfeiting, and to withhold your admiration from their virtues is an act of moral embezzlement-that to place any other concern higher than justice is to devaluate your moral currency and defraud the good in favor of the evil, since only the good can lose by a default of justice and only the evil can profit-and that the bottom of the pit at the end of that road, the act of moral bankruptcy, is to punish men for their virtues and reward them for their vices, that that is the collapse to full depravity, the Black Mass of the worship of death, the dedication of your consciousness to the destruction of existence.

"Productiveness is your acceptance of morality, your recognition of the fact that you choose to live-that productive work is the process by which man's consciousness controls his existence, a constant process of acquiring knowledge and shaping matter to fit one's purpose, of translating an idea into physical form, of remaking the earth in the image of one's values-that all work is creative work if done by a thinking mind, and no work is creative if done by a blank who repeats in uncritical stupor a routine he has learned from others- that your work is yours to choose, and the choice is as wide as your mind, that nothing more is possible to you and nothing less is human-that to cheat your way into a job bigger than your mind can handle is to become a fear-corroded ape on borrowed motions and borrowed time, and to settle down into a job that requires less than your mind's full capacity is to cut your motor and sentence yourself to another kind of motion: decay-that your work is the process of achieving your values, and to lose your ambition for values is to lose your ambition to live-that your body is a machine, but your mind is its driver, and you must drive as far as your mind will take you, with achievement as the goal of your road-that the man who has no purpose is a machine that coasts downhill at the mercy of any boulder to crash in the first chance ditch, that the man who stifles his mind is a stalled machine slowly going to rust, that the man who lets a leader prescribe his course is a wreck being towed to the scrap heap, and the man who makes another man his goal is a hitchhiker no driver should ever pick up-that your work is the purpose of your life, and you must speed past any killer who assumes the right to stop you, that any value you might find outside your work, any other loyalty or love, can be only travelers you choose to share your journey and must be travelers going on their own power in the same direction.

"Pride is the recognition of the fact that you are your own highest value and, like all of man's values, it has to be earned-that of any achievements open to you, the one that makes all others possible is the creation of your own character-that your character, your actions, your desires, your emotions are the products of the premises held by your mind-that as man must produce the physical values he needs to sustain his life, so he must acquire the values of character that make his life worth sustaining-that as man is a being of self-made wealth, so he is a being of self-made soul-that to live requires a sense of self-value, but man, who has no automatic values, has no automatic sense of self-esteem and must earn it by shaping his soul in the image of his moral ideal, in the image of Man, the rational being he is born able to create, but must create by choice-that the first precondition of self-esteem is that radiant selfishness of soul which desires the best in all things, in values of matter and spirit, a soul that seeks above all else to achieve its own moral perfection, valuing nothing higher than itself-and that the proof of an achieved self-esteem is your soul's shudder of contempt and rebellion against the role of a sacrificial animal, against the vile impertinence of any creed that proposes to immolate the irreplaceable value which is your consciousness and the incomparable glory which is your existence to the blind evasions and the stagnant decay of others.

"Are you beginning to see who is John Galt? I am the man who has earned the thing you did not fight for, the thing you have renounced, betrayed, corrupted, yet were unable fully to destroy and are now hiding as your guilty secret, spending your life in apologies to every professional cannibal, lest it be discovered that somewhere within you, you still long to say what I am now saying to the hearing of the whole of mankind: I am proud of my own value and of the fact that I wish to live.

"This wish-which you share, yet submerge as an evil-is the only remnant of the good within you, but it is a wish one must learn to deserve. His own happiness is man's only moral purpose, but only his own virtue can achieve it. Virtue is not an end in itself. Virtue is not its own reward or sacrificial fodder for the reward of evil. Life is the reward of virtue-and happiness is the goal and the reward of life.

"Just as your body has two fundamental sensations, pleasure and pain, as signs of its welfare or injury, as a barometer of its basic alternative, life or death, so your consciousness has two fundamental emotions, joy and suffering, in answer to the same alternative. Your emotions are estimates of that which furthers your life or threatens it, lightning calculators giving you a sum of your profit or loss. You have no choice about your capacity to feel that something is good for you or evil, but what you will consider good or evil, what will give you joy or pain, what you will love or hate, desire or fear, depends on your standard of value. Emotions are inherent in your nature, but their content is dictated by your mind. Your emotional capacity is an empty motor, and your values are the fuel with which your mind fills it. If you choose a mix of contradictions, it will clog your motor, corrode your transmission and wreck you on your first attempt to move with a machine which you, the driver, have corrupted.

"If you hold the irrational as your standard of value and the impossible as your concept of the good, if you long for rewards you have not earned, for a fortune, or a love you don't deserve, for a loophole in the law of causality, for an A that becomes non-A at your whim, if you desire the opposite of existence-you will reach it. Do not cry, when you reach it, that life is frustration and that happiness is impossible to man; check your fuel: it brought you where you wanted to go.

"Happiness is not to be achieved at the command of emotional whims. Happiness is not the satisfaction of whatever irrational wishes you might blindly attempt to indulge. Happiness is a state of non-contradictory joy-a joy without penalty or guilt, a joy that does not clash with any of your values and does not work for your own destruction, not the joy of escaping from your mind, but of using your mind's fullest power, not the joy of faking reality, but of achieving values that are real, not the joy of a drunkard, but of a producer. Happiness is possible only to a rational man, the man who desires nothing but rational goals, seeks nothing but rational values and finds his joy in nothing but rational actions.

"Just as I support my life, neither by robbery nor alms, but by my own effort, so I do not seek to derive my happiness from the injury or the favor of others, but earn it by my own achievement. Just as I do not consider the pleasure of others as the goal of my life, so I do not consider my pleasure as the goal of the lives of others. Just as there are no contradictions in my values and no conflicts among my desires-so there are no victims and no conflicts of interest among rational men, men who do not desire the unearned and do not view one another with a cannibal's lust, men who neither make sacrifice nor accept them.

"The symbol of all relationships among such men, the moral symbol of respect for human beings, is the trader. We, who live by values, not by loot, are traders, both in matter and in spirit. A trader is a man who earns what he gets and does not give or take the undeserved. A trader does not ask to be paid for his failures, nor does he ask to be loved for his flaws. A trader does not squander his body as fodder or his soul as alms. Just as he does not give his work except in trade for material values, so he does not give the values of his spirit-his love, his friendship, his esteem-except in payment and in trade for human virtues, in payment for his own selfish pleasure, which he receives from men he can respect. The mystic parasites who have, throughout the ages, reviled the traders and held them in contempt, while honoring the beggars and the looters, have known the secret motive of their sneers: a trader is the entity they dread-a man of justice.

"Do you ask what moral obligation I owe to my fellow men? None-except the obligation I owe to myself, to material objects and to all of existence: rationality. I deal with men as my nature and their demands: by means of reason. I seek or desire nothing from them except such relations as they care to enter of their own voluntary choice. It is only with their mind that I can deal and only for my own self-interest, when they see that my interest coincides with theirs. When they don't, I enter no relationship; I let dissenters go their way and I do not swerve from mine. I win by means of nothing but logic and I surrender to nothing but logic. I do not surrender my reason or deal with men who surrender theirs. I have nothing to gain from fools or cowards; I have no benefits to seek from human vices: from stupidity, dishonesty or fear. The only value men can offer me is the work of their mind. When I disagree with a rational man, I let reality be our final arbiter; if I am right, he will learn; if I am wrong, I will; one of us will win, but both will profit.

"Whatever may be open to disagreement, there is one act of evil that may not, the act that no man may commit against others and no man may sanction or forgive. So long as men desire to live together, no man may initiate-do you hear me? no man may start-the use of physical force against others.

"To interpose the threat of physical destruction between a man and his perception of reality, is to negate and paralyze his means of survival; to force-him to act against his own judgment, is like forcing him to act against his own sight. Whoever, to whatever purpose or extent, initiates the use of force, is a killer acting on the premise of death in a manner wider than murder: the premise of destroying man's capacity to live.

"Do not open your mouth to tell me that your mind has convinced you of your right to force my mind. Force and mind are opposites; morality ends where a gun begins. When you declare that men are irrational animals and propose to treat them as such, you define thereby your own character and can no longer claim the sanction of reason-as no advocate of contradictions can claim it. There can be no 'right' to destroy the source of rights, the only means of judging right and wrong: the mind.

"To force a man to drop his own mind and to accept your will as a substitute, with a gun in place of a syllogism, with terror in place of proof, and death as the final argument-is to attempt to exist in defiance of reality. Reality demands of man that he act for his own rational interest; your gun demands of him that he act against it. Reality threatens man with death if he does not act on his rational judgment: you threaten him with death if he does. You place him into a world where the price of his life is the surrender of all the virtues required by life-and death by a process of gradual destruction is all that you and your system will achieve, when death is made to be the ruling power, the winning argument in a society of men.

"Be it a highwayman who confronts a traveler with the ultimatum: 'Your money or your life,' or a politician who confronts a country with the ultimatum: 'Your children's education or your life,' the meaning of that ultimatum is: 'Your mind or your life'-and neither is possible to man without the other.

"If there are degrees of evil, it is hard to say who is the more contemptible: the brute who assumes the right to force the mind of others or the moral degenerate who grants to others the right to force his mind. That is the moral absolute one does not leave open to debate. I do not grant the terms of reason to men who propose to deprive me of reason. I do not enter discussions with neighbors who think they can forbid me to think. I do not place my moral sanction upon a murderer's wish to kill me. When a man attempts to deal with me by force, I answer him-by force.

"It is only as retaliation that force may be used and only against the man who starts its use. No, I do not share his evil or sink to his concept of morality: I merely grant him his choice, destruction, the only destruction he had the right to choose: his own. He uses force to seize a value; I use it only to destroy destruction. A holdup man seeks to gain wealth by killing me; I do not grow richer by killing a holdup man. I seek no values by means of evil, nor do I surrender my values to evil.

"In the name of all the producers who had kept you alive and received your death ultimatums in payment, I now answer you with a single ultimatum of our own: Our work or your guns. You can choose either; you can't have both. We do not initiate the use of force against others or submit to force at their hands. If you desire ever again to live in an industrial society, it Will be on our moral terms. Our terms and our motive power are the antithesis of yours. You have been using fear as your weapon and have been bringing death to man as his punishment for rejecting your morality. We offer him life as his reward for accepting ours.

"You who are worshippers of the zero-you have never discovered that achieving life is not the equivalent of avoiding death. Joy is not 'the absence of pain,' intelligence is not 'the absence of stupidity,' light is not 'the absence of darkness,' an entity is not 'the absence of a nonentity.' Building is not done by abstaining from demolition; centuries of sitting and waiting in such abstinence will not raise one single girder for you to abstain from demolishing-and now you can no longer say to me, the builder: 'Produce, and feed us in exchange for our not destroying your production.' I am answering in the name of all your victims: Perish with and in your own void. Existence is not a negation of negatives. Evil, not value, is an absence and a negation, evil is impotent and has no power but that which we let it extort from us. Perish, because we have learned that a zero cannot hold a mortgage over life.

"You seek escape from pain. We seek the achievement of happiness. You exist for the sake of avoiding punishment. We exist for the sake of earning rewards. Threats will not make us function; fear is not our incentive. It is not death that we wish to avoid, but life that we wish to live.

"You, who have lost the concept of the difference, you who claim that fear and joy are incentives of equal power-and secretly add that fear is the more 'practical'-you do not wish to live, and only fear of death still holds you to the existence you have damned. You dart in panic through the trap of your days, looking for the exit you have closed, running from a pursuer you dare not name to a terror you dare not acknowledge, and the greater your terror the greater your dread of the only act that could save you: thinking. The purpose of your struggle is not to know, not to grasp or name or hear the thing. I shall now state to your hearing: that yours is the Morality of Death.

"Death is the standard of your values, death is your chosen goal, and you have to keep running, since there is no escape from the pursuer who is out to destroy you or from the knowledge that that pursuer is yourself. Stop running, for once-there is no place to run-stand naked, as you dread to stand, but as I see you, and take a look at what you dared to call a moral code.

"Damnation is the start of your morality, destruction is its purpose, means and end. Your code begins by damning man as evil, then demands that he practice a good which it defines as impossible for him to practice. It demands, as his first proof of virtue, that he accept his own depravity without proof. It demands that he start, not with a standard of value, but with a standard of evil, which is himself, by means of which he is then to define the good: the good is that which he is not.

"It does not matter who then becomes the profiteer on his renounced glory and tormented soul, a mystic God with some incomprehensible design or any passer-by whose rotting sores are held as some inexplicable claim upon him-it does not matter, the good is not for him to understand, his duty is to crawl through years of penance, atoning for the guilt of his existence to any stray collector of unintelligible debts, his only concept of a value is a zero: the good is that which is non-man.

"The name of this monstrous absurdity is Original Sin.

"A sin without volition is a slap at morality and an insolent contradiction in terms: that which is outside the possibility of choice is outside the province of morality. If man is evil by birth, he has no will, no power to change it; if he has no will, he can be neither good nor evil; a robot is amoral. To hold, as man's sin, a fact not open to his choice is a mockery of morality. To hold man's nature as his sin is a mockery of nature. To punish him for a crime he committed before he was born is a mockery of justice. To hold him guilty in a matter where no innocence exists is a mockery of reason. To destroy morality, nature, justice and reason by means of a single concept is a feat of evil hardly to be matched. Yet that is the root of your code.

"Do not hide behind the cowardly evasion that man is born with free will, but with a 'tendency' to evil. A free will saddled with a tendency is like a game with loaded dice. It forces man to struggle through the effort of playing, to bear responsibility and pay for the game, but the decision is weighted in favor of a tendency that he had no power to escape. If the tendency is of his choice, he cannot possess it at birth; if it is not of his choice, his will is not free.

"What is the nature of the guilt that your teachers call his Original Sin? What are the evils man acquired when he fell from a state they consider perfection? Their myth declares that he ate the fruit of the tree of knowledge-he acquired a mind and became a rational being. It was the knowledge of good and evil-he became a mortal being. He was sentenced to earn his bread by his labor-he became a productive being. He was sentenced to experience desire-he acquired the capacity of sexual enjoyment. The evils for which they damn him are reason, morality, creativeness; joy-all the cardinal values of his existence. It is not his vices that their myth of man's fall is designed to explain and condemn, it is not his errors that they hold as his guilt, but the essence of his nature as man. Whatever he was-that robot in the Garden of Eden, who existed without mind, without values, without labor, without love-he was not man.

"Man's fall, according to your teachers, was that he gained the virtues required to live. These virtues, by their standard, are his Sin. His evil, they charge, is that he's man. His guilt, they charge, is that he lives.

"They call it a morality of mercy and a doctrine of love for man. No, they say, they do not preach that man is evil, the evil is only that alien object: his body. No, they say, they do not wish to kill him, they only wish to make him lose his body. They seek to help him, they say, against his pain-and they point at the torture rack to which they've tied him, the rack with two wheels that pull him in opposite directions, the rack of the doctrine that splits his soul and body.

"They have cut man in two, setting one half against the other. They have taught him that his body and his consciousness are two enemies engaged in deadly conflict, two antagonists of opposite natures, contradictory claims, incompatible needs, that to benefit one is to injure the other, that his soul belongs to a supernatural realm, but his body is an evil prison holding it in bondage to this earth-and that the good is to defeat his body, to undermine it by years of patient struggle, digging his way to that gorgeous jail-break which leads into the freedom of the grave.

"They have taught man that he is a hopeless misfit made of two elements, both symbols of death. A body without a soul is a corpse, a soul without a body is a ghost-yet such is their image of man's nature: the battleground of a struggle between a corpse and a ghost, a corpse endowed with some evil volition of its own and a ghost endowed with the knowledge that everything known to man is nonexistent, that only the unknowable exists.

"Do you observe what human faculty that' doctrine was designed to ignore? It was man's mind that had to be negated in order to make him fall apart. Once he surrendered reason, he was left at the mercy of two monsters whom he could not fathom or control: of a body moved by unaccountable instincts and of a soul moved by mystic revelations-he was left as the passively ravaged victim of a battle between a robot and a dictaphone.

"And as he now crawls through the wreckage, groping blindly for a way to live, your teachers offer him the help of a morality that proclaims that he'll find no solution and must seek no fulfillment on earth. Real existence, they tell him, is that which he cannot perceive, true consciousness is the faculty of perceiving the non-existent-and if he is unable to understand it, that is the proof that his existence is evil and his consciousness impotent.

"As products of the split between man's soul and body, there are two kinds of teachers of the Morality of Death: the mystics of spirit and the mystics of muscle, whom you call the spiritualists and the materialists, those who believe in consciousness without existence and those who believe in existence without consciousness. Both demand the surrender of your mind, one to their revelation, the other to their reflexes. No matter how loudly they posture in the roles of irreconcilable antagonists, their moral codes are alike, and so are their aims: in matter-the enslavement of man's body, in spirit-the destruction of his mind.

"The good, say the mystics of spirit, is God, a being whose only definition is that he is beyond man's power to conceive-a definition that invalidates man's consciousness and nullifies his concepts of existence. The good, say the mystics of muscle, is Society-a thing which they define as an organism that possesses no physical form, a super-being embodied in no one in particular and everyone in general except yourself. Man's mind, say the mystics of spirit, must be subordinated to the will of God. Man's mind, say the mystics of muscle, must be subordinated to the will of Society. Man's standard of value say the mystics of spirit, is the pleasure 0f God, whose standards are beyond man's power of comprehension and must be accepted on faith. Man's standard of value, say the mystics of muscle, is the pleasure of Society, whose standards are beyond man's right of judgment and must be obeyed as a primary absolute. The purpose of man's life, say both, is to become an abject zombie who serves a purpose he does not know, for reasons he is not to question. His reward, say the mystics of spirit, will be given to him beyond the grave. His reward, say the mystics of muscle, will be given on earth-to his great-grandchildren.

"Selfishness-say both-is man's evil. Man's good-say both-is to give up his personal desires, to deny himself, renounce himself, surrender; man's good is to negate the life he lives. Sacrifice-cry both-is the essence of morality, the highest virtue within man's reach.

"Whoever is now within reach of my voice, whoever is man the victim, not man the killer, I am speaking at the deathbed of your mind, at the brink of that darkness in which you're drowning, and if there still remains within you the power to struggle to hold on to those fading sparks which had been yourself-use it now. The word that has destroyed you is 'sacrifice.' Use the last of your strength to understand its meaning. You're still alive. You have a chance.

"'Sacrifice' does not mean the rejection of the worthless, but of the precious. 'Sacrifice' does not mean the rejection of the evil for the sake of the good, but of the good for the sake of the evil. 'Sacrifice' is the surrender of that which you value in favor of that which you don't.

"If you exchange a penny for a dollar, it is not a sacrifice; if you exchange a dollar for a penny, it is. If you achieve the career you wanted, after years of struggle, it is not a sacrifice; if you then renounce it for the sake of a rival, it is. If you own a bottle of milk and gave it to your starving child, it is not a sacrifice; if you give it to your neighbor's child and let your own die, it is.

"If you give money to help a friend, it is not a sacrifice; if you give it to a worthless stranger, it is. If you give your friend a sum you can afford, it is not a sacrifice; if you give him money at the cost of your own discomfort, it is only a partial virtue, according to this sort of moral standard; if you give him money at the cost of disaster to yourself that is the virtue of sacrifice in full.

"If you renounce all personal desire and dedicate your life to those you love, you do not achieve full virtue: you still retain a value of your own, which is your love. If you devote your life to random strangers, it is an act of greater virtue. If you devote your life to serving men you hate-that is the greatest of the virtues you can practice.

"A sacrifice is the surrender of a value. Full sacrifice is full surrender of all values. If you wish to achieve full virtue, you must seek no gratitude in return for your sacrifice, no praise, no love, no admiration, no self-esteem, not even the pride of being virtuous; the faintest trace of any gain dilutes your virtue. If you pursue a course of action that does not taint your life by any joy, that brings you no value in matter, no value in spirit, no gain, no profit, no reward-if you achieve this state of total zero, you have achieved the ideal of moral perfection.

"You are told that moral perfection is impossible to man-and, by this standard, it is. You cannot achieve it so long as you live, but the value of your life and of your person is gauged by how closely you succeed in approaching that ideal zero which is death.

"If you start, however, as a passionless blank, as a vegetable seeking to be eaten, with no values to reject and no wishes to renounce, you will not win the crown of sacrifice. It is not a sacrifice to renounce the unwanted. It is not a sacrifice. It is not a sacrifice to give your life for others, if death is your personal desire. To achieve the virtue of sacrifice, you must want to live, you must love it, you must burn with passion for this earth and for all the splendor it can give you-you must feel the twist of every knife as it slashes your desires away from your reach and drains your love out of your body, It is not mere death that the morality of sacrifice holds out to you as an ideal, but death by slow torture.

"Do not remind me that it pertains only to this life on earth. I am concerned with no other. Neither are you.

"If you wish to save the last of your dignity, do not call your best actions a 'sacrifice': that term brands you as immoral. If a mother buys food for her hungry child rather than a hat for herself, it is not a sacrifice: she values the child higher than the hat; but it is a sacrifice to the kind of mother whose higher value is the hat, who would prefer her child to starve and feeds him only from a sense of duty. If a man dies fighting for his own freedom, it is not a sacrifice: he is not willing to live as a slave; but it is a sacrifice to the kind of man who's willing. If a man refuses to sell his convictions, it is not a sacrifice, unless he is the sort of man who has no convictions.

"Sacrifice could be proper only for those who have nothing to sacrifice-no values, no standards, no judgment-those whose desires are irrational whims, blindly conceived and lightly surrendered. For a man of moral stature, whose desires are born of rational values, sacrifice is the surrender of the right to the wrong, of the good to the evil.

"The creed of sacrifice is a morality for the immoral-a morality that declares its own bankruptcy by confessing that it can't impart to men any personal stake in virtues or value, and that their souls are sewers of depravity, which they must be taught to sacrifice. By his own confession, it is impotent to teach men to be good and can only subject them to constant punishment.

"Are you thinking, in some foggy stupor, that it's only material values that your morality requires you to sacrifice? And what do you think are material values? Matter has no value except as a means for the satisfaction of human desires. Matter is only a tool of human values. To what service are you asked to give the material tools your virtue has produced? To the service of that which you regard as evil: to a principle you do not share, to a person you do not respect, to the achievement of a purpose opposed to your own-else your gift is not a sacrifice.

"Your morality tells you to renounce the material world and to divorce your values from matter. A man whose values are given no expression in material form, whose existence is unrelated to his ideals, whose actions contradict his convictions, is a cheap little hypocrite-yet that is the man who obeys your morality and divorces his values from matter. The man who loves one woman, but sleeps with another-the man who admires the talent of a worker, but hires another-the man who considers one cause to be just, but donates his money to the support of another-the man who holds high standards of craftsmanship, but devotes his effort to the production of trash-these are the men who have renounced matter, the men who believe that the values of their spirit cannot be brought into material reality.

"Do you say it is the spirit that such men have renounced? Yes, of course. You cannot have one without the other. You are an indivisible entity of matter and consciousness. Renounce your consciousness and you become a brute. Renounce your body and you become a fake. Renounce the material world and you surrender it to evil.

"And that is precisely the goal of your morality, the duty that your code demands of you. Give to that which you do not enjoy, serve that which you do not admire, submit to that which you consider evil-surrender the world to the values of others, deny, reject, renounce your self. Your self is your mind; renounce it and you become a chunk of meat ready for any cannibal to swallow.

"It is your mind that they want you to surrender-all those who preach the creed of sacrifice, whatever their tags or their motives, whether they demand it for the sake of your soul or of your body, whether they promise you another life in heaven or a full stomach on this earth. Those who start by saying: 'It is selfish to pursue your own wishes, you must sacrifice them to the wishes of others'-end up by saying: 'It is selfish to uphold your convictions, you must sacrifice them to the convictions of others.

"This much is true: the most selfish of all things is the independent mind that recognizes no authority higher than its own and no value higher than its judgment of truth. You are asked to sacrifice your intellectual integrity, your logic, your reason, your standard of truth-in favor of becoming a prostitute whose standard is the greatest good for the greatest number.

"If you search your code for guidance, for an answer to the question: 'What is the good?'-the only answer you will find is 'The good of others.' The good is whatever others wish, whatever you feel they feel they wish, or whatever you feel they ought to feel. 'The good of others' is a magic formula that transforms anything into gold, a formula to be recited as a guarantee of moral glory and as a fumigator for any action, even the slaughter of a continent. Your standard of virtue is not an object, not an act, not a principle, but an intention. You need no proof, no reasons, no success, you need not achieve in fact the good of others-all you need to know is that your motive was the good of others, not your own. Your only definition of the good is a negation: the good is the 'non-good for me.'

"Your code-which boasts that it upholds eternal, absolute, objective moral values and scorns the conditional, the relative and the subjective-your code hands out, as its version of the absolute, the following rule of moral conduct: If you wish it, it's evil; if others wish it, it's good; if the motive of your action is your welfare, don't do it; if the motive is the welfare of others, then anything goes.

"As this double-jointed, double-standard morality splits you in half, so it splits mankind into two enemy camps: one is you, the other is all the rest of humanity. You are the only outcast who has no right to wish to live. You are the only servant, the rest are the masters, you are the only giver, the rest are the takers, you are the eternal debtor, the rest are the creditors never to be paid off. You must not question their right to your sacrifice, or the nature of their wishes and their needs: their right is conferred upon them by a negative, by the fact that they are 'non-you.'

"For those of yo

Re:Left fuckers (0, Troll)

RyuuzakiTetsuya (195424) | more than 4 years ago | (#29419855)

At what point will libertarians contempt for humanity end?

Launch Times? (4, Interesting)

glennrrr (592457) | more than 4 years ago | (#29419359)

Well how long does it take to load the whole Mono framework runtime because every second counts on the iPhone?

Re:Launch Times? (5, Informative)

Gwala (309968) | more than 4 years ago | (#29419401)

Probably not too bad - my guess would be it's using the AOT version of Mono, which compiles the framework into the final application, resulting in much better load times in performance-critical environments (see http://www.mono-project.com/AOT [mono-project.com] )

Re:Launch Times? (4, Interesting)

Anonymous Coward | more than 4 years ago | (#29419415)

If I am not mistaken and given that Apple bans other execution environments, the last step in building is compiling to native code. So there are no JIT times, I donÂt know about other loading times.

Re:Launch Times? (-1, Troll)

Anonymous Coward | more than 4 years ago | (#29419759)

i wish i could give windows a material form, a body, like maybe build an android or something. that way i could FUCK WINDOWS UP THE ASS repeatedly and without lubrication. ooo yeah. seriously fuck windows. up the ass. repeatedly. without lubrication. with your dick.

Re:Launch Times? (4, Interesting)

digitalunity (19107) | more than 4 years ago | (#29419439)

I would be more worried about WinForms compatibility. I developed a couple of .NET applications(never again!) and running them with the Mono runtime is markedly different than MS's runtime. Stability wasn't great with Mono and controls didn't always behave the same.

Although I won't developing any more .NET applications if I can avoid it, it would still be nice if Mono matured to the point where it could replace the MS runtime without noticeable difference.

Re:Launch Times? (4, Insightful)

thetoadwarrior (1268702) | more than 4 years ago | (#29419493)

Like MS will ever allow that to happen. If .Net and Mono were completely compatible then it would be much easier to port apps to Linux and therefore remove the need for Windows.

Re:Launch Times? (1)

markdavis (642305) | more than 4 years ago | (#29419521)

Exactly.

Why would anyone get excited about this, I don't know. Sounds like a big mess just waiting to happen.

Re:Launch Times? (4, Insightful)

poetmatt (793785) | more than 4 years ago | (#29419573)

It's no magic that Mono is always a version behind .net or more. It's just that lots of people are not realizing this yet, or the same with silverlight. It's stupid because if it was complete compatible then people would actually have more interest in windows, too.

Re:Launch Times? (1, Insightful)

Anonymous Coward | more than 4 years ago | (#29419601)

I don't think we have to worry about people developing for Silverlight. Anyone who knows anything about Microsoft's history with the Web knows to stay far away from that technology. I say this as a developer paid to build .NET applications.

Re:Launch Times? (5, Interesting)

SanityInAnarchy (655584) | more than 4 years ago | (#29419761)

Actually, there are two large things standing in the way of that:

  1. The best .NET development tool, from what I can tell, is still going to be some form of Visual Studio.
  2. Unlike Java, .NET makes native bindings dirt simple. If you were using a DLL in C++, you can use the same DLL in C# relatively easily.

#1 means that even if people want to target Mono, they might develop in VS.NET anyway, which is a bunch of VS.NET and Windows sales for Microsoft. #2 means that anyone who doesn't deliberately target Mono is probably going to call a bunch of native win32 code, just because it's so trivially easy to do so.

Note that both of these exist even with a "100% compatible" Mono, unless it was also combined with a 100% compatible Wine, and we all know exactly how likely the latter is.

Re:Launch Times? (5, Informative)

Cyberax (705495) | more than 4 years ago | (#29419859)

Java has quite nice bindings to C++ now in form of JNA ( https://jna.dev.java.net/ [java.net] ), it's actually about as powerful as .NET interop.

Of course, managed C++ is even better still.

C++/CLI (1, Funny)

Anonymous Coward | more than 4 years ago | (#29419991)

Managed Extensions to C++ is old.
Newer versions of .NET have C++/CLI now.

C++/CLI is great for interop with legacy applications that will not interop via web services or COM.
I created a wrapper library in C++/CLI that wrapped .Net class libraries I wrote in C#. In this c++/CLI library, I exported functions as C functions using the stdlib calling convention. This allowed a lot of legacy applications on Windows to interop with .net libraries.

Re:Launch Times? (3, Informative)

shutdown -p now (807394) | more than 4 years ago | (#29420273)

Java has quite nice bindings to C++ now in form of JNA ( https://jna.dev.java.net/ [java.net] [java.net] ), it's actually about as powerful as .NET interop.

Yeah, there's also J/Invoke [jinvoke.com] .

The problem is Java language itself. Yes, you can map unsigned ints to signed ones, pointers to longs and structs to classes, and so on - but mappings can get very complicated when API itself is (i.e. lots of nested structs/unions of arrays of pointers, etc). In C#, the type system lets you drop this level of abstraction when needed (or when it is simply inconvenient), and work with raw pointers, C-style fixed-size arrays, structs and unions with exact same memory layout - no marshaling involved. It is faster as well, obviously, since there's no need to copy data back and forth (which can cost a lot for large object graphs).

Re:Launch Times? (0)

Anonymous Coward | more than 4 years ago | (#29419995)

You do realize that Microsoft is working with Novell on the Mono project right?

http://www.mono-project.com/FAQ:_General#Mono_and_Microsoft

Re:Launch Times? (1)

Carbaholic (1327737) | more than 4 years ago | (#29420187)

Your plan is to rid the world of windows by using more .Net applications?~

Re:Launch Times? (0)

Anonymous Coward | more than 4 years ago | (#29420319)

If .Net and Mono were completely compatible then it would be much easier to port apps to Linux and therefore remove the need for Windows.

If that were true, why was Sun unable to destroy Microsoft with Java?

Re:Launch Times? (0)

Anonymous Coward | more than 4 years ago | (#29420461)

Er, the reverse kinda happened, MS tried to kill sun Java.

Re:Launch Times? (0)

Anonymous Coward | more than 4 years ago | (#29420445)

If only the majority of the available apps for Windows was written in 100% pure .NET code.

Most of the relevant Windows apps are still written in C/C++ (Win32 APIs) and even the ones the use .NET are infested with P/Invokes...

Re:Launch Times? (0)

Anonymous Coward | more than 4 years ago | (#29419509)

I donÂt think there is winforms development inside this environment. Only cocoa. The same way mono works with GTK

Re:Launch Times? (1)

yk4ever (1110821) | more than 4 years ago | (#29420023)

Very interesting. What didn't you like about .Net?

Re:Launch Times? (3, Insightful)

palegray.net (1195047) | more than 4 years ago | (#29419463)

My guess is approximately zero seconds, as Apple is sure to kill this.

Re:Launch Times? (1, Informative)

Monkeedude1212 (1560403) | more than 4 years ago | (#29419489)

How does this hurt Apple?

This will only increase the amount of apps they'll have in their store - as just about anyone and their mother can learn C#, or knows it already.

Re:Launch Times? (3, Informative)

Snap E Tom (128447) | more than 4 years ago | (#29419637)

Because a secret agenda of theirs is to make you use XCode to develop apps. This was made quite clear to my former company on a project. That's why you won't see Java nor Flash any time soon, and the ToS explicitly forbids apps that execute external code. I theorize that by doing this they 1) want control and 2)hope that the iPhone development activity propagates into OS X development activity.

Re:Launch Times? (2, Insightful)

Anonymous Coward | more than 4 years ago | (#29419703)

and the ToS explicitly forbids apps that execute external code.

Actually, the ToS explicitly forbids apps that execute external code from running on the iPhone

This is an 'app' that runs on your workstation, used to compile code into an executable. The resulting executable, which would not execute any external code just like all the apps out there now, would be perfectly fine to put on the iPhone.

It's an SDK, not an interpreter.

Re:Launch Times? (4, Insightful)

tyrione (134248) | more than 4 years ago | (#29420103)

Because a secret agenda of theirs is to make you use XCode to develop apps. This was made quite clear to my former company on a project. That's why you won't see Java nor Flash any time soon, and the ToS explicitly forbids apps that execute external code. I theorize that by doing this they 1) want control and 2)hope that the iPhone development activity propagates into OS X development activity.

Yes. Use our Development Tools on our Platform. Truly it is a secretive agenda. Get real.

Re:Launch Times? (1)

palegray.net (1195047) | more than 4 years ago | (#29419657)

Apple cares as much about control over the application development platform as they do about the number of apps in their store. Look, I don't hate Apple or anything (hell, I'm posting this from a new MacBook Pro), but the truth is the truth.

Re:Launch Times? (4, Interesting)

SanityInAnarchy (655584) | more than 4 years ago | (#29419803)

How does this hurt Apple?

I don't know, how does Google Voice hurt Apple? How does Java hurt Apple?

I mean, you can sort of come up with a rationale, but it's really, really strained. Basically, it's not about whether it directly hurts apple, as whether it might hurt Apple, and/or whether it lets Apple give up even a tiny iota of control over their platform, and/or whether it hurts Apple's partners.

In this case, it's probably about control. Apple is going to be very wary of any language which supports eval(), since that means my app could just download new code from the Internet and eval it, thus eliminating the middleman (bottleneck!) that is the Apple approval process for all future updates.

Re:Launch Times? (1)

AHuxley (892839) | more than 4 years ago | (#29420449)

'I don't know, how does Google Voice hurt Apple? How does Java hurt Apple?"
It hurts Apples partners and customers. The telcos ability to use the same device to sell various upgrades and data plans, mins ect.
Your role as a consumer is to link your bank account to a regional telco and enjoy.
Java might just eat into battery life just enough to on average change the device from "lasts a long time on a change" to "the battery life is ok".

Re:Launch Times? (1)

RightSaidFred99 (874576) | more than 4 years ago | (#29420305)

Lolzers. You god modded Troll for absolutely no apparent reason.

Re:Launch Times? (2, Insightful)

Jon Pryor (118031) | more than 4 years ago | (#29419631)

My guess is approximately zero seconds, as Apple is sure to kill this.

Why would Apple want to kill this?

MonoTouch is not significantly different from Unity 3D [unity3d.com] , which has been used to create over 40 games for iPhone [tirania.org] already.

The primary difference is, instead of needing to create user interfaces purely atop GL, you can use the CocoaTouch libraries and get native buttons, frames, html controls, etc.

Average Star Rating 2.6 (1)

glennrrr (592457) | more than 4 years ago | (#29420343)

The 40 games listed on the above link have an average rating of 2.6, and range from a rating of 1 star to 4 stars, which is not bad, but not particularly good either. But at least it is possible to get as high as 4 stars with Mono; I'm actually surprised by that.
  • Downhill bowling 4
  • Billiards 2
  • Space Pig 1
  • Age of Curling 3.5
  • DuskTreaders 2.5
  • X-Razer 2.5
  • Invinciball 3
  • SlidePop 2
  • FuguMaze 2
  • Monkey Diving 2.5
  • Ball-X 3
  • Fugu-Tilt 2
  • Pizza Dash 2
  • Debris 2
  • Trash It! 2.5
  • Asteroid Strike 2.5
  • Crazy Snowboard 3.5
  • Bubble Bang 2.5
  • Bounce Pop 2.5
  • FuguBall 2
  • SpaceRace 2.5
  • iDrone 2.5
  • Mars Explorer 3.5
  • Christmas Spell 3.5
  • Alpha Blocks 3.5
  • Cricket 2
  • Rock em Blocks 3
  • Pealagic Tones 3
  • Average = 2.6

Re:Average Star Rating 2.6 (1)

harlows_monkeys (106428) | more than 4 years ago | (#29420403)

The 40 games listed on the above link have an average rating of 2.6, and range from a rating of 1 star to 4 stars, which is not bad, but not particularly good either

Actually, it is pretty good. For some reason, there are a lot of idiots rating iPhone apps, and apps that perform exactly as the developer claimed, flawlessly, get a lot of low ratings. I've seen a lot of reviews that go like this: "This app does what it is advertised to do, perfectly. It's very useful. But I wish it also did (function that makes no sense for this app)" and they rate it 1 star.

Re:Launch Times? (1)

samkass (174571) | more than 4 years ago | (#29420277)

They can't kill the project, but they can deny any app written with it from the App Store, which they will almost certainly do as any sort of interpreted code is already a violation of the iPhone SDK licensing agreement. Unless this compiles everything all the way down to ARM machine code, it's already banned.

Re:And voila! Programming for monkeys. (-1, Troll)

Anonymous Coward | more than 4 years ago | (#29419617)

Seriously, when people start learning real programming languages instead of this garbage?

Re:And voila! Programming for monkeys. (1, Informative)

Anonymous Coward | more than 4 years ago | (#29419697)

Unless you write directly in machine code then you have no place to talk little nooblet.

Re:And voila! Programming for monkeys. (0)

Anonymous Coward | more than 4 years ago | (#29419793)

Troll

Why CLR (.NET mono) and not JVM (Java)? (1)

Old97 (1341297) | more than 4 years ago | (#29419371)

Anyone know why Apple would allow one and not the other? Does Mono not multitask or something?

Re:Why CLR (.NET mono) and not JVM (Java)? (4, Insightful)

pavon (30274) | more than 4 years ago | (#29419465)

MonoTouch compiles the code into a native executable, rather than shipping with a VM. Apple has no reason to disallow that.

Re:Why CLR (.NET mono) and not JVM (Java)? (0)

Anonymous Coward | more than 4 years ago | (#29419501)

So does GCC -- hell, you can even get native-compiled Eclipse if you really want it.

Re:Why CLR (.NET mono) and not JVM (Java)? (2, Informative)

Bill, Shooter of Bul (629286) | more than 4 years ago | (#29419647)

So, Apple would also allow applications that were compiled with a gcj like compiler as well. I think that's the point the GP was making.

code running on a virtual machine => not allowed
Code not running in a virtual machine => allowed

Re:Why CLR (.NET mono) and not JVM (Java)? (1)

ceoyoyo (59147) | more than 4 years ago | (#29420261)

Actually, it's not even that. The TOS state that you can't run external code. If you want to write an app that includes an interpreter, VM or whatever that runs code included in the app then that's fine.

The Commodore emulator that was approved on the app store the other day was such a program. It was pulled because it was found that it was trivial to get user access to the basic interpreter (thus running outside code). When they patch it up so that you can't do that, it'll probably get approved again.

Re:Why CLR (.NET mono) and not JVM (Java)? (4, Insightful)

kalirion (728907) | more than 4 years ago | (#29419503)

Since when has it needed a reason?

Re:Why CLR (.NET mono) and not JVM (Java)? (0)

Anonymous Coward | more than 4 years ago | (#29419559)

It even simplifies MultiTouch down to a single finger; in keeping with Apple design philosophies.

Re:Why CLR (.NET mono) and not JVM (Java)? (3, Informative)

SanityInAnarchy (655584) | more than 4 years ago | (#29419627)

As the AC says, so does gcj.

But the problem is, Apple has explicitly disallowed "frameworks" -- and this definitely sounds like a framework.

Which is another way of saying, Apple is strongly discouraging if not outright banning one of the best ways to re-use code. Can anyone tell me why Apple is against code re-use on the iPhone?

Re:Why CLR (.NET mono) and not JVM (Java)? (2, Insightful)

Xtravar (725372) | more than 4 years ago | (#29419777)

Because they don't just want crappy ports of crappy applications. They want stylish applications designed specifically with the iPhone in mind. And guess what? It's working!

Re:Why CLR (.NET mono) and not JVM (Java)? (2, Informative)

icepick72 (834363) | more than 4 years ago | (#29420109)

I'm unsure the mechanism used by Mono but when programming .NET on Windows there is a utility -- named ILMerge -- which allows multiple assemblies including Framework assemblies (dlls) to be compiled into one executable file; allowing a .NET app to without the need for a Framework's file to be spread about, kind of erasing the fact a Framework exists.
(I.E. http://research.microsoft.com/en-us/people/mbarnett/ilmerge.aspx [microsoft.com] )

Also on the Windows side the Common Language Runtime (CLR) of the .NET Framework is always needed to interpret the Microsoft Intermediate Language Code (MSIL) "byte code" which is the result of explicit compilation of any .NET application's source code files (C#, VB.NET, COBOL.NET, IronPython, etc). This is a sort of on-the-fly compilation or translation to machine code that occurs as needed.

Even when a native executable for the Windows machine is generated by the ngen.exe utility, in order to bypass MSIL translation at runtime,
(I.E. http://msdn.microsoft.com/en-us/library/6t9t5wcf(VS.71).aspx [microsoft.com] ) ...the CLR is still required to manage the native executable (memory management, garbage collection, security, type enforcement, etc).

Much C# code is compiled in managed mode (requires management by the CLR) and I'm sure the C# implementation for the iPhone would express this simplified programming model too. However I'd be interested to know what Novell/Mono team does with the CLR in the iPhone given the fact Apple does not like frameworks, interpreters or compilers. Does Mono compile the CLR feature into iPhone app, or get rid of it in favour of C# on top of a different concept, or something else?

Re:Why CLR (.NET mono) and not JVM (Java)? (1)

ClosedSource (238333) | more than 4 years ago | (#29420251)

I don't think there's much of a desire on anyone's part to port legacy applications to the iPhone. The value comes from being able to use a language you already know which for most people isn't Objective-C.

Re:Why CLR (.NET mono) and not JVM (Java)? (1)

PixelSlut (620954) | more than 4 years ago | (#29420041)

Can you give a link to support this? I have never heard before that they ban frameworks.

Re:Why CLR (.NET mono) and not JVM (Java)? (1)

ceoyoyo (59147) | more than 4 years ago | (#29420271)

Me either. As far as I know there's no problem using a framework provided it's embedded in the .app bundle. The iPhone NSBundle class seems to provide the same framework support that the Mac NSBundle class does, except for the obvious filesystem restrictions.

Re:Why CLR (.NET mono) and not JVM (Java)? (1)

tyrione (134248) | more than 4 years ago | (#29420123)

As the AC says, so does gcj.

But the problem is, Apple has explicitly disallowed "frameworks" -- and this definitely sounds like a framework.

Which is another way of saying, Apple is strongly discouraging if not outright banning one of the best ways to re-use code. Can anyone tell me why Apple is against code re-use on the iPhone?

Yes Mono Frameworks are a POS compared to Cocoa Frameworks. See how substantial your arguement is and how I counter with an equally weighted view? In this case, it's true, but it's just as weak of me to proclaim it simply to defend one or the other. Bottom line, Cocoa Frameworks are unified down to the kernel. Mono would be a second-rate solution.

Re: Why not? (0)

Anonymous Coward | more than 4 years ago | (#29420287)

Mono touch wraps the objective C frameworks directly, and isn't intended as a replacement. It uses interface builder to build the UI, loads XIB files, and runs with NSApplication, UIView, etc.

Since monotouch is binary compiled, it is not using a framework or a JIT compiler. Basically there shouldn't be any difference between a mono app binary and an objective C binary other than one is compiled via the objective C toolchain and the other is compiled via the mono-touch toolchain.

The advantage of mono-touch would be that it allows C# programmers to write iphone apps without having to learn objective C, and it allows corporate .net developers to port their in house apps to the iphone more easily.

Re: Why not? (2, Insightful)

jcr (53032) | more than 4 years ago | (#29420345)

The advantage of mono-touch would be that it allows C# programmers to write iphone apps without having to learn objective C

That is not an advantage. Go native, or don't bother.

-jcr

Re:Why CLR (.NET mono) and not JVM (Java)? (1)

pavon (30274) | more than 4 years ago | (#29420379)

But the problem is, Apple has explicitly disallowed "frameworks" -- and this definitely sounds like a framework.

No, they haven't. They disallow (and don't provide any mechanism for) the installation of shared libraries that more than one application uses and they disallow the inclusion of any type of interpreter, or VM that could allow people to run applications that haven't been blessed by Apple and sold through the iPhone App Store.

I know that java can be compiled, and there is absolutely no reason that someone couldn't write a Java->Cocoa wrappers and submit a compiled version of a java app if they wanted. AFAIK, no one has tried*. What Apple refused to include was Sun's port of the Java VM, which breaks both the rules above.

* I don't blame them. I wouldn't want to waste my time developing anything for the iPhone given their approval policies.

Re:Why CLR (.NET mono) and not JVM (Java)? (3, Informative)

asdf7890 (1518587) | more than 4 years ago | (#29419551)

Anyone know why Apple would allow one and not the other? Does Mono not multitask or something?

No one has said that they would. The article itself states:

Mono is associated with the LGPL (GNU Lesser General Public) license used for distributing free and open source software, Novell with MonoKit is distributing Mono under commercial terms. The LGPL requires that users can replace an LGPL library with their own version of a library, a conflict with App Store requirements, according to Novell.

Re:Why CLR (.NET mono) and not JVM (Java)? (1)

loufoque (1400831) | more than 4 years ago | (#29420083)

Mono and CLR are different implementations of the CLI.
Mono is *not* CLR.

Mono (0)

girlintraining (1395911) | more than 4 years ago | (#29419405)

Isn't Mono the KISSing disease? ;)

Re:Mono (1)

jd2112 (1535857) | more than 4 years ago | (#29419639)

Isn't Mono the KISSing disease?

I think their groupies probably have worse diseases than mono...

Sorry, Wrong KISS.

Re:Mono (2, Interesting)

visualight (468005) | more than 4 years ago | (#29420063)

I seem to recall that Mono is/was justified by Miguel de Icaza by virtue of .Nets inevitable popularity (Linux distros would _need_ it). When I read this article I can't help but think that the motivation here is to help make .Net more popular, and by extension, Mono more popular. I already abandoned Gnome, but I won't be surprised when I'm eventually trapped into installing Mono. .Net, C#, Java, I can't point to technical deficiencies and say "That's why I don't like them," but I have _never_ liked an app written in one of those languages. Buggy dependency ridden crapware has been my experience. I realize that an applications overall suckiness isn't necessarily a reflection of the language, but experience has set that expectation for me.

I really hope this project goes nowhere, because the last thing I want is more .Net apps in the world, on any platform.

Re:Mono (-1, Troll)

Anonymous Coward | more than 4 years ago | (#29420225)

I think you may be prejudiced by your previous experience. I only hope that you don't base your relationships with other people on similar logic. ( all individuals of class X I have met have done this, therefore all members of class X do this. They will never improve, I hate them and do not want to meet them anywhere at anytime).

Re:Mono (4, Insightful)

jcr (53032) | more than 4 years ago | (#29420385)

I think you may be prejudiced by your previous experience.

If his position is based on experience, then by definition it's not prejudice.

-jcr

Violates the developer agreement (2, Insightful)

TejWC (758299) | more than 4 years ago | (#29419515)

I am pretty sure that adding your own runtime violates the developer agreement. The article didn't say if this "app" ever got approved but I highly doubt it would (this would also raise concern about the lack of Java on the iPhone).

Also, using C# is not THAT much better than the native objective-c. According to the article, it seems that "mono-touch" is really just C# bindings for cocoa-touch and I have had very bad experience using C# bindings for just about any kind of C code (allocated memory not getting garbage collected, bindings/function names being outdated, unmanged heap space limits, etc.). It sounds fun to play around with but I definitely wouldn't invest a large amount of time/money on it yet.

No it doesn't. (4, Informative)

Plug (14127) | more than 4 years ago | (#29419823)

MonoTouch is not a runtime or an "app", it's a library with which you compile your own apps. It's ahead-of-time compiled [mono-project.com] , so you end up with a binary that runs on the iPhone.

It opens up iPhone development for millions of .NET developers, many of which may not have any interest in Objective C. And as far as I can tell, C#/Mono is garbage collected, and Objective C (on the iPhone) is not. That alone would make me interested in checking it out.

If you're not interested, that's great, move along.

Re:No it doesn't. (1)

Shados (741919) | more than 4 years ago | (#29419983)

I'd be curious about the garbage collection stuff though. Its ahead-of-time compiled, there's no runtime, and you usually need a runtime for the garbage collection, unless the compiler includes a pseudo-runtime to run the app or something. I'd assume it works the same as Java native compilers...how do those work, i never looked?

Re:No it doesn't. (1)

shutdown -p now (807394) | more than 4 years ago | (#29420303)

I would imagine it works in the same way Boehm GC (libgc) for C/C++ works. GC doesn't require a "runtime", it just requires a, well, GC, running on its own separate thread, started from main(). Of course, one could say that such a GC constitutes a "runtime", but that's stretching it.

Re:Violates the developer agreement (2, Insightful)

CodeBuster (516420) | more than 4 years ago | (#29419849)

Also, using C# is not THAT much better than the native objective-c

Excuse me? C# and .NET take the same approach as Java which is to provide the most powerful general purpose programming language + massive class library of common functionality possible (C# and .NET which allows any language to compile to the CLI assembly are arguably even more powerful than Java right now). C# and .NET are definitely MORE powerful than objective C in a general purpose sort of way (objective C might have more depth in specific targeted areas like GUI widgets, but the breadth of massive frameworks like C# and Java is truly vast). As for the memory management in C# and .net languages, you have to know a bit about garbage collection, finalization, and the IDisposable [microsoft.com] interface (which enables the "using" keyword syntax) when dealing with "unmanaged" resources (which require manual destruction, usually because they are outside the managed heap maintained by the .NET framework).

Re:Violates the developer agreement (2, Insightful)

daBass (56811) | more than 4 years ago | (#29420177)

Just because a platform has a greater number of frameworks doesn't mean it is more powerful. You could even turn it around and say that the number of 3rd party frameworks being developed indicates the language is missing some important stuff and everybody is trying to solve it in their own way, with lots of redundant, very similar frameworks.

You are probably comparing your desktop/server experience wth those languages to a mobile platform. I program Java and .Net for server apps every day and iPhone by night. The two are a completely different world. In my dayjob I am using all the frameworks and libraries that make me more productive. For the iPhone I don't even go looking for them because everything I need is right there. (The only exception to that I could see is 2D/3D animtaion and games, for which there are several great frameworks for iPhone. But that is not something I Do.)

Fifty thousand apps in just over a year on a niche mobile platform can't be argued with. The Objective-C/Cocoa Touch platform is inmensly powerful.

Ask any mobile developer that has done Windows Mobile in .Net, Java ME or Android and see which platform they create their best looking, best function, most reliable apps on and which one is the fastest to develop for. Yes, that would be iPhone.

Maybe Mono Touch will bring that kind of quality and productivity using C# to the iPhone platform, but I am sceptical.

There is a reason why there is so much quality software for iPhone - and for the Mac platform for that matter - and that reason are the Apple SDKs and Objective-C.

Re:Violates the developer agreement (1)

ceoyoyo (59147) | more than 4 years ago | (#29420347)

The Objective C/C libraries apple provides are pretty extensive too. I'm not really familiar with .NET though. Does it provide a good hardware accelerated/optimized FFT for example? Distributed object system? GPU accelerated image and video processing?

Excuse me too ... (1)

testman123 (1111753) | more than 4 years ago | (#29420411)

You said  C# and .NET which allows any language to compile to the CLI assembly are arguably even more powerful than Java right now Â

Wrong, "any" language can not compile to CLI. Any .net language flavor can. There is a huge difference, when you code VB on .net, this is no more VB but an ersatz of C# : same structure, same paradigms, same API. Same for Cobol.net ... this is not Cobol my friend ! By the way when working on .net everybody ends up doing C#. Like everybody does it on Windows thru the .net and not Mono ... and people ends up doing MS SQL Server sometimes ;)

About C# beeing "more powerfull", this remember a "I got a bigger one than yours" story so I am not even discussing the question. The question is not the size or power, but how clean it is and what you do with it. At the end of the day, most people think theirs are the more powerfull ;-)

About lang, there half a dozen of language that could blast C# and Java in each of their alleged "power" domains. But none are used and none have reached the masses.

If C# was not made by MS, it would have already died, because the clone is too close from the original to survive.

But fortunatly for you MS is still spending some cash and giving some to Novell to try to make people dream of an hypothethical .net outside an MS OS.

Guys, wake up : this will never happen for obious strategical reasons. Do you think that MS will kill windows biggest platform advantage for nothing ? C'm'on, MS does cool things but this whole .net story is realy a self-trap for MS : they did not managed to lock Java (remember the JDirect/RNI/WFC) and could not let it go alone or it could have swallow all their developers (do you liked MFC ?)... so they decided to go the dolly way : go & clone that thing :)

Now they are in a no-no situation : no, we can not make it really cross platform and no we can not get rid of it. Funny situation isn't it ?

I would really like to know how this would end : portability and windows killed or .net killed by MS to prevent harm to Windows... who knows ;)

Re:Violates the developer agreement (2, Interesting)

Santana (103744) | more than 4 years ago | (#29420471)

C# and .NET are definitely MORE powerful than objective C in a general purpose sort of way (objective C might have more depth in specific targeted areas like GUI widgets, but the breadth of massive frameworks like C# and Java is truly vast)

Having more libraries doesn't make a language more powerful; in any case, it would make it more productive.

The hard link you have in your mind between Objective-C (or the libraries available to it, since you seem to interpret it as the same thing) and GUI widgets is just supported by your ignorance.

Besides, I don't get what's the big deal about learning Objective-C. It's a real C superset and heavily inspired by Smalltalk. Ruby programmers would feel at home. Who wouldn't like to think of Smalltalk or Ruby while writing real world solutions at close-to-the-metal speed.

Unity (4, Informative)

tylersoze (789256) | more than 4 years ago | (#29419537)

Unity, www.unity3d.com, which uses Mono, has been available on the iPhone for some now.

Big Difference Between The Two (-1, Troll)

Anonymous Coward | more than 4 years ago | (#29420087)

Unity3d is something that uses mono for iPhone development that no one cares about.

However, monotouch is something that uses mono for iPhone development that no one will care about.

Re:Big Difference Between The Two (3, Informative)

tylersoze (789256) | more than 4 years ago | (#29420179)

Haha! That's a good one. Although I'm sure the developers of the 250 games that have shipped with Unity probably care somewhat. :)

XOR to iPhone SDK? (1)

pak9rabid (1011935) | more than 4 years ago | (#29419543)

So...is this an alternative to Apple's iPhone SDK, or does it work with it? (in other words, could developers not have to pay the Apple tax to write iPhone apps?)

Re:XOR to iPhone SDK? (0)

tlhIngan (30335) | more than 4 years ago | (#29419713)

So...is this an alternative to Apple's iPhone SDK, or does it work with it? (in other words, could developers not have to pay the Apple tax to write iPhone apps?)

Unless this thing compiles to native code, a runtime interpreter isn't allowed by Apple's SDK. So I suspect .net apps, just like free iPhone development, will require jailbroken phones. (Jailbroken phones don't require the $100/year membership).

Other than that, I don't see how in the world will Apple allow it.

Re:XOR to iPhone SDK? (3, Informative)

Plug (14127) | more than 4 years ago | (#29419879)

It compiles to native code [monotouch.net] . It just allows you to use C# to do it.

Re:XOR to iPhone SDK? (1)

harlows_monkeys (106428) | more than 4 years ago | (#29420229)

Unless this thing compiles to native code, a runtime interpreter isn't allowed by Apple's SDK.

That's not really quite correct. Apple has approved apps that use a runtime interpreter. They key is that the app cannot allow any means of downloading "outside" code to run on the interpreter. If you want to implement your app as an interpreter for language Foo, which is only used to interpret the Foo code you include as part of the app, that should be OK.

Re:XOR to iPhone SDK? (2, Informative)

ZackSchil (560462) | more than 4 years ago | (#29419733)

No, you'll still need to compile with XCode and sign the apps through Apple's $100 development program to try them out on a real phone. This just offers different UI libraries to link to when making your app rather than using cocoa.

If they crash or misbehave, Apple will reject your app though. So hopefully they're pretty solid. I imagine this is mostly to help enterprise customers port their Windows Mobile apps to the iPhone.

Must be app-store approved... (1)

zentechno (800941) | more than 4 years ago | (#29419645)

Even before we get to the performance issue, there are at least two others that could run blocking. 1) I wonder if this is the sort of thing Apple would approve. Recent rants would seem to indicate if it allows any sort of a shell, no way. Otherwise, who knows? 2) Apple enforces it's look-and-feel rules religiously. Last I saw there was NOTHING .Net that looked at all Aqua. The stuff at unity3d.com looks cool, and would seem to *imply* Apple's OK with however their stuff looks, but I couldn't find a screen shot that showed me e.g. a typical config panel so I could compare it to iPhone's native bits.

Re:Must be app-store approved... (5, Informative)

Plug (14127) | more than 4 years ago | (#29419905)

  1. It's not a "shell" or a "runtime", it is ahead-of-time compiled [slashdot.org] down to native code.
  2. This is a wrapper around native Apple UI objects, it's not using any Windows or .NET UI objects. You use the Apple Interface Builder [monotouch.net] just like you would if you were using Objective C.

don't buy an iphone (0)

Anonymous Coward | more than 4 years ago | (#29419779)

if you buy an iphone you're a sucker

...but does it run Linux? (1)

filesiteguy (695431) | more than 4 years ago | (#29419883)

:P

Okay, so now we have a .net runtime (mono) on the iPhone. Can we safely assume that the plethora of mono apps can be ported? (http://www.mono-project.com/Software)

Hmm - I could see playing Donkey.NET (http://www.microsoft.com/downloads/details.aspx?FamilyID=990D0EC1-23EA-4408-898D-1FD5727A8890&displaylang=en) playing on the iPhone.

Re:...but does it run Linux? (1)

Plug (14127) | more than 4 years ago | (#29419927)

No, you do not have a .NET runtime. You have a way of using .NET to build apps using the Apple UI objects, and compiling them to native code. The "plethora of Mono apps" you refer to are generally written using Gtk#, and would have to be re-architected to use the iPhone UI.

Re:...but does it run Linux? (1)

filesiteguy (695431) | more than 4 years ago | (#29420033)

Darn - I was hoping to have the ever-helpful beagle running on the iPhone.

LOL

Finally! (0)

Anonymous Coward | more than 4 years ago | (#29419887)

It's nice to see Novell dumping the dead end that is Linux development for more fertile grounds.

So... what is Apple going to do? (0, Troll)

jmerlin (1010641) | more than 4 years ago | (#29419953)

They love their exclusitivity, lock-in, etc. We saw them destroy an awesome C64 emulator because you could program in BASIC for it. From glancing over the article, it appears developers will be able to use .NET to produce iPhone apps while not using OSX (!!!) -- I don't think Apple would stand for this. "You must pay $3,000 for a crappy mac to write software for our iPhone, and even then your chances of getting your app on our 30% royalty fee store is highly unlikely!"

Re:So... what is Apple going to do? (1)

bananamanners (914695) | more than 4 years ago | (#29420161)

You still need a Mac with OSX and the iPhone SDK and be a registered iPhone developer in order to use Mono-Touch. So if anything, apple will be getting a larger developer base.

Owner of iPhone and several macbpros (0)

Anonymous Coward | more than 4 years ago | (#29420015)

Not really a hardcore apple person, but my experience since leaving MS is very pleasant. I also enjoy several Linux boxes. The only issues I have with Apple are games (though WoW, Wii and the Ps3 solve much in this regard) and Quickbooks (payroll).

Once Intuit finishes Quickbooks for Macs, only games are left. I just have no care to deal with MS unless absolutely needed.

These days I could even avoid lockin with Linux but My Apple experience has been very nice. My wife, an architect in Java and .Net, differs with her Apple experience. Though she has enjoyed her mac she finds it frustrating at times as a dev. So much so that her next will dual boot MS and Linux. However, she always takes Java projects over .Net because she finds Java much further along. Guess I am saying that both of us would love Java on the iPhone; we wouldn't bother with .Net.

Mono? (0, Troll)

webdog314 (960286) | more than 4 years ago | (#29420047)

Now you can have all the security and stability of .Net and Microsoft right on your Apple iPhone! Oh wait...

Re:Mono? (1)

avandesande (143899) | more than 4 years ago | (#29420137)

I have had the JVM crap out on me multiple times when programming in JAVA- I have never encountered a failure or SINGLE runtime bug in .NET.

Re:Mono? (3, Interesting)

RightSaidFred99 (874576) | more than 4 years ago | (#29420339)

Are you being double-backwards redundantly hilarious? .Net and Microsoft are stable now. Let's see on what platforms the largest growth for remote exploits over the last year have been, shall we?

Never happen (1)

YerTalkingKrap (1477057) | more than 4 years ago | (#29420065)

Novell may have "announced" this, but I don't think there's much chance of it appearing on the iPhone anytime soon. Sun tried to write a JRE for the iPhone and Apple todl them outright there was no way it was going to allow it, so I seriously double they'd be fine with .Net

Shame : Article is FUD from MS-zealots :( (0)

testman123 (1111753) | more than 4 years ago | (#29420097)

AFAIK,

#1 No it is not managed code, nothing like IL and will never be so ! Simply because it is forbidden by Apple license. This is the same rule that prevent Java VM or that should prevent full Flash from beeing granted. The reason ? If a VM (JVM or CLR) is pushed to the iPhone the code control will escape from Apple validation ;-) Be sure this will never happen. So this is FUD.

#2 Nothing you can not do already using Java using ahead of time compilation or C++ or any cross compilable language. Nothing new, so this is FUD.

#3 Article is misleading as Mono is not Microsoft .net compatible. Anybody seen a test compatibility suite at Microsoft to ensure compatibility ? No way ... this thing is best effort "should work" code. Not mono fault ... a MS choice my darling. Again and again FUD.

Is it me or two much of Android phone launched has made MS-fan crowd wake up & start again the FUD machine over /. ?

Guys, if you need to make iPhone apps, you got to build it using ObjectiveC. If you want to code using more recent languages, you can go to other mobile platform such as Blackberry and Android...;

E)p!? (-1, Offtopic)

Anonymous Coward | more than 4 years ago | (#29420099)

that suuports conversa7ion and moans and groans Baby take my

Other languages? (1)

MattBD (1157291) | more than 4 years ago | (#29420119)

Correct me if I'm wrong, but although Mono is largely based around C# it does support other languages such as IronPython, VB.NET, and Boo, and the MonoTouch website implies that you can use other languages as well. That could potentially mean being able to use MonoTouch to write applications in these other languages, which could be handy.

Informative links from Miguel's blog (0)

Anonymous Coward | more than 4 years ago | (#29420217)

Recent post: http://tirania.org/blog/archive/2009/Sep-14.html [tirania.org]
This one's almost a year old, but contains more details: http://tirania.org/blog/archive/2008/Nov-05.html [tirania.org]

To those that say Apple won't accept this to the App Store, it is not intended to be accepted because it is not an iPhone app. It is a really just compiler that gets run ahead of time; so it is not a runtime for the iPhone like the JVM was.

Eww (0)

Anonymous Coward | more than 4 years ago | (#29420221)

Seriously. Gross. Now, if only someone would port DirectX and the Windows Registry...

What a Pig (0, Troll)

curmudgeon99 (1040054) | more than 4 years ago | (#29420223)

Can you imagine how terribly apps on this combo will perform? I would be waiting with great skepticism.

Don't. Just. Fucking. Don't. (-1, Troll)

jcr (53032) | more than 4 years ago | (#29420441)

If you can't be bothered to learn the environment you want to deploy on, then you should leave it to better developers.

-jcr

Load More Comments
Slashdot Login

Need an Account?

Forgot your password?

Submission Text Formatting Tips

We support a small subset of HTML, namely these tags:

  • b
  • i
  • p
  • br
  • a
  • ol
  • ul
  • li
  • dl
  • dt
  • dd
  • em
  • strong
  • tt
  • blockquote
  • div
  • quote
  • ecode

"ecode" can be used for code snippets, for example:

<ecode>    while(1) { do_something(); } </ecode>