24C3 Tagungsband Volldampf Voraus! 27

Total Page:16

File Type:pdf, Size:1020Kb

24C3 Tagungsband Volldampf Voraus! 27 Für’n Käpt’n. 24. Chaos Communication Congress Volldampf voraus! 24. Chaos Communication Congress Tagungsband Volldampf voraus! 3 Bibliografi sche Information der Deutschen Nationalbibliothek Die Deutsche Nationalbibliothek verzeichnet diese Publikation in der Deutschen Nationalbibliografi e; detaillierte bibliografi sche Daten sind im Internet über http//dnb.d-nb.de/ abrufbar. 24C3 Tagungsband Volldampf voraus! 27. - 30. Dezember 2007, Kongreßhalle am Alexanderplatz, Berlin. 24. Chaos Communication Congress Eine Veranstaltung des Chaos Computer Clubs. http://events.ccc.de/congress/2007/ Umschlag: evelyn & hukl (Cover) sowie Marten (Rücken) Satz: wetterfrosch Lizenz: c Creative Commons 2007 b Namensnennung n Keine kommerzielle Nutzung d Keine Bearbeitung 3.0 Unported Schrift: Yanone Kaff eesatz von Jan Gerner, lizensiert unter cbNamensnennung 2.0 Deutschland. Herausgeber: Matthias Mehldau Verlag: Art d’Ameublement Marktstraße 18 in 33602 Bielefeld Vertrieb: FoeBuD e.V. Unterstützungsbedarf Marktstraße 18 in 33602 Bielefeld http://shop.foebud.org/ ISBN-13: 978-3-934636-06-4 Programmierung der Vorträge unter dem sympathisch herrschendem Schirm der Wau-Holland-Stiftung. 1. Aufl age, 400 Stück. Alle bis zum 17. Dezember 2007 eingereichten Papers. Stand des Fahrplans vom 1. Dezember 2007. Herstellung: copy print Kopie & Druck GmbH Berlin 2. Aufl age, on Demand geplant Herstellung: Books on Demand GmbH Norderstedt bod.de-ID: 0005147212 Lizenzbestimmung in menschenlesbarer Form Sie dürfen zu den folgenden Bedingungen dieses Werk vervielältigen, verbreiten und öff entlich zugänglich machen: b Namensnennung. Sie müssen den Namen des Autors/Rechteinhabers in der von ihm festgelegten Weise nennen (wodurch aber nicht der Eindruck entstehen darf, Sie oder die Nutzung des Werkes durch Sie würden entlohnt). n Keine kommerzielle Nutzung. Dieses Werk darf nicht ür kommerzielle Zwecke verwendet werden. d Keine Bearbeitung. Dieses Werk darf nicht bearbeitet oder in anderer Weise verändert werden. c http://creativecommons.org/licenses/by-nc-nd/3.0/legalcode C Inhaltsverzeichnis Papers Absurde Mathematik ... 9 AES: side-channel attacks for the masses ... 15 Analysis of Sputnik Data from 23C3 ... 19 Attempts to regenerate lost sequences AnonAccess ... 53 Ein anonymes Zugangskontrollsystem Dining Cryptographers, The Protocol ... 67 Even slower than Tor and JAP together! Grundlagen der sicheren Programmierung ... 73 Typische Sicherheitslücken Hacking ideologies, part 2: Open Source, a capitalist movement ... 79 Free Software, Free Drugs and an ethics of death Inside the Mac OS X Kernel ... 85 Debunking Mac OS Myths Introduction in MEMS ... 91 Just in Time compilers - breaking a VM ... 97 Practical VM exploiting based on CACAO Konzeptionelle Einührung in Erlang ... 113 Linguistic Hacking ... 121 How to know what a text in an unknown language is about? Modelling Infectious Diseases in Virtual Realities ... 129 The “corrupted blood” plague of WoW from an epidemiological perspective Overtaking Proprietary Software Without Writing Code ... 135 “a few rough insights on sharpening free software” Simulating the Universe on Supercomputers ... 139 The evolution of cosmic structure To be or not I2P ... 145 An introduction into anonymous communication with I2P VX ... 151 The Virus Underground Wahlchaos ... 165 Paradoxien des deutschen Wahlsystems Veranstaltungen Tag 1 ... 174 Tag 2 ... 178 Tag 3 ... 181 Tag 4 ... 185 Volldampf voraus! 24. Chaos Communication Congress Papers 27. - 30. Dezember 2007, Berlin 8 24C3 24. Chaos Communication Congress Science lecture Tag 2 12:45 Saal 2 de Anoushirvan Dehghani Absurde Mathematik Paradoxa wider die mathematische Intuition Ein kleiner Streifzug durch die Abgründe der Mathematik. Eigentlich ist der Mensch mit einer recht gut funktionierenden Intuition ausgerüstet. Dennoch gibt es Paradoxa, welche mathematisch vollkommen korrekt und beweisbar sind, jedoch unserer Intuition widersprechen. Der Vortrag bietet einen Streifzug durch einige dieser Paradoxa, die kurz und anschaulich erklärt werden. Nicht alles, was mathematisch beweisbar ist, ist auch intuitiv und verständlich zu erfassen. Wie kann beispielsweise ein einfacher Körper wie Gabriels Horn ein begrenztes Volumen, aber eine unendlich große Oberfläche haben? Oder warum ist es bei einem Triell, einem Duell mit drei Schützen, als schlechter Schütze für das eigene Überleben von Vorteil, wenn man als letztes schießen darf? Woher kommt das Braess'sche Paradoxon, bei dem die Verbesserung eines Verkehrsstreckenabschnittes zum Zusammenbruch des gesamten Verkehrsflusses führen kann? Wie kann bei Penney-Ante ein unfaires Spiel entstehen, wo doch eine absolut faire Münze geworfen wird?Und wie lief das genau mit dem bekannten Ziegenproblem, soll man sich nach Öffnen der ersten Tür mit der Niete zwischen den anderen beiden Türen umentscheiden? Volldampf voraus! 9 27. - 30. Dezember 2007, Berlin Absurde Mathematik Anoushirvan Dehghani 4. Dezember 2007 Zusammenfassung. Ein kleiner Streifzug durch die etwas Dieser Körper hat also eine unendlich große und dennoch absurderen und paradoxen Seiten der Mathematik. Es wer- glatte Oberfläche2, jedoch ein nur endlich großes Volumen! den Beweise gezeigt, die der menschlichen Intuition oder Anschaulich gesagt: Entspricht eine Maßeinheit 10 cm,so einfach nur sich selbst widersprechen. Wo es möglich ist, reichen etwas mehr als drei Liter Farbe aus, um das Horn sollen die Paradoxa auch aufgelöst werden. komplett zu füllen. Jedoch würde sich niemals genug Far- be finden, um die ∞ qm große Oberfläche anzustreichen - und dies, obwohl das Horn doch bereits komplett mit Farbe 1 Gabriels Horn gefüllt ist! Die Erklärung dieses Paradoxons liegt an den unterschied- lichen Dimensionen der Oberfläche und des Volumens. Die Ein seit der Neuzeit bekanntes mathematisches Paradoxon Integration eines Rotationskörpers kann als stückweise Ad- ist Gabriels Horn. Nach seinem Entdecker Evangelista Tor- dition kurzer zweidimensionaler Ring- bzw. dreidimensio- ricelli 1 wird es auch Toricellis Trompete genannt. naler Scheibchensegmente angenähert werden. Deren Radi- us entspricht dabei jeweils dem momentanen Funktionswert Es handelt sich dabei um der in Abb. 1 gezeigten Rotations- 1 1 von y = x . körper, der durch eine Drehung des Graphen von y = x für alle x ≥ 1 um die x-Achse erzeugt wird. Werden diese Segmente infinitesimal kurz gehalten, so er- geben sich eindimensionale Ringstreifen bzw. zweidimen- 1 sionale Kreise. Wächst nun x über alle Grenzen, so gilt: 0 1+ 1 4 π x →∞ ï1 2π π 2 für x (3) 1 x x 2 3 4 5 6 ï1 7 8 0 9 10 1 Das wachsende x geht also nur reziprok linear in die Größe der Ringstreifen ein, während es für die Fläche der Krei- Abbildung 1: Anfangsverlauf von Gabriels Horn se zu einem quadratischen Absinken führt. Dies führt ei- π Dieser recht simpel aussehende Körper hat eine seltsame nerseits zu dem existierenden Grenzwert , andererseits zu Eigenschaft. Die Berechnung seines Volumens ergibt einen dem unbegrenzten Wachstum der Oberfläche. endlichen Wert: Die praktische Durchführung eines „Befüll-Experimentes“ ∞ ∞ scheitert daran, dass die Herstellung eines solchen, unend- π − 1 − − V = 2 dx = π = π[0 ( 1)] = π (1) lich langen Objektes nicht so recht gelingen mag. Unabhän- x x 1 1 gig davon wäre ab einer bestimmten Länge der Horndurch- messer so klein, dass nicht mal mehr ein einziges Molekül Anders hingegen sieht es aus, wenn die Oberfläche be- oder Atom der verwendeten Füllsubstanz hineinpassen wür- stimmt werden soll: de. ∞ ∞ 1 1+ 4 Merke: Zweidimensionale Oberflächen im dreidimensiona- A = 2πy · 1+y2 dx =2π x dx x len Raum sind nicht ohne weiteres mit dreidimensionalen 1 1 Volumina zu vergleichen! ∞ 1 ∞ ≥ 2π dx =2π [ln(x)] = ∞ (2) x 1 1 2„glatt“ bedeutet hier, dass es nicht um eine fraktale Oberfläche oder 1* 15. Oktober 1608 in Faenza, IT; † 25. Oktober 1647 in Florenz, IT. ähnliche Taschenspielertricks geht. 10 24C3 24. Chaos Communication Congress 2 Efrons intransitive Würfel rasch langweilig wird, konnte beseitigt werden. Auch mit nur drei Würfeln läßt sich ein intransiver Satz erstellen. Als Fazit bleibt: Die Eigenschaft, der wahrscheinliche Gewin- Der gesunde Menschenverstand sagt: Wenn der Porsche ner eines Matches zu sein, muß nicht transitiv sein! Was bei meist schneller ist als der Audi, und der Ferrari meist „Stein, Schere, Papier“ willkürlich festgelegt wurde, kann schneller als der Porsche, so wird der Ferrari in der Re- auch mit solidem Regelwerk begründet werden. gel auch den Audi schlagen. Der Mathematiker spricht hier von einem transitiven Vorteil. Dass dies bei einem Glückss- piel mit fairen Würfeln nicht gelten muß, erscheint absurd - und dennoch ist es so! 3 Penney-Ante Die erste Person, die einen Satz solch intransitiver Wür- fel vorgestellt hat, war Bradley Efron3. Die Belegung ist in Wo wir gerade bei intransitiven Paradoxa sind: Wie wäre es Abb. 2 dargestellt. Fair bedeutet, dass jede Seite eines Wür- mit einem einfachen Münzwurf? Die Wahrscheinlichkeit p 1 fels die gleiche Auftretenswahrscheinlichkeit von p = 6 be- für Zahl, Z, sei dabei genauso hoch wie q, die Wahrschein- 1 sitzt. Seltsam dabei: Spieler 1 darf sich einen beliebigen die- lichkeit für Kopf K: p = q = 2 . Es soll sich dabei um glei- chermaßen faire wie gedächtnislose Münzen handeln. Der Ausgang eines Wurfes ist also nicht von den vorhergehen- den Würfen beeinflußt. Die Regeln des Spieles lauten: Spieler 1 sucht sich eine be- liebige Reihe von Münzwürfen der Mindestlänge drei aus, Abbildung 2: Efrons Würfel beispielsweise ZKK oder KKZK. Spieler 2 wählt nun eben- fals
Recommended publications
  • A Zahlensysteme
    A Zahlensysteme Außer dem Dezimalsystem sind das Dual-,dasOktal- und das Hexadezimalsystem gebräuchlich. Ferner spielt das Binär codierte Dezimalsystem (BCD) bei manchen Anwendungen eine Rolle. Bei diesem sind die einzelnen Dezimalstellen für sich dual dargestellt. Die folgende Tabelle enthält die Werte von 0 bis dezimal 255. Be- quemlichkeitshalber sind auch die zugeordneten ASCII-Zeichen aufgeführt. dezimal dual oktal hex BCD ASCII 0 0 0 0 0 nul 11111soh 2102210stx 3113311etx 4 100 4 4 100 eot 5 101 5 5 101 enq 6 110 6 6 110 ack 7 111 7 7 111 bel 8 1000 10 8 1000 bs 9 1001 11 9 1001 ht 10 1010 12 a 1.0 lf 11 101 13 b 1.1 vt 12 1100 14 c 1.10 ff 13 1101 15 d 1.11 cr 14 1110 16 e 1.100 so 15 1111 17 f 1.101 si 16 10000 20 10 1.110 dle 17 10001 21 11 1.111 dc1 18 10010 22 12 1.1000 dc2 19 10011 23 13 1.1001 dc3 20 10100 24 14 10.0 dc4 21 10101 25 15 10.1 nak 22 10110 26 16 10.10 syn 430 A Zahlensysteme 23 10111 27 17 10.11 etb 24 11000 30 18 10.100 can 25 11001 31 19 10.101 em 26 11010 32 1a 10.110 sub 27 11011 33 1b 10.111 esc 28 11100 34 1c 10.1000 fs 29 11101 35 1d 10.1001 gs 30 11110 36 1e 11.0 rs 31 11111 37 1f 11.1 us 32 100000 40 20 11.10 space 33 100001 41 21 11.11 ! 34 100010 42 22 11.100 ” 35 100011 43 23 11.101 # 36 100100 44 24 11.110 $ 37 100101 45 25 11.111 % 38 100110 46 26 11.1000 & 39 100111 47 27 11.1001 ’ 40 101000 50 28 100.0 ( 41 101001 51 29 100.1 ) 42 101010 52 2a 100.10 * 43 101011 53 2b 100.11 + 44 101100 54 2c 100.100 , 45 101101 55 2d 100.101 - 46 101110 56 2e 100.110 .
    [Show full text]
  • Thesis Final8
    REFRAMING INTERACTIVE DIGITAL NARRATIVE: TOWARD AN INCLUSIVE OPEN-ENDED ITERATIVE PROCESS FOR RESEARCH AND PRACTICE A Dissertation Presented to The Academic Faculty By Hartmut Koenitz In Partial Fulfillment Of the Requirements for the Degree Doctor of Philosophy in Digital Media Georgia Institute of Technology August, 2010 Copyright © Hartmut Andreas Koenitz 2010 Reframing Interactive Digital Narrative: Toward An Inclusive Open-Ended Iterative Process For Research And Practice Approved by: Dr. Janet Murray, Advisor Dr. Kenneth Knoespel School of Literature, Communication Ivan Allen College and Culture Georgia Institute of Technology Georgia Institute of Technology Dr. Mads Haahr Dr. Jay Bolter Department of Computer Science School of Literature, Communication Trinity College Dublin and Culture Georgia Institute of Technology Date Approved: June 30, 2010 Dr. Celia Pearce School of Literature, Communication and Culture Georgia Institute of Technology It is a waste of energy and resources to make applications that merely imitate media that exist in other forms, such as print, television, and film. Pamela Jennings, 1996 To my Parents ACKNOWLEDGEMENTS First and foremost I want to acknowledge the help, dedication and commitment of my advisor Janet Murray. Her relentless criticism and simultaneous encouragement sharpened both my wit and the focus of my arguments. Jay Bolter gave me the courage to start this project and provided not only lucid intellectual advice, but also a shoulder to lean on and a voice of sanity in the darkest hours of this thesis. Celia Pearce gave me a new appreciation of games and encouraged me to include installation pieces I would have otherwise overlooked. Kenneth Knoespel always took my mind to exciting and unforeseen places and made me think outside the box.
    [Show full text]
  • The MTASC Compiler
    The MTASC compiler ...the Open Source Harmony Nicolas Cannasse – Spark Europe MTASC ? ● What is MTASC ? An AS2 commandline compiler ● What is it doing ? ...compiling ● What is it not doing ? ...help you to be rich Past ● Before : SWF decompiler, obfuscator ● December 2003 : ASML ● April 2004 : Motion Types ● October 2004 : MTASC ● Give back to the community RoadMap ● Started on 20 October 2004 ● Beta 1 on 25 October 2004 ● Version 1.0 on 26 January 2005 ● (more versions following) ● Version 1.10 on 14 Sept 2005 During this time... The FAME platform : use MTASC together with Eclipse... a Full Featured IDE May 2005 : OSFlash.org !!! an OS community for Flash A sample Using MTASC ● c:\work\Test.as : class Test { static function main( mc : MovieClip ) { mc.createTextField("tf",0,0,300,300); mc.tf.text = "Hello World !"; } } ● Compile using : mtasc -swf test.swf -main -cp c:\work Test.as MTASC -trace Feature ● Redirect trace() calls in your application mtasc -trace my.Class.myTrace ... ● Add debug informations : trace("something") => my.Class.myTrace ("something","Test::foo","Test.as",4); ● Remove traces easily mtasc -trace no ... The Present ● MTASC is stable : try it ! ● The fastest AS2 compiler out there ● Make your everyday life Better ● 1.11 might be last version ? The Future ● New Challenges : ActionScript 3 ? AVM2 : new better virtual machine ● Why MTASC is successful ? ● It's all about innovation The haXe Programming Language ● A programming language for the web web : HTML/CSS/JS/Flash/PHP/Perl/SQL... ● What is haXe ? a programming
    [Show full text]
  • A Web-Oriented Programming Language
    haXe A Web-oriented Programming Language OSCON 2006 Nicolas Cannasse http://haxe.org [email protected] First Rule haXe == Simple What is haXe ? It's simple ! Crossplatform : Linux, Windows, OSX, BSD Multiplatform : JS, Neko, SWF Easy to get started : let's do it Hello World class Hello { static function main() { trace(''Hello World !''); } } Outputs Javascript : hello.js Flash SWF : hello.swf Neko bytecode : hello.n Hello World Let's try it ! haXe == Simple One single language for your whole website... Simplify the whole development process. ...if you need it. haXe == Simple One standard crossplatform library + Platform-specific libraries : (root package) : core library js.* / flash.* / neko.* : platform-specific libraries haxe.* : standard library components, crossplatform haXe == Simple Created to simplify your life Anything complicated ? ...fill a bug-report Simple does not mean featureless Second Rule haXe == Powerful haXe == Powerful QUESTION : « What is your favorite programming language » haXe == Powerful Dynamicly typed ? This is good Some people like staticly typed They have some points too... typos, documentation, refactoring... But people don't like to write... haXe == Powerful public static HashMap attributesHash( String xmlData ) { try { DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); Document doc = factory.newDocumentBuilder().parse(xmlData); Element element = doc.getElementById("id"); NamedNodeMap attrs = element.getAttributes(); int numAttrs = attrs.getLength(); HashMap hattribs = new HashMap();
    [Show full text]
  • Technical Notes All Changes in Fedora 13
    Fedora 13 Technical Notes All changes in Fedora 13 Edited by The Fedora Docs Team Copyright © 2010 Red Hat, Inc. and others. The text of and illustrations in this document are licensed by Red Hat under a Creative Commons Attribution–Share Alike 3.0 Unported license ("CC-BY-SA"). An explanation of CC-BY-SA is available at http://creativecommons.org/licenses/by-sa/3.0/. The original authors of this document, and Red Hat, designate the Fedora Project as the "Attribution Party" for purposes of CC-BY-SA. In accordance with CC-BY-SA, if you distribute this document or an adaptation of it, you must provide the URL for the original version. Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law. Red Hat, Red Hat Enterprise Linux, the Shadowman logo, JBoss, MetaMatrix, Fedora, the Infinity Logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries. For guidelines on the permitted uses of the Fedora trademarks, refer to https:// fedoraproject.org/wiki/Legal:Trademark_guidelines. Linux® is the registered trademark of Linus Torvalds in the United States and other countries. Java® is a registered trademark of Oracle and/or its affiliates. XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries. All other trademarks are the property of their respective owners. Abstract This document lists all changed packages between Fedora 12 and Fedora 13.
    [Show full text]
  • Evaluating the Haxe Programming Language
    Evaluating the Haxe Programming Language Performance comparison between Haxe and platform-specific languages Bachelor of Science Thesis in Software Engineering and Management STEPAN STEPASYUK YAVOR PAUNOV University of Gothenburg Chalmers University of Technology Department of Computer Science and Engineering Göteborg, Sweden, June 2013 The Author grants to Chalmers University of Technology and University of Gothenburg the non- exclusive right to publish the Work electronically and in a non-commercial purpose make it accessible on the Internet. The Author warrants that he/she is the author to the Work, and warrants that the Work does not contain text, pictures or other material that violates copyright law. The Author shall, when transferring the rights of the Work to a third party (for example a publisher or a company), acknowledge the third party about this agreement. If the Author has signed a copyright agreement with a third party regarding the Work, the Author warrants hereby that he/she has obtained any necessary permission from this third party to let Chalmers University of Technology and University of Gothenburg store the Work electronically and make it accessible on the Internet. Evaluating the Haxe Programming Language Performance comparison between Haxe and platform-specific languages STEPAN STEPASYUK, YAVOR PAUNOV. © STEPAN STEPASYUK, June 2013. © YAVOR PAUNOV, June 2013. Examiner: RICHARD TORKAR University of Gothenburg Chalmers University of Technology Department of Computer Science and Engineering SE-412 96 Göteborg Sweden Telephone + 46 (0)31-772 1000 Department of Computer Science and Engineering Göteborg, Sweden June 2013 Evaluating the Haxe Programming Language Performance comparison between Haxe and platform-specific languages Stepan Stepasyuk Yavor Paunov Gothenburg University Gothenburg University Department of Computer Science and Engineering Department of Computer Science and Engineering Gothenburg, Sweden Gothenburg, Sweden [email protected] [email protected] Abstract 2.
    [Show full text]
  • Daniel Lucio May 15Th, NCCU, Durham, NC
    Introduction to Parallel Programming Daniel Lucio May 15th, NCCU, Durham, NC 1 Outline 1. Parallelism vs Concurrency? 2. Parallel paradigms 2.1.Shared-Memory 2.2.Distributed-Memory 3. Design Models 3.1.Task Decomposition 3.2.Data Decomposition 4. Methodologies 5. Design Factor Scorecard 6. What’s Not Parallel? 7. Programing Paradigms 7.1.Message Passing Interface 7.2.OpenMP 8. Anything else? SURA Workshop, May 2012 2 Introduction to Parallel Programming Outline 1. Parallelism vs Concurrency? 2. Parallel paradigms 2.1.Shared-Memory 2.2.Distributed-Memory 3. Design Models 3.1.Task Decomposition 3.2.Data Decomposition 4. Methodologies 5. Design Factor Scorecard 6. What’s Not Parallel? 7. Programing Paradigms 7.1.Message Passing Interface 7.2.OpenMP 8. Anything else? SURA Workshop, May 2012 3 Introduction to Parallel Programming Concurrency or Parallelism? A concurrent program or algorithm is one where operations can occur at the same time. For instance, a simple integration, where numbers are summed over an interval. The interval can be broken into many concurrent sums of smaller sub-intervals. Concurrency is a property of the program. Parallel execution is when the concurrent parts are executed at the same time on separate processors. The distinction is subtle, but important. And, parallel execution is a property of the machine, not the program. SURA Workshop, May 2012 4 Introduction to Parallel Programming Concurrency or Parallelism? A system is said to be concurrent if it can support two or more actions in progress at the same time. A system is said to be parallel if it can support two or more actions executing simultaneously.
    [Show full text]
  • Developpementweb-OS-1
    Développement Web Open Source haXe et les outils « open source » Première partie Le Web aujourd’hui • HTML • Java script • CSS • Flash • PHP • Java •… haXe Langage Web Universel Les différentes technologies actuelles Navigateur Web Client HTML CSS Flash Java script Action script Serveur BDD (MySQL…), système de fichiers… Php Java Ruby / Python … La vision haXe ☺ Navigateur Web Client HTML CSS Flash haXe Serveur BDD (MySQL…), système de fichiers… haXe Historique de haXe • Motion-Twin© développe des jeux Flash et des sites de jeux • Flash Action Script MotionTypes • MotionTypes MTASC ( Client Flash) • MotionTypes MotionScript Neko (Serveur ) • Arrivée de AS3 (Flash Player 9) haXe • http://ncannasse.free.fr/?p=64 haXe langage universel Web • Compilateur en ligne de commande • Compatible Windows / Mac OS / Linux • Multi plateforme: JS, Neko, SWF (Flash6-9) • Syntaxe à la C++ /Java / JS / Action Script • Concepts inspirés de Java / Action Script / OCaml… • Possibilités d’extension (Php…) Concepts haXe • Librairies standard (communes) + Librairies spécifiques aux différentes plateformes • Typage fort + Inférence de types • Paramètres de types (Arrays, Lists, Hashs) et fonctions paramétrées • « Delegate » automatique • Compilation Conditionnelle • Infos Debug supplémentaires • Remoting Exemple de code class Main { static function main() { var s : String = "HelloWorld !"; var a = new Array<String>(); for ( i in 0...s.length ) a.push( s.substr( i, 1 ) ); var s2 = a.join( "" ); #if js trace( s2 + " in JS" ); #else flash trace( s2 + " in Flash"
    [Show full text]
  • Haiku (Operating System) from Wikipedia, the Free Encyclopedia
    Haiku (operating system) From Wikipedia, the free encyclopedia Haiku is a free and open-source operating system compatible with the now discontinued BeOS. Its development began in Haiku 2001, and the operating system became self-hosting in 2008.[4] The first alpha release was made in September 2009, and the most recent was November 2012; development is ongoing as of 2017 with nightly releases. Haiku is supported by Haiku, Inc., a non-profit organization based in Rochester, New York, United States, founded in 2003 by former project leader Michael Phipps.[5] Contents 1 History 2 Technology 3 Package management Developer Haiku, Inc. OS family BeOS 4 Compatibility with BeOS Working state Alpha 5 Beyond R1 Source model Open source Initial release 2002 6 System requirements Latest preview R1 Alpha 4.1 / 7 See also November 14, 2012 8 References Marketing target Personal computer 9 External links Available in Multilingual Platforms IA-32, ARM,[1] History and x86-64[2][3] Kernel type Hybrid Haiku began as the OpenBeOS project in 2001, the year that Be, Inc. was bought by Palm, Inc. and BeOS development was Default user interface OpenTracker discontinued; the focus of the project was to support the BeOS user community by creating an open-source, backward- compatible replacement for BeOS. The first project by OpenBeOS was a community-created "stop-gap" update for BeOS 5.0.3 License MIT License in 2002. In 2003, the non-profit organization Haiku, Inc. was registered in Rochester, New York, to financially support and Be Sample development, and in 2004, after a notification of infringement of Palm's trademark of the BeOS name was sent to OpenBeOS, Code License the project was renamed Haiku.
    [Show full text]
  • Title of Presentation
    haXe for Flash Game Dev. Nicolas Cannasse, Motion-Twin http://ncannasse.fr March 8, 2010 WARNING !!! code(); // ahead ! Compiler ? Compiler ? Compiler ? Compiler ? Before haXe : MTASC haXe@FGS D.R.Y. Don't Repeat Yourself DRY DRY DRY Type Inference Data Structures • AS : Array, Dictionary, Vector – (+) native speed – (-) not customizable • Algorithms ~= Data Structures • How to express your own (abstract) DS ? Generics class Foo { var arr : Array<Sprite>; function new() { arr = new Array(); } } Generics Generics in use http://lab.polygonal.de haXe@FGS K.I.S.S. Keep it Simple, Stupid Enums Enums Enums Enums Enums In action ! PBJ Assembler Iterators Iterators Iterators Iterators Iterators • Use them as you wish – By simply adding .iterator() method • Optimized for common cases – Array, Vector, .... • Iterator + Generics + Functional = Lambda haXe@FGS I.N.M.S. I Need More Speed ! Compiler Speed • hxFormat Benchmark – 64 files , 10.000 lines, 300KB • haXe : 0.31s • AS3 conversion • MXMLC : 3.3s Inlining Inline In Action ! Back to Generics Generics • The issue with Generics • The solution : haxe.rtti.Generic • Tradeoff Poll What is the most fast way to read/write data ? A) Array B) Vector C) ByteArray D) SomethingElse Poll What is the most fast way to read/write data ? A) Array B) Vector C) ByteArray D) SomethingElse Poll What is the most fast way to read/write data ? A) Array B) Vector C) ByteArray D) Alchemy Global Memory Alchemy flash.Memory // Quake Fast Inverse Square Root function invSqrt( x : Float ) : Float { var half = 0.5 * x; flash.Memory.setFloat(0,x); var i = flash.Memory.getI32(0); i = 0x5f3759df - (i>>1); flash.Memory.setI32(0,i); x = flash.Memory.getFloat(0); x = x * (1.5 - half*x*x); return x; } flash.Memory • classic invSqrt : 92.61 • « optimized » invSqrt : 56.71 (+62%) • flash.Memory invSqrt : 11.72 (+686%) – ~8 times faster ! – ~same time as a DIV ! flash.Memory In Action ! Summary In case you were sleeping..
    [Show full text]
  • Video on Demand and Catch-Up TV in Europe
    On-demand audiovisual services have mushroomed in Europe. Video on demand, catch- Video on up television and video sharing are vying for the consumer’s attention but are facing the problem of internet piracy at the same time. The landscape has become very fragmented demand and is developing very rapidly. Business models are being defined and are in some cases Video on merging with one another. The crisis on the advertising market and the limits imposed and on the development of the free services offered by the public broadcasters are leading to a growing interest in paid-for services, but the development of pay models is being catch-up TV impeded by piracy and it seems these services will not come into their own until on- demand offerings can be fully accessed on a television set instead of only on a computer demand in Europe screen or mobile telephone. The provision of access to VOD on a TV is thus becoming a very important issue and galvanising manufacturers and network operators into action. This report provides a complete and up-to-date picture of the different on-demand au- diovisual services and of how they fit into the strategy of the various types of player. It and is both concise and detailed and will be a useful tool for anyone seeking to understand the complexity of this evolving field. catch-up TV Set up in December 1992, the European Audiovisual Observatory’s mission is to gather European and distribute information on the audiovisual industry in Europe. The Observatory is a in Europe European public service body comprised of 36 member states and the European Commu- Audiovisual nity, represented by the European Commission.
    [Show full text]
  • Development Tendencies of Programming Languages S.J
    Journal of Engineering and Technology DEVELOPMENT TENDENCIES OF PROGRAMMING LANGUAGES S.J. Mahmudova* Department of Software Engineering, Institute of Information Technology of ANAS, Baku, Azerbaijan. ABSTRACT The study presents the information on software engineering (SE) and the knowledge spheres covered by SE. The development stages of programming and the problems encountered in this field are explored. Various programming languages are used to create software for problems. Programming is the process of developing software for a computer. One of the main goals of modern software engineering is to create software products for different problem-oriented areas and to ensure its effectiveness throughout the life cycle. In a broad spectrum, programming means the creation process of software. This includes analyzing and managing the issue, scheduling and designing the program, developing algorithms and data structures, and writing, executing, testing, documenting, configuring, completing and accompanying the program texts. The point is that although the programming languages are powerful and multifunctional, syntax for none of these languages is currently perfect and universal. Hence the programming languages are constantly developing. Broadcasting multi-core processors, cloud programming, portable techniques (digital video camera, music player, mobile phones, GPS navigators, Notebook, İpad, etc.) as well as distributed architecture have created new problems for manufacturers. The information on programming languages are presented, the comparative
    [Show full text]