amiga-news ENGLISH VERSION
.
Links| Forum| Kommentare| News melden
.
Chat| Umfragen| Newsticker| Archiv
.

amiga-news.de Forum > Suche [ - Suche - Neue Beiträge - Registrieren - Login - ]

Erste << 28 29 30 31 32 -33- 34 35 36 37 38 >> Letzte Ergebnisse der Suche: 8130 Treffer (30 pro Seite)
Holger   Nutzer

14.06.2011, 16:56 Uhr

[ - Direktlink - ]
Thema: Cloud Computing auf der Cebit
Brett: Get a Life

Zitat:
Original von hjoerg:
Kein Mensch wird dort seine wichtigen Daten speichern ohne Kopien zu besitzen.

Ich bin bestimmt niemand, der den Anbietern eines Dienstes die Schuld für die Dummheit der Menschen in die Schuhe schieben will, insbesondere in diesem Fall, wo jeder die Wahl hat und auch ohne technisches Verständnis darauf kommen sollte.

Also jetzt, nach der Klarstellung, dass es mir nicht um die Schuldfrage geht:
glaubst Du wirklich, was Du da oben geschrieben hast?

--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

14.06.2011, 16:15 Uhr

[ - Direktlink - ]
Thema: Cloud Computing auf der Cebit
Brett: Get a Life

Zitat:
Original von _PAB_:
Was soll denn diese "Cloud" in der Realität überhaupt sein, fragt sich das niemand?
Letztenendes sind es Web-Applikationen, wie wir sie schon aus dem letzten Jahrtausend kennen!

Es ist ein Haufen verschiedenster Dinge, die unter dem Namen "Cloud" laufen. Wenn ich mir bei bei "Cloud-Computing" Anbietern (z.B. Amazon) Rechenleistung anmiete, dann ist das Webinterface sekundär. Es handelt sich dann also nicht um Web-Applikationen wie vor zehn Jahren, sondern um Rechenzentren wie vor dreißig/vierzig Jahren.

Andererseits gibt es natürlich auch Anbieter von Webservices, die ihre "Web2.0" Angebote jetzt "Cloud" Angebote nennen.

Und dann ist da noch die Microsoft-Marketing Tussi, die ihre Urlaubsbilder "ab in die Cloud" lädt, die dann magischerweise perfekt nachbearbeitet zurückkommen ... bzw. nach dem neuen Geschäftsmodell in der Cloud (und als quasi-Eigentum von Microsoft) verbleiben.

Aber Microsoft wird schon noch merken, dass es keine gute Idee ist, ihre Cash-Cow, das klassische Desktop-Betriebssystem zu kannibalisieren.

--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

10.06.2011, 17:47 Uhr

[ - Direktlink - ]
Thema: Gewinnwahrscheinlichkeit Spiel 77 - hab ich in Mathe gepennt?
Brett: Get a Life

Zitat:
Original von _PAB_:
Ist aber auch überflüssig, weil Lottokugeln schlicht kein Gedächtnis haben und sich nicht merken können, wie oft sie schonmal gezogen wurden oder ob sie in einer Reihe mit anderen Zahlen auf dem Schein stehen würden...

Hat auch niemand behauptet.

Du hast aber offensichtlich den wichtigsten Punkt nicht verstanden: statistisch gesehen gewinnt jeder mal, wenn er lange genug spielt. Nicht zwangsläufig einen Sechser, das ist klar. Aber trotzdem ist für die Frage, ob sich das Spielen langfristig lohnt, nur relevant, wie hoch der Gewinn ist, wenn man mal gewinnt, egal ob das nun ein Dreier oder Vierer ist.

Zitat:
Letztlich ist aber auch völlig klar, dass man im Mittel nur verlieren kann, denn Lotto ist ein großer magischer Kasten in den eine Summe von XYZ Millionen pro Spielrunde reingesteckt wird und wovon nur ca. XYZ/2 Millionen wieder ausgezahlt werden.
Falsch. Auch wenn nur Gesamteinsatz/Quote ausgeschüttet wird, kann ein einzelner Spieler mehr als Einsatz/Quote gewinnen, wenn dafür andere deutlich weniger gewinnen. Und genau das ist der Fall, es gewinnt auch im Mittel nicht jeder Spieler gleich viel. Lies Dir einfach nochmal meine anderen Postings in Ruhe durch, bis Du es verstanden hast.

--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

09.06.2011, 18:11 Uhr

[ - Direktlink - ]
Thema: Gewinnwahrscheinlichkeit Spiel 77 - hab ich in Mathe gepennt?
Brett: Get a Life

Zitat:
Original von _PAB_:
Ich habe mit 16 mal ausführliche Simulationen zu dem Thema gemacht und versucht ein Lotto-System und Roulette-System zu programmieren.

Hat diese Lotto-Simulation auch die anderen Millionen Mitspieler und deren Verhalten berücksichtigt?

--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

09.06.2011, 12:41 Uhr

[ - Direktlink - ]
Thema: Gewinnwahrscheinlichkeit Spiel 77 - hab ich in Mathe gepennt?
Brett: Get a Life

@DrNOP:
Er hat ja nicht behauptet, dass die Bilanz für jeden Lottospieler zutrifft.

Es ist ja vielmehr so, dass man tatsächlich mit einer positiven Bilanz herausgehen kann, wenn man sich verinnerlicht, dass man nicht gegen den Betreiber spielt (der gewinnt immer), sondern gegen die anderen Spieler. Solange es bei denen genügend gibt, die Geburtstage, Glückszahlen oder geometrische Formen auf dem Tippschein ankreuzen und sich somit ihre Quote im Falle eines Gewinnes versauen, kann man theoretisch mit einem Plus rausgehen, wenn man dagegenhält. Die anderen zahlen dann die Zeche.

--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

08.06.2011, 15:47 Uhr

[ - Direktlink - ]
Thema: GUI Markup Language
Brett: Programmierung

Zitat:
Original von AGSzabo:
Was genau muß ich lernen und in welcher Reihenfolge?

Hey, wer hat denn was von „müssen“ gesagt? ;)

Sind doch nur Empfehlungen und die sind auch frei von irgendeiner Reihenfolge. Ich hab sie auch schon genannt.

Das eine Thema ist XSL(T), um XML-Dateien mit bestehenden Tools umwandeln zu können. Dokumentation und Tutorials findet man zuhauf, wenn man sucht, z.B. auch hier: http://de.selfhtml.org/xml/darstellung/index.htm

Ein mögliches Zwischenziel könnte es sein, die von mir geposteten Beispiele verstehen zu können. Ab da kann man sie auch für eigene Zwecke erweitern. (Natürlich auch gerne hier Fragen stellen)

Interessant dürfte das vielleicht auch insofern für Dich sein, dass Du dann auch bemerkst, wo Dein XUI-API Design die Komplexität bei der Umwandlung in die Höhe treibt. Diese Komplexität trifft Dich teilweise auch dann, wenn Du den Prozess in einem eigenen Programm abbilden wolltest, statt einen XSLT-Prozessor zu verwenden.

Das zweite Thema ist, wie man seine eigene XML-Sprache formal deklariert. Da gibt es zwei Möglichkeiten, DTD und Schema. Ersteres ist weniger komplex und auch weniger mächtig, hat aber vor allem den Nachteil, nicht XML zu sein. Schema ist dagegen äußerst leistungsfähig, dementsprechend komplexer, entspricht aber, wie bereits gesagt, in Grundzügen dem, wie Du es auch selbst gemacht hättest.

Ich denke, Du findest schon passendes Material, wenn Du danach googlest.
Zitat:
Und steht es mir frei kleine Abwandlungen vor zu nehmen, wenn mit dem gegebenen etwas nicht so möglich ist wie ich es brauche?
Kommt drauf an, was Du hinterher draus machst. Als Kommunikationsmittel zwischen Programmierern können an Standards angelehnte, modifizierte Sprachen immer noch funktionieren. Existierende Werkzeuge mit Modifikationen zu verwenden, wird dagegen deutlich schwieriger.

Aber eigne Dir erst einmal das Wissen an, bevor Du Dich mit der Frage beschäftigst, ob es für Dich ausreicht, modifiziert werden müsste oder womöglich gar nicht brauchbar ist.

--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

03.06.2011, 23:05 Uhr

[ - Direktlink - ]
Thema: Backslash-Inflation
Brett: Forum und Interna

'Na' d'as' i'st' d'oc'h 'Su'pe'r.

--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

03.06.2011, 23:00 Uhr

[ - Direktlink - ]
Thema: GUI Markup Language
Brett: Programmierung

Zitat:
Original von AGSzabo:
Aber schau mal: wenn meine Mutter ein Kreutzworträtsel macht, schaut sie dann gleich in der Lösung nach?

Falsche Frage. Wenn Deine Mutter ein Kreuzworträtsel macht, versucht sie dann das Rätsel zu lösen, oder ein eigenes zu erstellen? Und wenn sie wider Erwarten letzteres macht, fängt sie dann an, Papier selber zu schöpfen und eigene Druckertinte zusammenzurühren?
Zitat:
Und wenn es schon zwei Bibliotheken zum parsen von xml gibt, warum nicht auch noch eine dritte?
Mmmh, ich weiß ja, dass Du nicht wirklich eine nützliche Anwendung anstrebst, sondern yet-another-gui-toolkit. Aber selbst für das frage ich mich, ob Du nicht doch Lust hast, selbiges innerhalb Deiner eigenen Lebenszeit fertig zu machen, statt jetzt noch eine XML-Softwaresuite anzufangen, die ebenfalls nie wirklich fertig sein wird.
Zitat:
In 68k Assembler zu programmieren und noch tools dafür zu entwickeln ist sowieso eine brotlose kunst.
Nicht mehr als in jeder anderen Programmiersprache für 68k zu entwickeln. Ob man damit etwas schafft, hängt nicht von der Sprache ab.
Zitat:
So eine konformität zum autocomplete wäre aber nett. Ich weiss leider nicht bescheid.
Hehe, machst Du das ganze nicht genau deshalb, um etwas zu lernen? Dann solltest Du aber auch bereit sein, etwas zu lernen.

--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

03.06.2011, 17:39 Uhr

[ - Direktlink - ]
Thema: GUI Markup Language
Brett: Programmierung

Zitat:
Original von AGSzabo:
Namen sind imo nicht so wichtig. Ich sehe nicht ein, warum ich mich da an Schema halten soll.

Es geht nicht um die Namen, sondern darum, dass Du gerade dabei bist, das Rad neu zu erfinden. Du lehnst das eine ab, mit der Begründung, es sei Dir zu kompliziert (oder was auch immer) und erfindest etwas, dass am Ende dasselbe nur mit anderen Namen (und ein paar strukturellen Fehlern) ist.

Der Vorteil, etwas vorhandenes zu nutzen, liegt doch auf der Hand: da haben eine paar Leute, die Ahnung davon haben, sich Gedanken zu gemacht und bereits Lösungen für Probleme geschaffen, die Du noch gar nicht erkannt hast.

Du könntest Deine OXML-Beschreibung jemand anderes in die Hand drücken, ohne ihm noch erklären zu müssen, wie bestimmte Dinge gemeint sind, was soweit geht, dass XML-Parser die Beschreibung verstehen und die Richtigkeit einer Datei verifizieren können und XML-Editoren Dir sogar Auto-Completion u.ä. Gimmicks bei der Bearbeitung anbieten können.

Klar, kann man auf alles verzichten, die Frage ist nur, warum? Wie bereits festgestellt, kommt bei Deinem eigenen Ansatz auch nichts besseres raus. Nicht mal etwas wirklich anderes.

--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

03.06.2011, 17:31 Uhr

[ - Direktlink - ]
Thema: Backslash-Inflation
Brett: Forum und Interna

Wenn man Beiträge mit Apostroph postet, wird im Beitrag ein Backslash davor gesetzt, den man aber erst zu Gesicht bekommt, wenn der Beitrag im Thread ist, nicht in der Vorschau.

Antwortet man auf einen solchen Beitrag (oder bearbeitet ihn), stellt man hinterher fest, dass auch der Backslash mit einem Backslash versehen wird. Am Schluss sieht das dann so aus:

Einmal bearbeitet:
http://www.amiga-news.de/forum/thread.php?id=33968&BoardID=7#349616

Darauf dann geantwortet:
http://www.amiga-news.de/forum/thread.php?id=33968&BoardID=7#349623
(ca. in der Mitte des Beitrags)

Damit keiner sagt, Apostrophe kommen nur selten vor:
http://www.amiga-news.de/forum/thread.php?id=33075&BoardID=2&start=91#349466
http://www.amiga-news.de/forum/thread.php?id=33075&BoardID=2&start=91#349592 (hier gleich drei in einem Beitrag)

Und es gibt noch ein paar mehr, alles aus den letzten Tagen. Sonst wär's mir gar nicht aufgefallen. (Ups schon wieder...)

--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

03.06.2011, 17:23 Uhr

[ - Direktlink - ]
Thema: Kommentare nur mit Login
Brett: Forum und Interna

Zitat:
Original von cgutjahr:
Zitat:
...
Vorschlag Nummer 4: Anonyme Kommentare werden grundsätzlich erst nach Sichtung durch Moderator freigeschaltet

Zu Punkt vier wäre allerdings noch zu ergänzen, dass das für anonyme Poster vermutlich deutlich Verzögerungen geben würde, da die beiden verbliebenen Moderatoren nicht gerade über zu viel Zeit verfügen.
Da es in der Vergangenheit auch schon Fälle gab, dass ein Administrator auf einen anonymen, noch nicht freigeschalteten Kommentar antwortete, und die "Normalsterblichen" eine Antwort zu einer noch nicht lesbaren Frage sahen, sehe ich das nicht so eng.

Die Länge der Verzögerung wäre halt Glückssache.

--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

03.06.2011, 17:18 Uhr

[ - Direktlink - ]
Thema: Test
Brett: Forum und Interna

xyzabcxyz
--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

03.06.2011, 17:13 Uhr

[ - Direktlink - ]
Thema: Test
Brett: Forum und Interna

'Bla'
--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

03.06.2011, 17:11 Uhr

[ - Direktlink - ]
Thema: GUI Markup Language
Brett: Programmierung

Zitat:
Original von AGSzabo:
XML code:
<ENTITY name="MENU" prefix="M" objects="0">  <!-- false=0=none, yes=true=-1, 1-n -->
	<ATTR name="popup" type="bool" />
	<ATTR name="hook" type="label" />
	<ENTITY name="SEPARATOR" private="true" close="false"></ENTITY>
	<ENTITY name="ITEM" private="true" prefix="MI" objects="none" recursive="true">
		<ATTR name="text" type="string" />
		<ATTR name="ID" type="number" />
		<ATTR name="exclude" type="words" />
	</ENTITY>
</ENTITY>


Ersetze "ENTITY" durch "element" und "ATTR" durch "attribute" und bist sehr nah an dem, wie es in Schema definiert wird. Nur dass Schema all die Dinge berücksichtigt, die Du noch vergessen hast. Wie z.B., wie man definiert, dass ein bestimmtes Element auch unterhalb eines weiteren Elements erscheinen darf oder wie man ganz einfach deklariert, dass sich ein bestimmtes Element im wesentlichen genauso wie ein bestimmtes anderes verhalten soll, also zum Beispiel, wie man sagt, dass für "HORIZ" genau die gleichen Regeln wie für "VERT" gelten.

--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

03.06.2011, 17:04 Uhr

[ - Direktlink - ]
Thema: GUI Markup Language
Brett: Programmierung

Zitat:
Original von Thore:
Du kannst auch ein Parent Parameter einführen, z.B.
<ENTITY name="ITEM" parent="MENU" ....

Bei XML-Sprachen kann es durchaus auch vorkommen, dass ein Element in mehr als einem Parent-Typen vorkommen darf. So darf z.B. Item sowohl in Menu als auch in Item vorkommen, sofern man kein spezielles SubItem Element einführt. Somit gibt es schon in diesem Beispiel zwei mögliche Parents.

Ich bevorzuge beim Design solcher Schnittstellen, die Diversifizierung der Elemente zu reduzieren und dadurch weniger Regeln zu erzeugen. Weniger Regel heißt, weniger Code zum Überprüfen und weniger mögliche Fehler.

Das heißt, wenn ein Item hier letztendlich ein Art von Aktion beschreibt, warum dann nicht ein Action-Element definieren, das je nach Kontext unterhalb von Menu ein Menu-Item, unterhalb von Toolbar ein Toolbar-Item und überall sonst ein Button erzeugt?

Dann braucht man nicht drei unterschiedliche Elemente, die nur an bestimmten Orten erlaubt sind, sondern nur eines, das nahezu überall erlaubt ist: weniger Regel, weniger mögliche Fehler.

Und wenn man noch die unsäglichen Präfixe abschafft, würde sich der Code auf einen Bruchteil reduzieren. Entweder Tags haben unterschiedliche Bedeutung und somit auch unterschiedliche Namen oder sie meinen das Gleiche und können auch gleich heißen. In jedem Fall kommt man ohne Präfixe aus.

Also, wozu ein oxTA_text Tag und ein oxLabA_text Tag, wenn beide eh dasselbe meinen, nämlich Text, womit ein einziges ox_text ausreichen würde? Im Grund ist oxWA_title auch dasselbe in Grün.

Wenn man dann noch eine konsistente Groß-/ Kleinschreibung einhalten würde, wäre das Skript zur XML-Asm Konvertierung schätzungsweise ein Fünfzeiler...

--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

03.06.2011, 16:47 Uhr

[ - Direktlink - ]
Thema: GUI Markup Language
Brett: Programmierung

Zitat:
Original von AGSzabo:
...ich glaube, daß es der Einfachkeit halber für meine Zwecke völlig ausreicht, das einfache Schema wie ich darstellte zu verwenden. Imo wird das ebenso von gewissen tools unterstützt, glaube ich.

Welche Tools sollen das sein? Wenn Du bestehende Tools verwenden willst, musst Du auch eine bestehende Beschreibungssprache verwenden.

Natürlich kannst Du auch auf die Verifizierung verzichten, dann erzeugt eine fehlerhafte GUI-Beschreibung eben auch fehlerhaften Code. In Projekten mit überschaubaren Rahmen kann man auch mit dem shit-in-shit-out Prinzip etwas zustande bringen.
Zitat:
Sowohl für das Schema als auch für die GUI definitionen kann ich, bevor ich die Inhalte auswerte, alles in strukturen lesen, ...
Zu welchem Zweck? Um das selber zu programmieren, was die schon existierenden Tools mit dem hier schon geposteten Skript frei Haus liefern?
Zitat:
Dafür gibts vielleicht sogar schon ne library?
Dafür gibt's im Aminet sogar zwei, expat und libxml.

Guckst Du einfach mal unter http://aminet.net/search?query=XML

--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

02.06.2011, 10:50 Uhr

[ - Direktlink - ]
Thema: GUI Markup Language
Brett: Programmierung

Zitat:
Original von AGSzabo:
@Holger:
Und aus hook="zoom_hook" wird dc.l oxChkA_hook,zoom_hook mit label für den code ganz unten nach den strings?

Das kannst Du haben, halte ich aber nicht für sinnvoll. Was willst Du mit einem leeren Label? Wenn Du ihn mit Code füllen willst, solltest Du das in einer anderen Datei tun, als der, die bei der nächsten Änderung der XML-Datei übergebügelt wird.
Zitat:
Kann man das XSLT auf mehrere Dateien aufteilen damit zB jede neue Klasse ihre eigenen Kompilier-Regeln mitbrigen kann?
Klar, aber momentan braucht es gar keine eigenen Regeln, von den Präfixen und ein paar Inkonsistenzen in Deiner Definition abgesehen.
Zitat:
Die Benennung mit _001 ... _002 und so weiter hat mir besser gefallen, und zwar nicht global sondern per klasse und per attribut, wie in meinem Eingangsbeispiel. Geht das?
Grundsätzlich denke ich schon, dass das geht. Es verkompliziert das Ganze allerdings und das ohne jeglichen Mehrwert. Wenn Du eine XML-Datei als Ausgangsbasis hast, solltest Du auch nur diese als Source-Code ansehen und den Assembler-Code als Zwischenschritt, der nicht unbedingt perfekter Lesbarkeit genügen muss.

Zitat:
@holger
Ich verwende mal meine eigene 'regelsprache' um es zu verdeutlichen. Die Frage ist ja, ob das mit dem XSLT auch geht.

Es lohnt sich durchaus, dafür Schema zu verwenden (erlernen). Wenn Du Deine Syntax mit einem XML-Schema beschreibst, kann der Parser auch überprüfen, ob die Eingangsdatei gemäß dieser Beschreibung korrekt ist. XSLT tut das nicht, was allerdings auch gut so ist, denn das vereinfacht die Transformation erheblich, weil man sich nur auf das jeweilige Ziel-Format konzentrieren kann.
Zitat:
Wir sehen hier, dass das MENU nicht andere objekte (allowobjects="false") sondern nur eigene sub-elemente beinhalten kann (ITEM). Außerdem kann ein ITEM wieder weitere ITEMS rekursiv enthalten (<RECUR name="ITEM" />).
Das ist für die Transformation gar nicht relevant, da deren Aufgabe, wie gesagt, nicht das Verifizieren der Struktur ist. Der Vorteil zeigt sich genau hier, weil die Erweiterung nur minimale Änderungen erfordert (rot hervorgehoben):
code:
<?xml version="1.0" encoding="iso-8859-1"?>
<xsl:stylesheet version="1.0"
  xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  <xsl:output method="text" encoding="ISO-8859-1" indent="no"/>

  <xsl:template match="/">
    <xsl:apply-templates select="." mode="tags"/>
    <xsl:apply-templates mode="strings"/>
  </xsl:template>

  <xsl:template match="*" mode="tags">
    <xsl:variable name="n" select="name()"/>
.<xsl:value-of select="concat($n,generate-id())"/>
      <xsl:apply-templates select="@*" mode="tags"/>
      <xsl:apply-templates mode="ref"/>
        dc.l    TAG_END
      <xsl:apply-templates mode="tags"/>
  </xsl:template>
  <xsl:template match="@*" mode="tags">
        dc.l    ox<xsl:apply-templates select="parent::node()" mode="prefix"/>_<xsl:value-of select="concat(name(),',',.)"/>
  </xsl:template>
  <xsl:template match="@senschar" mode="tags">
        dc.l    oxChkA_senschar,"<xsl:value-of select="."/>"
  </xsl:template>
  <xsl:template match="@RELPTR" mode="tags">
        dc.l    OX_<xsl:value-of select="concat(name(),',',.)"/>
  </xsl:template>
  <xsl:template match="@title|@text" mode="tags">
        dc.l    ox<xsl:apply-templates select="parent::node()" mode="prefix"/>_<xsl:value-of select="concat(translate(name(),
        'abcdefghijklmnopqrstuvwxyz','ABCDEFGHIJKLMNOPQRSTUVWXYZ'),
        ',.',name(),generate-id())"/>
  </xsl:template>
  <xsl:template match="*" mode="ref">
        dc.l    OX_<xsl:value-of select="concat(name(),',.',name(),generate-id())"/>
  </xsl:template>
  <xsl:template match="MENU/ITEM|ITEM/ITEM" mode="ref">
        dc.l    ox<xsl:apply-templates select="parent::node()" mode="prefix"/>_item,.<xsl:value-of select="concat(name(),generate-id())"/>
  </xsl:template>
  <xsl:template match="*" mode="strings">
  <xsl:for-each select="@title|@text">
.<xsl:value-of select="concat(name(),generate-id())"/>
        dc.b    "<xsl:value-of select="."/>",0</xsl:for-each>
    <xsl:apply-templates mode="strings"/>
  </xsl:template>
  <!-- tag id prefixes -->
  <xsl:template match="WINDOW" mode="prefix">WA</xsl:template>
  <xsl:template match="HORIZ|VERT" mode="prefix">GA</xsl:template>
  <xsl:template match="FRAME" mode="prefix">FrA</xsl:template>
  <xsl:template match="TITLE" mode="prefix">TA</xsl:template>
  <xsl:template match="PLANEVIEW" mode="prefix">???????</xsl:template>
  <xsl:template match="CHECK" mode="prefix">ChkA</xsl:template>
  <xsl:template match="LABEL" mode="prefix">LabA</xsl:template>
  <xsl:template match="MENU" mode="prefix">MA</xsl:template>
  <xsl:template match="ITEM" mode="prefix">MIA</xsl:template>
  <!-- ignore text pi and so on -->
  <xsl:template match="node()" mode="ref" priority="-1"/>
  <xsl:template match="node()" mode="tags" priority="-1"/>
  <xsl:template match="node()" mode="strings" priority="-1"/>
</xsl:stylesheet>


--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

02.06.2011, 01:44 Uhr

[ - Direktlink - ]
Thema: GUI Markup Language
Brett: Programmierung

Zitat:
Original von AGSzabo:
@Holger:

Wow, so compliziert hatte ich mir das garnicht vorgestellt.

Ach, das geht schon. Der initiale Aufwand ist etwas hoch und die XSLT-Sprache etwas gewöhnungsbedürftig.

Aber das Ding verarbeitet schon beliebige Elemente und Attribute und braucht nur geringfügige Änderungen für Erweiterungen. Ein weiteres textuelles Attribut muss z.B. nur an der richtigen Stelle namentlich eingefügt werden, ohne weiteren Code zu benötigen.
Zitat:
Aber wenn es funktioniert ... es sieht sehr vielversprechend aus und man kann das "kompilieren" mit schon bestehender software erledigen, wenn ich das richtig verstanden habe.
Ja, das hab ich, glaube ich, dreimal erwähnt ;)
Zitat:
an den attributen muss noch etwas geschraubt werden. so soll es zb nicht

oxhook,zoom_hook

heissen, sondern

oxChkA_hook,zoom_hook

Du wirst es nicht glauben, aber genau das ist schon drin. Irgendwie habe ich das Kunststück fertig gebracht, den Output einer älteren Fassung zu posten, obwohl das XSLT darüber schon fertig und getestet war. Deshalb habe ich auch nicht noch mal auf den Output drauf geschaut.

Aber wenn Du in das XSLT schaust, wirst Du etwas von "prefix" lesen. Und wenn Du es ausprobierst, wirst Du auch die gewünschten Attribute sehen.

--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

02.06.2011, 01:30 Uhr

[ - Direktlink - ]
Thema: GUI Markup Language
Brett: Programmierung

Zitat:
Original von Thore:
XML ist zwar eine gute Beschreibung die unendlich Möglichkeiten bietet, allerdings muss der Parser diese Möglichkeiten kennen ... und das Programm muss immer mit dem passenden XML mitgeliefert sein.

Der Parser ist ein generischer XML-Parser und bekommt, so man denn verifizieren will, eine DTD oder ein Schema vom Programm, und akzeptiert somit nur, was das Programm verarbeiten kann. Prinzipiell kann man aber auch eine Syntax für beliebige Erweiterungen definieren, deren Code man dann laden kann. Wenn Programme beliebige Plugins laden können, die sich nur dadurch auszeichnen, dass ihr Code in einem bestimmten Verzeichnis liegt, warum dann nicht auch Erweiterungen, die anhand einer XML-Deklaration beschrieben werden...
Zitat:
Sinn oder Unsinn die GUI zu 100% in Userhand zu legen (als Script) ist sicher ein streitbares Thema. Kommt aufs Programm an würd ich sagen, aber _generell_ ist die Idee nicht so prickelnd. Hier stehen sich Dynamische Änderung und Bequemlichkeit gegenüber mit Programmstabilität und ggf Sicherheit.
Das ist eine grundsätzliche Frage. Vertraut man dem Benutzer, für den man das Programm ja schreibt, oder geht man den Apple-Weg. Angesichts dessen, was Benutzer auf dem Amiga schon via Patches Programmen untergejubelt haben, sind via XML konfigurierbare GUIs eher harmlos.

Die Programmstabilität leidet nicht unter einem GUI, das via XML beschrieben wird. Das GUI besteht unabhängig von der Quelle seiner Beschreibung immer nur aus einem Layout von vordefinierten Komponenten. Ob Button A links oder rechts von Button B liegt, hat keine Auswirkungen auf die Programmlogik.
Das Programm muss nur vor dem Übernehmen einer GUI-Beschreibung verifizieren, dass für alle in der XML-Datei definieren Bindungs (Aktionen, Datenquellen, etc.) auch wirklich eine Entsprechung im Programm bekannt ist und dass für bestimmte Programmaktivitäten auch ein zugehöriges GUI-Element definiert wurde. Mindestens das Zurücksetzen des GUIs auf den Default, bzw. das erneute Laden eines anderen GUIs sollte im jeweiligen GUI möglich sein.
--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

02.06.2011, 01:16 Uhr

[ - Direktlink - ]
Thema: GUI Markup Language
Brett: Programmierung

Nachtrag:
Ich hab's natürlich auch mal auf nem Amiga getestet, Systemunabhängigkeit hin oder her ;)

Hiermit: http://aminet.net/package/text/misc/xsltproc funktioniert es. Es werden zwar im Vergleich zu anderen Prozessoren ein paar zusätzliche Zeilenumbrüche generiert, aber die tun ja nicht weh.

--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

02.06.2011, 01:05 Uhr

[ - Direktlink - ]
Thema: GUI Markup Language
Brett: Programmierung

Zitat:
Original von AGSzabo:
Ich weis ja noch nicht, was Deine gebrachten Kürzel wie zB XSLT bedeuten, ich hab mal kurz bei wikipedia geschaut, aber mir es scheint sinnvoll für diese Beschreibungen wieder XML code zu verwenden. ZB hier die Umschreibung für die Fenster-Klasse:
XML code:
<CLASS name="WINDOW" attrprefix="W">
    <ATTRIBUTE name="name" type="string" />
</CLASS>


Das vermischt zwei Dinge.

Schema wäre das, was in einer XML-Syntax beschreibt, welche Elemente und Attribute existieren und wo sie erlaubt sind, bzw. welche Werte für de Attribute gültig sind.

XSLT beschreibt, wie eine gültige XML-Datei in eine andere Form transformiert werden soll. Für das, was Du oben beschrieben hast, sähe eine mögliche XSLT-Datei so aus:
XSLT code:
<?xml version="1.0" encoding="iso-8859-1"?>
<?xml version="1.0" encoding="iso-8859-1"?>
<xsl:stylesheet version="1.0"
  xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  <xsl:output method="text" encoding="ISO-8859-1" indent="no"/>

  <xsl:template match="/">
    <xsl:apply-templates select="." mode="tags"/>
    <xsl:apply-templates mode="strings"/>
  </xsl:template>

  <xsl:template match="*" mode="tags">
    <xsl:variable name="n" select="name()"/>
.<xsl:value-of select="concat($n,generate-id())"/>
      <xsl:apply-templates select="@*" mode="tags"/>
      <xsl:apply-templates mode="ref"/>
	dc.l	TAG_END
      <xsl:apply-templates mode="tags"/>
  </xsl:template>
  <xsl:template match="@*" mode="tags">
	dc.l	ox<xsl:apply-templates select="parent::node()" mode="prefix"/>_<xsl:value-of select="concat(name(),',',.)"/>
  </xsl:template>
  <xsl:template match="@senschar" mode="tags">
	dc.l	oxChkA_senschar,"<xsl:value-of select="."/>"
  </xsl:template>
  <xsl:template match="@RELPTR" mode="tags">
	dc.l	OX_<xsl:value-of select="concat(name(),',',.)"/>
  </xsl:template>
  <xsl:template match="@title|@text" mode="tags">
	dc.l	ox<xsl:apply-templates select="parent::node()" mode="prefix"/>_<xsl:value-of select="concat(translate(name(),
        'abcdefghijklmnopqrstuvwxyz','ABCDEFGHIJKLMNOPQRSTUVWXYZ'),
        ',.',name(),generate-id())"/>
  </xsl:template>
  <xsl:template match="*" mode="ref">
	dc.l	OX_<xsl:value-of select="concat(name(),',.',name(),generate-id())"/>
  </xsl:template>
  <xsl:template match="*" mode="strings">
  <xsl:for-each select="@title|@text">
.<xsl:value-of select="concat(name(),generate-id())"/>
	dc.b	"<xsl:value-of select="."/>",0</xsl:for-each>
    <xsl:apply-templates mode="strings"/>
  </xsl:template>
  <!-- tag id prefixes -->
  <xsl:template match="WINDOW" mode="prefix">WA</xsl:template>
  <xsl:template match="HORIZ|VERT" mode="prefix">GA</xsl:template>
  <xsl:template match="FRAME" mode="prefix">FrA</xsl:template>
  <xsl:template match="TITLE" mode="prefix">TA</xsl:template>
  <xsl:template match="PLANEVIEW" mode="prefix">???????</xsl:template>
  <xsl:template match="CHECK" mode="prefix">ChkA</xsl:template>
  <xsl:template match="LABEL" mode="prefix">LabA</xsl:template>
  <!-- ignore text pi and so on -->
  <xsl:template match="node()" mode="ref" priority="-1"/>
  <xsl:template match="node()" mode="tags" priority="-1"/>
  <xsl:template match="node()" mode="strings" priority="-1"/>
</xsl:stylesheet>

Sie weicht in ein paar Punkten ab. Zum einen überlässt sie das Generieren der Label-IDs dem jeweils verwendeten Prozessor, das müssen somit nicht zwangsläufig laufende Nummern sein. Zum anderen habe ich alle String-Definitionen an Ende hinter die Tags gelegt. Das halte ich für sinnvoller als Strings und Tags zu mischen und alle naselang potentiell Padding-Bytes einzufügen. Durch die Trennung sind alle Tags 4-byte aligned, sofern der erste 4-byte aligned ist und das ohne ein einziges padding-byte.

Ein Resultat der Transformation (in diesem Fall mit Xalan) Deiner oben geposteten XML-Datei würde so aussehen:
Assembler code:
.WINDOWN65538
	dc.l	OX_RELPTR,g_pic_window
	dc.l	oxWA_layout,TRUE
	dc.l	oxWA_TITLE,.titleN65542
	dc.l	oxWA_undermouse,TRUE
	dc.l	OX_VERT,.VERTN65545
	dc.l	TAG_END
      
.VERTN65545
	dc.l	OX_TITLE,.TITLEN65547
	dc.l	OX_FRAME,.FRAMEN65550
	dc.l	OX_HORIZ,.HORIZN65559
	dc.l	TAG_END
      
.TITLEN65547
	dc.l	oxTA_TEXT,.textN65548
	dc.l	TAG_END
      
.FRAMEN65550
	dc.l	oxFrA_hprop,TRUE
	dc.l	oxFrA_style,bevel
	dc.l	oxFrA_vprop,TRUE
	dc.l	OX_PLANEVIEW,.PLANEVIEWN65555
	dc.l	TAG_END
      
.PLANEVIEWN65555
	dc.l	OX_RELPTR,g_picview
	dc.l	TAG_END
      
.HORIZN65559
	dc.l	oxGA_spaceprop,FALSE
	dc.l	OX_CHECK,.CHECKN65562
	dc.l	OX_LABEL,.LABELN65567
	dc.l	TAG_END
      
.CHECKN65562
	dc.l	OX_RELPTR,g_zoom_check
	dc.l	oxChkA_hook,zoom_hook
	dc.l	oxChkA_senschar,"z"
  
	dc.l	TAG_END
      
.LABELN65567
	dc.l	oxLabA_linechar,1
	dc.l	oxLabA_TEXT,.textN65569
	dc.l	TAG_END
      
.titleN65542
	dc.b	"Memory Monitor",0
.textN65548
	dc.b	"bitplane",0
.textN65569
	dc.b	"zoom",0

Übrigens können auch Webbrowser XML+XSLT verarbeiten. Wenn Du <?xml-stylesheet type="text/xsl" href="ui2asm.xsl"?> an den Anfang Deiner XML-Datei schreibst, versuchen sie die XSLT-Datei zu verwenden, um die XML-Datei darzustellen. Wenn obige XSLT-Datei unter dem Namen ui2asm.xsl abgespeichert wurde, zeigt der Browser also den Assembler-Code an (habe ich mit Firefox und Internet Explorer getestet).

--
Edit: Doppelung entfernt

[ Dieser Beitrag wurde von Holger am 02.06.2011 um 09:56 Uhr geändert. ]
 
Holger   Nutzer

01.06.2011, 22:52 Uhr

[ - Direktlink - ]
Thema: GUI Markup Language
Brett: Programmierung

Zitat:
Original von AGSzabo:
Das GUI direkt durch parsen zu erstellen, wozu soll das gut sein?

Man kann es beispielsweise ändern, ohne das Programm neu übersetzen zu müssen. Das ermöglicht es auch, dass User für ihre Umgebung angepasste GUIs erzeugen können, somit kann ein Programm sowohl für 640x256, als auch 1680x1050 das optimale GUI anbieten.
Zitat:
Immerhin muss man (bei mir) die addressen bestimmter erzeugter objekte in globale variablen des programms schreiben können, um später auf diese objekte direkt zugreiffen zu können.
Dafür gibt es IDs.
Zitat:
Die Namen der Attribute und Klassen im Ziel-Code sind einfach das was man im XML code findet plus ein prefix. Das ist einfach. Man muss aber wissen zB wissen ob es sich bei einem Parameter um einen String handelt.
Ja, und genau diese Informationen musst Du liefern, wenn Dir jemand so einen Compiler schreiben soll.
Zitat:
Im moment ist mir bis zu einem gewissen Punkt klar, wie der Compiler zu coden sei, blos dass manche elemente nicht andere elemente enthalten können, sondern nur)individuelle unterelemente.
Dann solltest Du die Art und Weise, wie Du den Compiler schreiben wolltest, noch mal überdenken. Ein XSLT-Prozessor mit verifizierendem XML-Parser liefert Dir das alles frei Haus, sofern Du eine DTD oder ein Schema und natürlich das XSLT-Skript definierst.

--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

01.06.2011, 22:43 Uhr

[ - Direktlink - ]
Thema: GUI Markup Language
Brett: Programmierung

Zitat:
Original von Thore:
Für MUI brauchts das meiner Meinung nach nicht, da die defines sehr gut ausgeklügelt sind, um ein Pseudo-Script im Sourcecode zu integrieren. Damit wird MUI in C zu programmieren wie Scripting. Feine Sache :)

Nicht wirklich. Wenn man mal versucht hat, ein komplexes GUI damit zu bauen, merkt man sehr schnell, dass es eine Krücke ist, die ein Sprachelement, das nicht mal richtiges C ist (Präprozessor) für etwas zu missbrauchen, für das es niemals gedacht war (hierarchische Datenstrukturen definieren). Nicht falsch verstehen, dass ganze ist im Rahmen des Möglichen wirklich gut, der Rahmen des Möglichen ist halt leider sehr begrenzt.

Eine sorgfältig entworfene XML-Anwendung wäre dafür definitiv sinnvoll, auch deshalb, weil es systemübergreifend diverse nützliche Werkzeuge dafür gibt, und eine Transformation innerhalb weniger Stunden implementiert, wenn man XSLT verwenden würde.

Und aus einer Beschreibung Code für verschiedene Toolkits generieren zu können, wäre auch nicht unbedingt schlecht.

--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

01.06.2011, 12:41 Uhr

[ - Direktlink - ]
Thema: OS 4.1 classic Bildstörungen auf Bildschirm
Brett: Amiga, AmigaOS 4

Zitat:
Original von schluckebier:
Ich weiß, dass tploetz ein Problem mit aussagekräftigen Fehlerbeschreibungen hat, ...

Das wäre ja traumhaft, wenn es nur das wäre. Aber es kommt noch hinzu, dass er konstruktive Vorschläge nicht umsetzt, sondern stattdessen irgendwelche abstrusen Aktionen durchführt, zu denen niemand geraten hat, und dann mit neuen Problemen kommt, die vorhersehbare Folgen eben jener Aktionen sind und außerdem gerne mit einer ihm eigenen Logik widerspricht, wenn ihm jemand etwas zu erklären versucht.

--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

31.05.2011, 11:57 Uhr

[ - Direktlink - ]
Thema: Facebook-Client
Brett: Amiga, AmigaOS 4

Zitat:
Original von Honitos:
Unter Windows läuft hier übrigens auch ein Widget und nicht der Browser...

Ein "Widget" ist auch nur eine Mini-Webseite in einem Mini-Webbrowser.

--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

31.05.2011, 11:56 Uhr

[ - Direktlink - ]
Thema: Stargate Universe Petition
Brett: Get a Life

Zitat:
Original von _PAB_:
Ebenso ist diese Äußerung auch volkswirtschaftlich richtig, wenn man bedenkt, dass es mehr auszuzahlen gibt, wenn länger eingezahlt wird. (Angenommen die Anhebung erhöht tatsächlich die Einzahlungen.)

Ja, unter der Annahme ist das natürlich zweifelsohne richtig. Solange wir aber keine Vollbeschäftigung haben, kann man genausogut immer annehmen, dass für einen in Rente gehenden ein Ersatz zur Verfügung stünde, der dann, statt HartzIV zu beziehen, in die Rentenkasse einzahlen würde.
Unter dieser Betrachtung wäre eine Anhebung des Rentenalters volkswirtschaftlich eher kontraproduktiv.

In Wahrheit ist natürlich weder das eine noch das andere ausreichend, um alle zu erwartenden Effekte wirklich vorherzusagen. Ich würde es halten, wie in der Medizin: wenn man weder vorhersagen kann, ob und welcher Schaden ohne einen Eingriff zu erwarten ist, noch ob und welcher Nutzen wirklich durch den Eingriff entsteht, dann lässt man den Eingriff, der immer mit einem Risiko behaftet ist, bleiben.

Und nutzt die gesparten Ressourcen für Änderungen, die wirklich etwas bringen.

--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

31.05.2011, 11:49 Uhr

[ - Direktlink - ]
Thema: KillCD0 will nicht ...
Brett: Amiga, AmigaOS 4

Zitat:
Original von Bluebird:
@Holger: Ab 3.5 oder 3.1 mit Deficons sollte das kein Problem sein, die Deficons liegen ja im ENV auch fuer Volumes , wenn man da den Icon fuer eine Position speichert bleibt er immer am selben Platz wenn ein zb CD1 gemountet wird ...

Das funktioniert nur, wenn die CDs kein eigenes Icon besitzen.
Zitat:
Aber wie gesagt ich hab nur Kick/WB 2.1 ob Deficons damit schon laeuft ...
DefIcons gab es schon vor AOS3.5, d.h. es gibt eine AOS2.0-AOS3.1 Version. Die ist Bestandteil von NewIcons: aminet.net/package/util/wb/NewIcons46
Zitat:
k.a, aber verschiedene CDFS moechte ich shcon wegen dem Ram Verbrauch und vielleicht Leistungsverlust der CPU vermeiden ...
Kann ich nachvollziehen.
Hast Du es schon mal mit ASSIGN CD0: DISMOUNT versucht? Ich weiß jetzt gerade nicht, ab welcher OS-Version das funktioniert...
Zitat:
PS: der 6 byte Cache des 68010 kann man nicht wirklich nutzen oder ? C:CPU meint mein nur Inst NoCache ;)
Es ist kein Instruction Cache im allgemeinen Sinne. Er kann ausschließlich kleine Schleifen beschleunigen. Anderes würde bei dieser Größe auch keinen Sinn ergeben.
Aber ich geh davon aus, dass er automatisch aktiv wird, wenn die CPU eine passende Schleife ausführt.

--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

30.05.2011, 10:42 Uhr

[ - Direktlink - ]
Thema: Facebook-Client
Brett: Amiga, AmigaOS 4

Zitat:
Original von Honitos:
gibt es eigentlich einen bracuhbaren Facebook-Client für OS3.x/4.x ?

Ich glaube, das nennt sich "Webbrowser".

Möglicherweise verwechselst Du den Amiga auch gerade mit iPhone/iPad. Beim Amiga braucht man nicht für jede Webseite eine eigene "Äpp".

--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

30.05.2011, 10:38 Uhr

[ - Direktlink - ]
Thema: KillCD0 will nicht ...
Brett: Amiga, AmigaOS 4

Zitat:
Original von thomas:
@Bluebird:
AmigaDOS unterscheidet überhaupt nichts anhand des Dateisystems.

Und das ist nicht unbedingt gut. Meldet man denselben Datenträger mit verschiedenen Versionen oder Implementierungen desselben Dateisystems an, so haben die resultierenden Volumes den gleichen Namen und den gleichen Diskkey, dass heißt, können nur noch unterschieden werden, wenn man sie über den Namen des Laufwerks anspricht. Sollten sich auf der CD Programme, Icons, Skripte, etc. befinden, die absolute Pfade verwenden, funktionieren diese nicht dann mehr.

--
Good coders do not comment. What was hard to write should be hard to read too.
 
Holger   Nutzer

30.05.2011, 10:25 Uhr

[ - Direktlink - ]
Thema: Stargate Universe Petition
Brett: Get a Life

Zitat:
Original von _PAB_:
@Maja:
Es ist unumstößlicher Fakt, dass man mehr Rente bekommt, wenn man bis 67 arbeitet, als wenn man mit 65 aufhören würde.

Und das vollkommen unabhängig davon, ob der Gesetzgeber Rente mit 65 oder Rente mit 67 als Standard festgelegt hat.
Zitat:
Nichts anderes hat der Politiker (bei genauem Hinsehen) gesagt.
Warum hat er es denn gesagt? Selbstverständlich hat er es deshalb gesagt, weil er a) den Leuten einreden will, ein per Gesetz höher gelegtes Rentenalter hätte damit etwas zu tun und/oder b) die Leute ihm jetzt auch noch dankbar dafür sein sollen, dass sie jetzt zum höheren Renteneintrittsalter gezwungen werden.
Zitat:
Das ist eben die "Kunst" in der Politik (=Leute verarschen).
Unter diesem Gesichtspunkt hat der Politiker wohl versagt, wenn man erst einmal jemanden wie Dich braucht, der den Leuten erklärt, wie die Rede zu verstehen ist, damit sie wirksam verarschen kann, statt, zumindest Deiner Meinung nach missverständlich, sofort durchschaut zu werden.

--
Good coders do not comment. What was hard to write should be hard to read too.
 
 
Erste << 28 29 30 31 32 -33- 34 35 36 37 38 >> Letzte Ergebnisse der Suche: 8130 Treffer (30 pro Seite)

Suchbegriffe
Schlüsselwörter      Benutzername
Suchoptionen
Nur in diesen Foren suchen
   nur ganze Wörter
Nur Titel anzeigen
alle Treffer anzeigen

.
Impressum | Datenschutzerklärung | Netiquette | Werbung | Kontakt
Copyright © 1998-2024 by amiga-news.de - alle Rechte vorbehalten.
.