symlink.ch
Wissen Vernetzt - deutsche News für die Welt
 
symlink.ch
FAQ
Mission
Über uns
Richtlinien

Moderation
Einstellungen
Story einsenden

Suchen & Index
Ruhmeshalle
Statistiken
Umfragen

Redaktion
Themen
Partner
Planet

XML | RDF | RSS
PDA | WAP | IRC
Symbar für Opera
Symbar für Mozilla

Freunde
Benutzergruppen
LUG Switzerland
LUG Vorarlberg
LUGen in DE
SIUG
CCCZH
Organisationen
Wilhelm Tux
FSF Europe
Events
LinuxDay Dornbirn
BBA Schweiz
CoSin in Bremgarten AG
VCFe in München
Menschen
maol
Flupp
Ventilator
dawn
gumbo
krümelmonster
XTaran
maradong
tuxedo

 
freeBASIC 0.16 veröffentlicht
Veröffentlicht durch Ventilator am Montag 12. Juni 2006, 13:37
Aus der nicht-totzukriegenden Abteilung
Programmieren theuserbl schreibt: "Nach einem halben Jahr Entwicklungszeit, hat das FreeBasic-Projekt sein gleichnamiges unter der GPL stehende Produkt in der Version 0.16 für Windows, Linux und DOS herausgegeben. Wie alle anderen Versionen zuvor aus, handelt es sich offiziell noch immer um eine Beta-Version, auch wenn man es wohl kaum merken wird."

"Die Neuerungen lassen sich ebenfalls auf der Homepage nachlesen. freeBASIC ist ein Basic-Dialekt, der sich an QBasic orientiert und auch versucht nahezu 100% zu QBasic kompatibel zu sein. Ein weiteres Ziel ist die Hardware- und Betriebssystem Unabhängigkeit. Daher wird mittelfristig angestrebt, ein Backend für den GCC zu erstellen, um auch amd64, ppc und dergleichen zu unterstützen.

Für alle Plattformen enthält freeBASIC die gfxlib2, die es für alle Plattformen ermöglicht auch grafische QBasic-kompatible Programme zu erstellen. Jedoch werden die QBasic-Funkitionalitäten um einiges übertroffen. So sind weit höhere Auflösungen möglich als mit SCREEN 12 und SCREEN 13 bei QBasic. Höhere Auflösungen mit TrueColor werden genauso zusätzlich unterstützt wie Pointer, dubble buffering, objektorientierte Erweiterungen und vieles mehr."

Venty merkt an: "Hmm, mal sehn. Kann mans unter Linux auch als Wrapper benutzen, wie ScriBa?

Bei Googles unterm Sofa | Druckausgabe | Google Earth für Linux  >

 

 
symlink.ch Login
Login:

Passwort:

extrahierte Links
  • GNU GPL
  • Linux
  • FreeBasic-Projekt
  • Neuerungen
  • ScriBa
  • Mehr zu Programmieren
  • Auch von Ventilator
  • Diese Diskussion wurde archiviert. Es können keine neuen Kommentare abgegeben werden.
    Liebe Kinder (Score:-1, Troll)
    Von Anonymer Feigling am Monday 12. June 2006, 14:10 MEW (#1)
    BASIC hat mein Leben versaut. Also haltet euch
    fern davon und fangt gar nicht erst an. Wenn
    euch langweilig ist, geht doch einfach zum YMCA
    oder raucht eine. Rauchen tötet ja bekanntlich auch die Zeit.

    Ich kann sehr gut verstehen, wenn jemand damit alte
    Programme am Leben erhalten will und sei es nur aus Sentimentalität. Bei den ganzen neuen Features frage ich mich aber ernsthaft: Wer will damit bitte
    *neue* Software schreiben? Masochisten? Das solche Personen dann auch noch PPC-kompatible Programme mit Pointers und so hinbekommen, das glaub ich dann doch eher nicht. Das bekommt ja kaum der durchschnittliche C-Programmierer hin und da ist das nun wirklich nicht so schwer, wenn man die Sprache mal lernt und nicht nur falsch-learning-by-frickling exerziert.
    Re: Liebe Kinder (Score:2, Tiefsinnig)
    Von Sensemann am Monday 12. June 2006, 14:52 MEW (#4)
    (User #798 Info)
    >Rauchen tötet ja bekanntlich auch die Zeit.

    ne, rauchen tötet mit der zeit, nicht die zeit ;)
    Re: Liebe Kinder (Score:1)
    Von Anonymer Feigling am Monday 12. June 2006, 16:18 MEW (#5)
    "Rauchen tötet ja bekanntlich auch die Zeit."

    Oh mein Gott, sie haben die Zeit getötet! Bastards!
    Fettes Feature! (Score:0)
    Von Anonymer Feigling am Monday 12. June 2006, 14:38 MEW (#2)
    > So sind weit höhere Auflösungen möglich als mit SCREEN 12 und SCREEN 13 bei QBasic.

    Whoa!

    Edsger Wybe Dijkstra (Score:1)
    Von Bros am Monday 12. June 2006, 14:40 MEW (#3)
    (User #812 Info) http://www.mario-konrad.ch

    Sicher eine tolle Sache, mir fällt da aber nur das Zitat von Dijkstra (rest in peace) ein:

    "It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration."
    -- E.W.Dijkstra, 1975

    BASIC-Bashing (Score:2)
    Von stw (stephan at walter dot name) am Monday 12. June 2006, 20:12 MEW (#6)
    (User #940 Info) http://stephan.walter.name/
    BASIC-Bashing ist in, aber ich möchte behaupten, dass es so schlimm nicht ist.

    Disclaimer: Habe mit BASIC angefangen, dann kamen x86-Assembler, C, C++, dann ein bisschen Python und Ruby.

    Wer Assembler kennt, weiss dass BASIC gar nicht soweit davon entfernt ist. Du kannst noch so schöne Strukturen in einer HLL schreiben, auf dem Prozessor wird das schlussendlich alles zu LET, IF und GOTO (bzw. MOV, CMP, JMP).

    Wer seinen Horizont nicht auf BASIC begrenzt, wird - so behaupte ich - davon keinen Schaden erleiden.

    Re: BASIC-Bashing (Score:0)
    Von Anonymer Feigling am Monday 12. June 2006, 21:08 MEW (#7)
    Du bist doch das beste Beispiel. In Deiner Liste taucht nicht eine einzige funktionale Programmiersprache auf. Allerdings ist x86-Assembler noch schlimmer als BASIC. Das merkt man besonders, wenn ehemalige Assembler-Spezialisten versuchen Code in einer Hochsprache zu optimieren. Man sollte wenigstens noch ein paar ganz andere Assemblersprachen gesehen haben. Die überlegen ständig was für Assembler-Code wohl dabei herauskommt und machen damit den Code unleserlich und oft sogar kaputt, wenn es die Sprache erlaubt (C und C++).

    Das merkt man ja auch an Deiner Argumentation(?), dass da sowieso nur Maschinencode herauskommt. Das klingt für mich so logisch wie: Wer Assembler beherrscht kann auch Windows schreiben, ist ja bloß Maschinencode. Ehemalig Assembler-"Profis" ignorieren meist auch, dass die CPUs, die sie mal programmiert haben nicht mehr Stand der Technik sind. D.h. was vor ein paar Jahren noch ein ganz toller Trick war, bremst auf modernen CPUs bloß aus. Dafür gibt es eben Compiler. Ein aktueller Compiler weiß in der Regel wesentlich besser wie er für eine bestimmte CPU optimiert. Zur Not kann man dann immer noch nachhelfen, aber die meisten Performanzprobleme ergeben sich aus sub-optimalen Algorithmen und lassen sich mit Mikrooptimierungen bestenfalls kaschieren.

    Was Assembler betrifft, das geht doch völlig an der Sache vorbei. Code muss verständlich, wartbar, wiederverwendbar und vor allem korrekt sein. BASIC
    und Assembler bieten dem Programmierer in absoluter gar keiner Hinsicht Unterstützung. Etwas Assembler wissen kann nicht Schaden und hilft in C Pointer zu verstehen, aber insgesamt ist es relativ nutzlos. Du brauchst ganz sicher nicht Assembler benutzt haben um gute bzw. performante Software zu schreiben.

    Re: BASIC-Bashing (Score:2)
    Von sheimers (stefan.sym@heimers.ch) am Monday 12. June 2006, 21:30 MEW (#8)
    (User #255 Info) http://www.heimers.ch/
    >Ein aktueller Compiler weiß in der Regel
    > wesentlich besser wie er für eine bestimmte
    > CPU optimiert.

    Das wird immer wieder behauptet, aber ich glaube es nicht.
    Re: BASIC-Bashing (Score:1, Informativ)
    Von Anonymer Feigling am Monday 12. June 2006, 22:01 MEW (#9)
    Dann betrachte es einfach von der anderen Seite: Zeig mir Code bei dem der perfekte Assembler-Programmierer einen relevanten Performanzgewinn erziehlt. Dann lass ihn das auch noch mindestens für AMD64 und PPC machen. Wenn Du zum MPlayer-Core-Team gehörst oder eine 3D-Engine schreibst, dann glaub ich Dir sogar, dass Assembler wichtig ist. Für 90% (eher mehr) aller Anwendungen und Entwickler ist Assembler völlig uninteressant.
    Vor allem kann ein Compiler abhängig davon wie Code verwendet wird, diesen u.U. komplett weglassen. Zeig mir das mit Assembler und zeig mir den Code noch mal einem Refactory, wenn sich einiges an der Struktur geändert hat.

    Re: BASIC-Bashing (Score:0)
    Von Anonymer Feigling am Tuesday 13. June 2006, 08:57 MEW (#12)
    DAS Beispiel ist meiner Meinung nach GMP.
    Die wissen was sie tun und haben den Code für verschiedene CPUs optimiert. Klar ist, dass mit Assembler keine grösseren Programme geschrieben werden können, jedoch ist es bei gewissen Bereichen sicher angebracht.
    Re: BASIC-Bashing (Score:1)
    Von apple am Tuesday 13. June 2006, 06:19 MEW (#10)
    (User #817 Info)
    bzgl. Optimierung: ich hab mal etwas C mit genau einem inline assembler Befehl programmiert: Programming challenge

    Man sieht aber schön, wie der GCC das in den Programm/Daten-Fluss integrieren kann, wenn man ihm dazu ein paar hints (das meint jenes "=r" (result) : "r" (input)) gibt.

    Natürlich könnte jeder begabte assembler-programmierer den asm code direkt so aufschreiben, aber
    a) erkennt man darin den Algorithmus kaum noch
    b) ist es also schwer das zu warten, erweitern, etc.
    c) ist es mühsam, d.h. Projekte vom Umfang und von der Komplexität eines UNIX/MPlayer/OpenOffice/Mozilla sind einfach nicht in asm machbar.

    Re: BASIC-Bashing (Score:2)
    Von P2501 am Tuesday 13. June 2006, 08:35 MEW (#11)
    (User #31 Info) http://www.p2501.ch/

    Pft. Ich nehme mal an Java ist für dich die einzige brauchbare Sprache? Oder LISP vielleicht? Ich würde dich gerne mit ein paar Programmierern bekannt machen, die da leicht anderer Meinung sind. ;-)

    Nein, ich denke nicht, dass normale Applikationen mit Assembler geschrieben werden sollten. Ich halte auch C für ungeeignet. Trotzdem ist die Kenntnis dieser Sprachen nützlich, weil man einen Eindruck erhält, wie die Maschine arbeitet. Gewisse Grundsätze gelten da über alle verbreiteten Architekturen hinweg.


    --
    GPL ist der Versuch, den Ring gegen Sauron einzusetzen.

    Re: BASIC-Bashing (Score:0)
    Von Anonymer Feigling am Tuesday 13. June 2006, 13:48 MEW (#14)
    Ich halte nicht C für ungeeignet, sondern 08/15 Programmierer ungeeignet für C. C ist kein High-Level-Assembler. Wer das behauptet hat weder C noch Assembler verstanden.

    Java ist einfach nur Schrott und im kommerziellen Bereich weit weniger verbreitet als es Dir die Uni
    oder die Webseite Deiner Wahl weismachen will. Java ist die natürliche Konsequenz aus dem C++-Debakel.

    Ich könnte mich mit sehr vielen Sprache anfreunden z.B. Eiffel aber auch Scheme. Leider kann man es sich nicht wirklich aussuchen, wenn man Software nicht komplett im Alleingang schreiben will. Letztlich sollte es immer auf den Einsatzzweck ankommen, aber das ist meist nur eine Floskel, an die sich die wenigsten halten.

    Ich bin auch der Meinung, dass das Wissen um Assembler und innere Vorgänge überschätzt wird. Das
    ist mit ein Grund warum 70% aller Informatiker ihr Studium abbrechen und besser an die FH gegangen oder gleich eine Lehre gemacht hätten. Solches Wissen ist nur zum Teil wichtig und kann von jedem Interessierten leicht erworben werden. Viel wichtiger sind mathematisches Verständnis (Leistungskurs Mathematik an der Schule ist ein Dreck dagegen) und abstraktes Denken.

    Das schlägt sich auch dann in Programmiersprachen und Programmen nieder. Meist geht es hier in Babyschritten von A nach B. Konzepte und gute Algorithmen sind ein "Afterthought". Ohne die JDK wäre Java genauso "nutzlos" wie C und jeder würde sofort eine bessere Sprache nehmen.
    Re: BASIC-Bashing (Score:2)
    Von P2501 am Tuesday 13. June 2006, 20:54 MEW (#15)
    (User #31 Info) http://www.p2501.ch/

    Ah, ich hatte deinen letzten Kommentar etwas missverstanden. Wie auch immer: Eine moderne Programmiersprache für Standardapplikationen muss meiner Meinung nach Strings und Range Checking kennen. Programmierfehler passieren. Selbst dem erfahrendsten Programmierer. Und bei C bedeutet das häufig eine schwer entdeckbare Sicherheitslücke.

    Und ja, ein grundlegendes Verständnis für die Abläufe in der CPU halte ich für essentiel, um guten Code zu schreiben. Das wurde mir erstmals klar, als ich erklären musste, warum ein bestimmtes Programm ständig Stack-Overflows erzeugte (Rekursion ohne Return), oder warum eine Zählvariable plötzlich negativ wurde (Integer Overflow). Bestimmte Algorithmen, die mathematisch oder abstrakt durchaus Sinn machen, lassen sich nicht oder nur schlecht in Maschinencode umsetzen.

    PS: "Just because it's valid C code doesn't mean it compiles." ;-)


    --
    GPL ist der Versuch, den Ring gegen Sauron einzusetzen.

    Re: BASIC-Bashing (Score:0)
    Von Anonymer Feigling am Tuesday 13. June 2006, 23:35 MEW (#17)
    Was "Range Checking" etc. angeht, so bleibt die Entwicklung ja nicht stehen. Das hier gibt einen
    guten Überblick über den Stand der Technik:

    http://article.gmane.org/gmane.linux.ubuntu.hardened.general/149/

    Damit dürfte C in naher Zukunft weit weniger gefährlich sein. Natürlich werden Programme dadurch nicht korrekt.

    Das eigentlich Problem bei C sind nicht die NUL-terminierten Strings selbst, sondern eher die hirnverbrannten Funktionen der libc. Und damit meine ich nicht nur strcpy() sondern eher alle.
    strlen() und strchr() sind so gerade noch erträglich. C hätte eben irgendwann eine Bibliothek ähnlich der JDK oder auch der Eiffel SDK bekommen müssen. Natürlich gehört das nicht in den C-Standard selbst. Bibliotheken gibt es auch genug.
    Schwierig ist nur die guten zu finden. Bei Java und Eiffel stand hier immer eine einzelne Firma dahinter. Bei C war das nie der Fall, deshalb konnte wohl auch keine vernünftige und umfassende Bibliothek herauskommen.

    Um Stack-Overflows zu verstehen braucht man aber keine tiefen Assembler-Kenntnisse und um beim Thema zu bleiben ganz sicher keine Basic-Kenntnisse. Außerdem kann "zu viel" Wissen auch zu falschen Annahmen führen z.B. das Rekursion immer Stack fressen muss. Wenn man sich z.B. bei Wikipedia über Scheme informiert, sieht man das "tail recursion"
    sehr effizient sein kann und Rekursion bei funktionaler Programmierung oft das A&O ist. Mir ist auch klar, dass vieles was mathematisch elegant gelöst ist, ihn Hardware das Gegenteil davon ist.
    Andererseits fehlen vielen Programmierern recht grundlegende mathematische Kenntnisse, die extreme Optimierungen darstellen können. Natürlich macht ein Mathematiker an sich keinen guten Programmierer - oft sogar einen schlechten, da sie i.d.R. Perfektionisten sind und "elegante" Lösungen wollen. Und ein Programmierer ohne mathematischen Background wird für viele Bereiche nicht geeignet.
    Deshalb gibt es ja auch Chefprogrammierer oder Software-Architekten, die sich die passenden Algorithmen überlegen und vielleicht gerade noch schwierige implementieren. Der Programmierer implementiert dann den ganzen Rest nur nach Vorgaben. Man sollte sich gut überlegen, welche der beiden Aufgaben einem wirklich liegt bzw. ob man überhaupt beruflich "hacken" will.

    "Just because it's valid C code doesn't mean it compiles."

    Das häufigere Problem ist eher: "Just because it compiles or even runs doesn't mean it's valid C code." Hätte es keine Alphas gegeben, wäre
    AMD64 ein Ladenhüter geworden.
    Re: BASIC-Bashing (Score:1)
    Von mirabile (root@[IPv6:2001:6f8:94d:4:2c0:9fff:fe1a:6a01]) am Wednesday 14. June 2006, 12:05 MEW (#23)
    (User #504 Info) http://mirbsd.de/
    Die Antwort _dazu_ kommt allerdings
    von Niklas Wirth... (Oberon halt,
    oder seine diversen Vorgänger.)

    Ich bin BSDler, ich darf das!
    Dieser Platz zu vermieten!
    Re: BASIC-Bashing (Score:1)
    Von P2501 am Wednesday 14. June 2006, 09:08 MEW (#20)
    (User #31 Info) http://www.p2501.ch/

    Was "Range Checking" etc. angeht, so bleibt die Entwicklung ja nicht stehen. Das hier gibt einen guten Überblick über den Stand der Technik:

    Sorry, aber das ist reine Symptombekämpfung.

    Das eigentlich Problem bei C sind nicht die NUL-terminierten Strings selbst, sondern eher die hirnverbrannten Funktionen der libc. Und damit meine ich nicht nur strcpy() sondern eher alle.
    strlen() und strchr() sind so gerade noch erträglich. C hätte eben irgendwann eine Bibliothek ähnlich der JDK oder auch der Eiffel SDK bekommen müssen. Natürlich gehört das nicht in den C-Standard selbst. Bibliotheken gibt es auch genug.

    Erfahrungsgemäss ist das Konzept der 0-Terminierung per se schon problematisch, nicht nur wegen allfälliger Overflows. Die schlechten Bibliotheksfunktionen sind aber das Hauptproblem. Das überhaupt eine Bibliothek für Grundoperationen benötigt wird, ist allerdings an sich schon irritierend. Ausser man betrachtet C tatsächlich als High Level Assembler, dann macht das durchaus Sinn.

    Deshalb gibt es ja auch Chefprogrammierer oder Software-Architekten, die sich die passenden Algorithmen überlegen und vielleicht gerade noch schwierige implementieren. Der Programmierer implementiert dann den ganzen Rest nur nach Vorgaben.

    Nein, dieses Konzept ist praktisch ausgestorben. Technische Vorgaben beschränken sich heutzutage meist auf die Schnittstellen zur restlichen Software. Darum ist es wichtig, fachlich (was wollen die von mir?), mathematisch (wie berechne ich das?) und technisch (wie berechnet der Computer das?) auf der Höhe zu sein.


    --
    GPL ist der Versuch, den Ring gegen Sauron einzusetzen.

    Re: BASIC-Bashing (Score:0)
    Von Anonymer Feigling am Wednesday 14. June 2006, 09:42 MEW (#21)
    Klar bekämpft es nur Symptome. Aber wer schreibt noch Exploits, wenn diese nicht mehr funktionieren?
    Crashen kann ich auch Programme, die in fast jeder anderen Sprache geschrieben sind, solange diese nicht fehlerfrei sind.

    NUL-terminierte String sind als gemeinsames Interface z.B. für Funktionen wie open() völlig in Ordnung. Das heisst ja nicht das man sämtlichen Text oder sämtliche Strings so verwalten muss, soll oder will.

    Also Scheme ist meiner Ansicht nach kein HLA und hat String-Funktionen nicht eingebaut. Ich sehe auch ehrlich gesagt nicht den Vorteil von Sprachfeatures gegenüber einer standardisierten Bibliothek. Der Effekt ist doch derselbe nur verwässere ich bei letzterem die Syntax nicht Dingen, die letztlich für viele nur Gimmicks sind.
    [OT] Sprachdesign (Score:2)
    Von P2501 am Wednesday 14. June 2006, 10:15 MEW (#22)
    (User #31 Info) http://www.p2501.ch/

    Rein technisch sind syntaktische Kommandos einfacher in effizienten Code umzusetzen, als Funktions- oder Methodenaufrufe. Auch sind sie in der Regel intuitiver und besser lesbar.

    Selbstverständlich geht es auch anders. Smalltalk und Ruby, sowie abgeschwächt auch Python und zumindest ein Teil der LISP-Dialekte, setzen auf ein Minumum an syntaktischen Elementen. Jedoch ist die Syntax so ausgelegt, dass die Aufrufe "natürlich" aussehen. Ein Beispiel (in Smalltalk):

    a < b ifTrue: a = b

    Dies sind drei Signalisierungen (Methodenaufrufe) und kein einziges, syntaktisches Kommando. ALGOL-ähnlich würde es etwa so aussehen:

    a.lt(b).ifTrue(lambda(a.set(b)));


    --
    GPL ist der Versuch, den Ring gegen Sauron einzusetzen.

    Re: BASIC-Bashing (Score:2)
    Von P2501 am Wednesday 14. June 2006, 14:21 MEW (#25)
    (User #31 Info) http://www.p2501.ch/
    Pascal/Modula/Oberon sind IMHO in ihrer Urform aber auch wenig brauchbar. Manche der Dialekte können sich hingegen durchaus sehen lassen. Object Pascal (aka Delphi) ist nicht gerade die eleganteste Sprache auf Erden, aber recht angenehm in der Anwendung. Wenn man sich daran gewöhnen kann, dass Variablendeklaration und -nutzung scharf getrennt sind.

    --
    GPL ist der Versuch, den Ring gegen Sauron einzusetzen.

    Re: BASIC-Bashing (Score:1)
    Von mirabile (root@[IPv6:2001:6f8:94d:4:2c0:9fff:fe1a:6a01]) am Tuesday 13. June 2006, 21:57 MEW (#16)
    (User #504 Info) http://mirbsd.de/
    Wer braucht funktionale Programmiersprachen?

    Kannst Du Assembly? Sicher nicht, sonst wür-
    dest Du nicht solch einen Kommentar abgeben.

    Der Prozessor arbeitet nunmal imperativ, und
    mich hat BASIC genausowenig wie PHP versaut.
    Ich will nur nichts mit von anderen Leuten ge-
    schreibseltem BASIC- oder PHP-Kot zu tun ha-
    ben, jedoch ist eigenen, sauberen Code in die-
    sen Sprachen zu schreiben möglich, wenngleich
    nicht leichter als in anderen Sprachen. Nur
    ist die Einstiegshürde geringer.

    Ich bin BSDler, ich darf das!
    Dieser Platz zu vermieten!
    Re: BASIC-Bashing (Score:0)
    Von Anonymer Feigling am Tuesday 13. June 2006, 23:58 MEW (#18)
    Na ja, wer braucht MirBSD? Brauchen tut es wohl niemand. Einsetzen tut es aber beispielweise Google. Nein, nicht MirBSD (meines Wissens) sondern
    eine funktionale Programmiersprache:
    http://labs.google.com/papers/mapreduce.html

    Natürlich braucht man nicht jeden Kleinkram damit schreiben, aber effektiv schreibt doch fast jeder riesen Programme in seiner Lieblingssprache. Mozilla in C++ schreiben ist vielleicht naheliegend aber nicht sonderlich sinnvoll. Der MS IE ist AFAIK auch in C++ geschrieben. Es bloß eine Frage der Zeit bis in beiden gleich viele und meist auch gleichartige Bugs gefunden wurden. Von nicht-kritischen Bugs will ich gar nicht erst anfangen, bugzilla.mozilla.org kann schließlich jeder selbst lesen. Gut vieles liegt auch eher an
    den zahlreichen verkorksten Web-Standards.

    Ich verschiedene Assemblersprachen benutzt, hauptsächlich x86, aber auch 8085 (ja nicht 8086 oder 8088) und diverse Pseudo-Assemblersprachen für Lehrzwecke. x86-Asm liegt aber bald 10 Jahre zurück, damals noch in Kombination mit Turbo-Pascal. Mode 13h, Multi-Threading per Timer-IRQ etc. Nicht wirklich ernsthaft, schon gar nicht professionell, aber recht ausgiebig. Lesen kann ich es noch, nur leider verwendete damals jeder die Intel-Schreibweise unter DOS/Windows und allen Büchern, die ich so gelesen habe, während man heutzutage (unter Unix) für Assembler (z.B. nasm) die AT&T-Schreibweise nutzt. Das ist recht nervig, weil Ziel und Quelladdresse hier vertauscht sind.

    Auch für Betriebssysteme braucht man nur sehr wenig Assembler, hauptsächlich im Bootloader, fürs Context-Switching und in den Low-Level-MMU-Funktionen. Wie man bei BSD gut sehen kann, kommt man dort mit sehr wenig Assembler aus.

    Das Code von anderen lesbar sein muss, ist ja gerade des Pudelskern bei ernsthafter Software-Entwicklung. Jede Sprache erlaubt im Prinzip sauberen Code zu schreiben. Nur wenn, die oft mühsam entwickelten Techniken dafür nicht Konsens sind, dann kann man im Team damit nicht effizient arbeiten. Das ist bestenfalls sinnvoll bei kleineren One-Man-Projekten.

    Das ist aber auch ein Grund warum Sprachen wie Java so "beliebt" sind. Damit kann eben jeder irgendwie programmieren und die Wirtschaft freut sich über die Programmiersklaven. Solange Endverbraucher kaputte Software und solche mit völlig überzogenen Hardwareanforderungen akzeptiert, wird sich das wohl auch in dem Bereich nicht ändern.
    Re: BASIC-Bashing (Score:1)
    Von mirabile (root@[IPv6:2001:6f8:94d:4:2c0:9fff:fe1a:6a01]) am Wednesday 14. June 2006, 12:09 MEW (#24)
    (User #504 Info) http://mirbsd.de/
    nasm verwendet die Intel-Syntax (aber kaputt,
    pushf expandiert zu pushfd im 32-Bit Modus,
    um den Opcode pushf zu kriegen muß man pushfw
    schreiben), und gottlob kann man gas auch auf
    Intel-Syntax umstellen, und seither ist's mein
    Assembler der Wahl.

    Ich bin BSDler, ich darf das!
    Dieser Platz zu vermieten!
    Re: BASIC-Bashing (Score:0)
    Von Anonymer Feigling am Wednesday 14. June 2006, 01:25 MEW (#19)
    "Wer braucht funktionale Programmiersprachen?" Stimmt, wer braucht ueberhaupt verschiedene Programmiersprachen, wenn man doch alles in Assembler programmieren kann? Im Ernst: Funktionale Sprachen sind fuer manche Einsatzzwecke genial, zB zum schreiben von Interpretern, nicht umsonst wurde Pugs in Haskell geschrieben. Ausserdem lassen sich einige Algorithmen funktional deutlich besser erklaeren als mit haesslichem Pseudo-Pascal-Pseudocode.
    Re: BASIC-Bashing (Score:1)
    Von Bros am Tuesday 13. June 2006, 08:58 MEW (#13)
    (User #812 Info) http://www.mario-konrad.ch

    Ja ja, ist ja schon gut. Man muss ja auch immer alles soooo ernst nehmen, vor allem die Glaubenskriege. Allenfalls empfehle ich Dir: Emacs_vs_vi, VMS_vs_UNIX, Alle_vs_Microsoft, PS2_vs_GameCube, PSP_vs_DS, MP3_vs_OGG ...

    BTW: mit BASIC hatte ich auch mal angefangen ;-) ... bin aber trotzdem froh, diese Zeiten hinter mir zu haben *graus* ;-)


    Linux User Group Schweiz
    Durchsuche symlink.ch:  

    Never be led astray onto the path of virtue.
    trash.net

    Anfang | Story einsenden | ältere Features | alte Umfragen | FAQ | Autoren | Einstellungen