Releases
Ankündigungen und Versionsupdates
Hier sind die letzten Updates zur Entwicklung von NumeRe und allem anderen, was relevant sein könnte zum Nachlesen.
Wir veröffentlichen hier vor allem Entwicklungsupdates. Andere Themen finden sich hier eher selten und sehr unregelmäßig.
NumeRe v1.1.6 "Casimir"
veröffentlicht: 18.04.2024
Wir veröffentlichen heute die finale version 1.1.6.2404 (ChangesLog) benannt nach dem Physiker Hendrik Casimir, der am insbesondere durch den Casimir-Effekt bekannt ist.
Hervorgehobene Änderungen in dieser Version
UI-Änderungen
Eine optionale Funktion zum Extrahieren der Argumenttypen von Funktionen, Methoden und Prozeduren auf der Grundlage ihrer Namen wurde hinzugefügt.
Die Benutzerfreundlichkeit der Mouse-Over-Tooltips wurde verbessert. Es sollte nun wieder möglich sein, die Volltexte von Argumenten innerhalb von Funktionsklammern anzuzeigen.
Die automatische Einrückung stört nicht mehr bei der Verwendung von CTRL-Z.
Neue und verbesserte Funktionalitäten
Die neue Plotoption stacked ermöglicht das Stapeln von bars und hbars übereinander.
Balkendiagramme enthalten nun immer den Wert y=0. In manchen Situationen ist es sinnvoll, origin=sliding als zusätzliche Plotoption zu aktivieren.
Man kann jetzt benutzerdefinierte Achsen-Ticks mit einer Liste von Strings anstelle der durch neue Zeilen getrennten Strings übergeben.
Experimentelle Funktionen
Es ist nun möglich, neue Spalten in Tabellen zu erstellen, wenn einer unbekannten Spalte Werte zugewiesen werden, indem eine String-Indizierung mit den Spaltenüberschriften verwendet wird, d.h. TABLE(:, "MY-COL-HEADLINE"). Die neue Spalte wird an das Ende der Tabelle angehängt.
matop-Funktionen akzeptieren jetzt auch Matrixergebnisse als skalare Eingaben. Für aufeinanderfolgende skalare Eingaben kann auch ein einzelner Vektor übergeben werden, z.B. matop zero({1,3})
Wir haben Unterstützung für farbige Fensterthemen hinzugefügt. Wenn Sie dies testen möchten, finden Sie die Einstellung am Ende der Syntaxfarbenliste. Empfohlene Farbsätze sind der blaue Satz (Vordergrund: rgb(159,213,244) und Hintergrund: rgb(234,245,253)), der hellgraue Satz (Vordergrund: rgb(82,82,82), Hintergrund: rgb(181,183,185)) und der Splash-Image Satz (Vordergrund: rgb(214,177,182), Hintergrund: rgb(222,237,234))
Allgemeine Änderungen
Verbesserte Leistung von stfa, audioread und einigen Statistikfunktionen.
write verwendet jetzt standardmäßig noquotes. Der Parameter wurde entfernt und hat keine Auswirkung mehr.
Wenn die Werte nan und inf innerhalb eines Indexvektors verwendet werden, dann werden sie als ungültige Werte behandelt und geben immer einen ungültigen Wert zurück.
Viele Verbesserungen und Korrekturen
Anmerkungen
Dies ist eine stabile Version und baut auf den Änderungen des letzten Release Candidate auf.
Wenn Sie Probleme mit dem Herunterladen von SourceForge haben (insbesondere über MS Edge for Business), sollten Sie den direkten Download von Github in Betracht ziehen (siehe Abschnitt "Assets" am Ende der Versionshinweise).
Falls ihr Wünsche für die Zukunft habt, dann teilt sie uns bitte mit! Entweder per eMail, Discord oder direkt ins Ticketsystem eingetragen. Sie finden auf jeden Fall Gehör!
Die vollständigen Änderungen finden sich im ChangesLog.
NumeRe v1.1.6rc
veröffentlicht: 05.02.2024
Wir veröffentlichen heute den Release Candidate Version 1.1.6.2402 (ChangesLog). Wir freuen uns mitteilen zu dürfen, dass über 80 Änderungen Teil dieses Releases sind.
Hervorgehobene Änderungen in dieser Version
UI-Änderungen
Es wurde eine Funktion zum automatischen Einrahmen von Kommentaren hinzugefügt, wenn der Zeilenindikator aktiv ist.
Mit dem neuen Dateidialog und der Auswahl von "App" kann man eine benutzerdefinierte App aus einigen vordefinierten Vorlagen erstellen
Die Geschwindigkeit des Terminal-Renderings wurde erhöht, es stehen globale Variablen für die Autovervollständigung zur Verfügung, die Autovervollständigung wurde allgemein verbessert
Der Tabellenbetrachter gruppiert nun gemeinsame Tabellenkopfzeilen zusammen, wodurch eine virtuelle Hierarchie entsteht. Zeichenketten werden automatisch umgebrochen und die Gitterlinien können ausgeblendet werden
Folding wurde für LaTeX-Dateien aktiviert und ein einfacher Lexer für INI-Dateien wurde hinzugefügt
Neue und verbesserte Funktionalitäten
getfilelist() und getfolderlist() können nun Shell-Links (*.LNK-Dateien) folgen
getuilang() gibt die aktuelle Sprache des Benutzers zurück, getfilediff() gibt den vereinheitlichten Vergleich zweier Dateien (unified diff) zurück, die Funktionen to_utf8() und to_ansi() können zur Konvertierung von und nach UTF-8 kodierten Strings verwendet werden
vectshift() und circshift() führen Elementverschiebungen in Matrizen durch
Weibull-Wahrscheinlichkeitsfunktionen und Wahrscheinlichkeitsdichtefunktionen für alle Verteilungen
Mehrere neue String-Funktionen mit entsprechenden Methoden: firstch(), lastch(), startswith(), endswith()
Neue Tabellenmethoden: TAB().insertXYZ(), TAB().removeXYZ(), TAB().reorderXYZ() (XYZ steht für rows, cols oder cells) und TAB().shrink()
TAB().convert() bietet nun einen "auto"-Modus und kann nun mehr verschiedene Zahlenformate konvertieren (insbesondere EU- und US-Trennzeichen für Dezimalstellen und Tausender). TAB().fndcols() kann jetzt mit regulären Ausdrücken verwendet werden
Der Spaltentyp "value" der Tabelle wurde erweitert, um weitaus mehr verschiedene grundlegende Datentypen zu ermöglichen, z.B. "value.f32" oder "value.ui8". Einige Dateitypen werden nun mit dem am besten passenden Datentyp geladen
Das Laden und Speichern von regulären Dateitypen mit benutzerdefinierten Dateierweiterungen ist nun möglich
Prozeduren können nun mit relativen Namespaces aufgerufen werden
Bei bedingten Ausdrücken in if und while, die mehrere Werte zurückgeben, werden nun alle Rückgabewerte berücksichtigt (implizit mit and())
leave erweitert die Funktionalität von break, indem es aus allen verschachtelten Kontrollflussanweisungen herausspringt (mit Ausnahme von procedure ... endprocedure)
Man kann QR-Codes mit qrcode erstellen
Mehr Interaktionsmöglichkeiten, um mit benutzerdefinierten Fenstern zu interagieren und diese zu erstellen, Layouts können nun dynamisch über Strings definiert werden und benutzerdefinierte Fenster können nun als Dialoge verwendet werden.
Experimentelle Funktionen
Bedingte Haltepunkte (verfügbar über Rechtsklick im Editor)
Spaltenüberschriften sind jetzt für Spaltenindizes verwendbar, d.h. TABLE(:, "MY-COL-HEADLINE")
Allgemeine Änderungen
Wir bieten jetzt 32-Bit- und 64-Bit-Versionen an. Die 64-Bit-Version ist wahrscheinlich schneller und vielseitiger, so dass ein Umstieg sehr zu empfehlen ist
Wir inkludieren nun eine aktuelle PDF-Dokumentation mit jedem neuen Release (beginnend mit diesem)
Das Laden von Dateien wurde in vielen Szenarien verbessert
Viele Verbesserungen und Korrekturen
Anmerkungen
Dies ist ein Release Candidate. Einige Funktionen können sich noch ändern. Wenn Sie Probleme feststellen, lassen Sie es uns bitte wissen
Wenn Sie Probleme mit dem Herunterladen von SourceForge haben (insbesondere über MS Edge for Business), sollten Sie in Erwägung ziehen, die Software direkt von Github herunterzuladen (siehe Abschnitt "Assets" am Ende der Versionshinweise).
Falls ihr Wünsche für die Zukunft habt, dann teilt sie uns bitte mit! Entweder per eMail, Discord oder direkt ins Ticketsystem eingetragen. Sie finden auf jeden Fall Gehör!
Die vollständigen Änderungen finden sich im ChangesLog.
NumeRe v1.1.5 "Cherenkov"
veröffentlicht: 16.05.2023
Wir veröffentlichen heute die finale Version 1.1.5.2305 (ChangesLog) benannt nach dem Physiker Pavel Alexeevič Čerenkov, der die Cherenkov-Strahlung erklären konnte. In diese Version sind 30 Änderungen eingeflossen, die zumeist Fixes der Version v1.1.5.2303 sind.
Änderungen dieser Version
Es ist nun möglich, eine Enumeration mit der Syntax declare enum -> {VAL1, VAL2, ...} zu definieren.
Das Hilfefenster kann nun wieder über help window o.ä. geöffnet werden. Die benötigte Zeit zum Öffnen mit dieser Methode wurde stark reduziert.
Leere Zellen bleiben nun erhalten, wenn man String-Spalten in logische Spalten umwandelt.
Mehrere Kopfzeilen in Tabellen und Datendateien werden nun besser unterstützt für XLS, XLSX, ODS und CSV
Das Kopieren und Verschieben (mit copy und move) von Tabellen mit gemischten Werten ist nun wieder möglich.
Es ist jetzt möglich, das automatische Speichern von Tabellen zu deaktivieren, indem das Intervall auf Null gesetzt wird
Das Herunterladen von Zip-Dateien funktioniert nun wie erwartet.
Die Berechnung des benötigten Speichers pro Tabelle und Cluster spiegelt nun besser den tatsächlich benötigten Speicher wider.
TAB().num berücksichtigt nun auch Strings als gültige Werte für die num()-Operation und leere Spalten werden nun korrekt als leer berechnet, wenn sie mit TAB().cnt.cols ermittelt werden
Verbesserte Leistung beim Kopieren einer großen Tabelle aus dem Tabellenviewer.
Prozeduren führen nun immer die letzten Änderungen aus, ohne dass einige Sekunden gewartet werden müssen
Literale Anwendungsnamen wurden aus dem Code entfernt und in die Sprachdateien verschoben (erlaubt auch Übersetzungen des Anwendungsnamens).
Viele Verbesserungen und Fixes
Falls ihr Wünsche für die Zukunft habt, dann teilt sie uns bitte mit! Entweder per eMail, Discord oder direkt ins Ticketsystem eingetragen. Sie finden auf jeden Fall Gehör!
Die vollständigen Änderungen finden sich im ChangesLog.
NumeRe v1.1.5rc
veröffentlicht: 15.03.2023
Wir veröffentlichen heute den Release Candidate Version 1.1.5.2303 (ChangesLog). In diese Version sind dieses Mal wieder fast 100 Änderungen eingeflossen, so dass umfassende Änderungen zu erwarten sind.
Änderungen dieser Version
Eine große Zahl an Tabellenmethoden wurde hinzugefügt: TAB().pcorrof(), TAB().scorrof(), TAB().covarof(), TAB().*rankof(), TAB().zscoreof(), TAB().anovaof(), TAB().fndcols(), TAB().indexof(), TAB().countif(), TAB().binsof(), TAB().categoriesof(), TAB().categorize(), TAB().rows, TAB().cols
Eine filter()-Funktion wurde zu matop hinzugefügt, um eine Matrix mit einem beliebigen Kernel zu filtern
Eine große Zahl an Zufalls-Distributionen (Laplace, Cauchy, Rayleigh, Landau, Levy (alpha stable), Fisher-F, Student-T) wurde als Funktionen hinzugefügt
Funktionen zur Arbeit mit Zeitwerten wurden hinzugefügt: as_date(), as_time(), weekday(), weeknum()
Die Funktion sha256() berechnet die SHA-256 von Zeichenketten und Dateien
to_time() und timeformat() verwenden nun automatisches Pattern-Matching, wenn kein Pattern vorgegeben wird
Die bereichsbezogene for-Schleife wurde als for (ITER -> RANGE) hinzugefügt und kann auch mehrere Iteratoren zugleich besitzen
Archivdateien können mit pack gepackt und mit unpack entpackt werden
diff kann nun bis zur dritten Ordnung numerisch differenzieren
hist2d untersützt nun ebenfalls Zeitachsen (experimentell)
vect kann nun auch Vektorplots aus komplexen Funktionen und komplexen Datengittern erzeugen
Mit den neuen Plotoptionen ohlc ("Open-High-Low-Close") und candlestick können Plots für die Darstellung von Preisentwicklungen (Aktien) erzeugt werden
Tabellen können nun Spalten mit logischen Werten und Spalten mit Kategorien besitzen. Zusätzlich hat der Table Viewer weitere Funktionalitäten erhalten, die die Interaktion mit Tabellen zusätzlich vereinfachen
Externe Dateien sind nun auch unter automatischer Versionskontrolle. Außerdem wurde das Wiederherstellen einer vorherigen Version verbessert, so dass nun automatisch die aktuelle Datei überschrieben wird. Zuätzlich wurde eine Menü-Option ergänzt um zwei unterschiedliche Dateien miteinander zu vergleichen
Es ist nun möglich, das "Schweben" der meisten Fenster auf dem Hauptfenster zu deaktivieren
Prozeduren im Dateibaum zeigen nun ihre Signatur und Dokumentation (sofern vorhanden) als Tooltip an
Es ist nun möglich, Text mit den Styling-Informationen aus dem Editor in MS-Word oder MS-PowerPoint mit einer entsprechenden Menü-Option zu kopieren
Es ist nun möglich, Code mit Kommentaren ins Terminal zu ziehen. Der Code wird normal ausgeführt
Beim Erzeugen einer neuen Datei erscheint nun ein hilfreicher Dialog mit mehr Informationen über die jeweiligen Dateitypen
Die Unterstützung von Excel-Dateien und JCAMP-DX-Dateien wurde verbessert
Das Kommando help und der Dokumentations-Browser wurden verbessert und zeigen ebenfalls nun Funktions- und Prozedurdokumentationen
Die Icons der Toolbars wurden aktualisiert und modernisiert. Es stehen drei wählbare Stile in den Optionen zur Verfügung (Purist, Focused (Standard) und Colourful). Außerdem ist es möglich, die Toolbar über die gesamte Fensterbreite auszudehnen
Viele Verbesserungen und Fixes
Falls ihr Wünsche für die Zukunft habt, dann teilt sie uns bitte mit! Entweder per eMail, Discord oder direkt ins Ticketsystem eingetragen. Sie finden auf jeden Fall Gehör!
Die wesentlichen Änderungen finden sich im ChangesLog.
NumeRe v1.1.4 "Compton"
veröffentlicht: 20.09.2022
Wir veröffentlichen heute die finale Version 1.1.4.2209 (ChangesLog) benannt nach Arthur H. Compton. In diese Version sind dieses Mal wieder fast 70 Änderungen eingeflossen, so dass umfassende Änderungen zu erwarten sind.
Änderungen dieser Version
Die Registerkarten im Editor und in vielen weiteren GUI-Elementen können nun umgeordnet und auch zum Splitten des Fensters verwendet werden. Eine transparente Vorschau wird angezeigt, wenn die aktuelle Registerkarte angedockt werden kann
Die Autovervollständigung wurde mit SmartSense erweitert, so dass deutlich bessere Vorhersagen möglich sind
Der statische Code-Analyzer warnt bei missverständlichen Typenpräfixen und eine neue Option im Kontextmenü bietet die automatische Detektion passender Typenpräfixe
Elemente der Oberfläche werden nicht mehr automatisch durch die Maus fokussiert
Die Hervorhebung lokaler Variablen erfolgt nun in der gesamten Prozedur
Codeblöcke in Dokumentationsartikel verwenden nun Syntaxhervorhebung
Symbole deklariert mit declare können nun in andere Dateien inkludiert werden
logtoidx() und idxtolog() können nun auch außerhalb des matop-Modus verwendet werden
read kann Kommentarblöcke filtern
include ersetzt die alte @-Syntax. NumeRe wird die alte Syntax mit einer Warnung markieren
vect und vect3d benötigen nun zwingend geschweifte Klammern um ihre Vektorfelder
TABLE().lines wurde in TABLE().rows und nlines in nrows umbenannt (die alten Bezeichnungen sind aber als Aliase noch verfügbar)
combobox ist ein neues GUI-Element
Mit coords=parametric können Abszisse und Ordinate getrennt angegeben werden (und ähnlich für die dritte Dimension). Dies erlaubt Plots wie von MATLAB(R) gewohnt mit zwei Datensätzen durchzuführen
Die sekundären Achsen bei Plots haben nun einen kleinen Abstand zur Box
getversioninfo() gibt Informationen zur NumeRe-Version zurück
getfileinfo() gibt Informationen zur angegebenen Datei zurück
hcat() und vcat() verbinden zwei Matrizen horizontal bzw. vertikal
cutoff() schränkt die übergebene Matrix auf ein bestimmtes Intervall ein
to_tex() wandelt einen numerischen Wert in einen TeX-formatierten String um
textparse() wurde erweitert und versteht deutlich mehr Datentypen
is_dirpath() und is_filepath() können verwendet werden, um zu prüfen ob ein String einen validen Pfad enthält
taylor gibt die Koeffizienten des bestimmten Polynoms zurück
Der Debugger kann nun in die Köpfe der Kontrollflussstatements springen
Die Option enablefuture wurde entfernt und durch alwaysreferencetables (auch im Optionendialog verfügbar) ersetzt
Viele Verbesserungen und Fixes
Falls ihr Wünsche für die Zukunft habt, dann teilt sie uns bitte mit! Entweder per eMail, Discord oder direkt ins Ticketsystem eingetragen. Sie finden auf jeden Fall Gehör!
Die wesentlichen Änderungen finden sich im ChangesLog.
NumeRe v1.1.4rc
veröffentlicht: 15.03.2022
Wir veröffentlichen heute den neuen Release Candidate (ChangesLog) zur Version 1.1.4. In diese Version sind dieses Mal über 80 Änderungen eingeflossen, so dass umfassende Änderungen zu erwarten sind.
Änderungen dieser Version
Fehlerbehandlung ist nun mit try ... catch ... endtry möglich
Tabellen können nun Spaltenweise unterschiedliche Datentypen haben, zwischen denen auch Konvertiert werden kann. Vorhanden sind derzeit numerische Werte, Zeichenketten und Zeit-Datums-Werte
NumeRe kann nun mit komplexen Zahlen umgehen. Dazu kommen einige Funktionen speziell für komplexe Zahlen sowie spezielle Plotting-Optionen
Tabellen können nun mit einer zusätzlichen Dokumentation beschrieben werden, die eine Zuordnung von Messdaten zu ihrer Datenquelle erleichtert. Diese Dokumentation wird auch in den Tooltips im Dateibaum angezeigt
Tabellen können nun einfacher mittels COPY() = TAB() kopiert werden
Das Kommando fft2d stellt eine 2D-FFT bereit
Das Kommando clc löscht den Inhalt der Konsole
Neue Funktionen für den Matrixmodus: polylength(), assemble(), movavg(), movsum(), ...
Kommandos zur Deklaration von lokalen Variablen (str, var, ...) können nun mehrmals pro Prozedur verwendet werden
Zeitwerte haben nun ine Mikrosekunden-Präzision und können einen größeren Datumsbereich abdecken
diff und taylor verwenden nun Savitzky-Golay als Differentiationsmethode
resample kann nun verschiedene Samples für Zeilen und Spalten sowie weitere Methoden anwenden
Der Variablenviewer bietet mehr Features wie kopieren von Werten oder die Anzeige des benötigten Speichers
Tooltips wurden verbessert und zeigen nun die Standardwerte der optionalen Funktionsargumente an. Außerdem wurden Tooltips zur Konsole hinzugefügt. Außerdem bietet die Konsole eine verbesserte Vervollständigung beim Navigieren durch die letzten Kommandos
Die aktuelle Datei im Editor kann nun in eine zweite Ansicht geklont werden, um an zwei verschiedenen Stellen der Datei gleichzeitig zu arbeiten
Der Debugger ist nun etwas deutlicher, wenn er Aufmerksamkeit erfordert. Sofern gewünscht, kann auch aktiviert werden, dass das NumeRe-Icon in der Taskbar blinkt
Dateien können nun vor der Ausführung automatisch gespeichert werden
Die Klammervervollständigung kann nun konfiguriert oder ganz deaktiviert werden
Mit test geflagte Prozeduren erzeugen nun ein lokales Cluster TESTINFO{}, dass die Statistiken zu den ausgeführten Tests enthält
Der statische Code-Analyzer kann nun weitere Fälle behandeln
Der Matrix-Modus und die Statistik-Methoden von Tabellen verwenden nun OpenMP, wo dies sinnvoll und möglich ist
Hinweis: ab Version 1.1.5 werden Tabellen, die nicht als Referenz markiert an eine Prozedur übergeben werden, tatsächlich kopiert. NumeRe wird deswegen eine Warnung ausgeben. Nach dem Review aller Warnungen, kann das Verhalten von 1.1.5 in 1.1.4rc bereits jetzt mit set enablefuture=true aktiviert werden
Viele Verbesserungen und Fixes
Falls ihr Wünsche für die Zukunft habt, dann teilt sie uns bitte mit! Entweder per eMail, Discord oder direkt ins Ticketsystem eingetragen. Sie finden auf jeden Fall Gehör!
Die wesentlichen Änderungen finden sich im ChangesLog.
NumeRe v1.1.3 "Marie Curie"
veröffentlicht: 26.07.2021
Wir veröffentlichen heute die vierte Version der C-Reihe und benennen sie nach der Physikerin Marie Sklodowska Curie: NumeRe v1.1.3 "Marie Curie".
Nachdem Pierre Curie der Namensgeber für Version 1.1.2 war, übernimmt Marie diese Rolle für diese neue Version, die in der Tradition von Win10 tatsächlich auch "Creators Update" heißen könnte. Wir haben den Fokus dieser Version auf das Erstellen und Deployen von Packages und Plugins gelegt und mit dem neuen Package Repository Browser auch die Möglichkeit geschaffen, diese einfach und komfortabel zu installieren und aktuell zu halten.
Änderungen dieser Version
Neue Funktionen für den matop-Modus, die Koordinatentransformationen, Interpolationen und einen Zugriff auf eine Matrix über Vektoren (select(MAT,MAT,MAT)) bereitstellen
Zeichenkettenfunktionen zum Finden aller Treffer (strfndall()) und das erste Auftreten aller Zeichen (strmatchall()). Außerdem über strunique() auch eine Variante von unique() für Zeichenketten
Die Tabellenmethode TAB().aliasof() kann verwendet werden, um auf den Inhalt einer anderen Tabelle zuzugreifen, die per Name (z.B. via TAB().name) übergeben wurde
Der Package Repository Browser erlaubt den Zugriff auf das Remote Package Repository von dem aus Packages und Plugins installiert und aktualisiert werden können
Der Package-Creator kann die Einstellungen nun als "NumeRe-Package-Projekt" (*.npkp) speichern. Ebenso können Dokumentationen nun als "NumeRe-Hilfedatei" (*.nhlp) gespeichert und in die Projekte eingebunden werden. Zusätzlich bettet er nun auch die kompletten Dateien (mit Kommentaren, etc) in Packages ein
Mit GUI-Plugins können graphische Oberflächen (Layouts) direkt in der NumeRe-Oberfläche in das Package-Menü eingebunden und von dort gestartet werden
Der Zugriff auf Audio-Dateien wurde verbessert: mit audioread können ganze WAV-Files gelesen werden, während seek verwendet werden kann, um nur einen Ausschnitt zu extrahieren
Zugriffe über http(s) und (s)ftp sind nun mit dem Kommando url möglich. Dabei ist auch ein upstream an einen FTP-Server möglich
Das Kommando fft wurde verbessert und gibt nun das beidseitige Spektrum (positive und negative Frequenzen) zurück. Die unintuitive Position der Frequenzen auf der Achse kann mit axisshift angepasst werden
Mit dem Kommando declare SYM := VAL können Datei-weite Literalkonstanten definiert werden (ähnlich zu #define in C/C++), die den Code lesbarer und wartbarer machen und dabei nicht unzählige Variablen im Speicher erfordern
NumeRe ist nun auch über winget verfügbar und wird über winget upgrade NumeRe.NumeRe aktualisierbar sein
Viele Verbesserungen und Fixes, sowie natürlich alle Änderungen der vorherigen Release Candidates
Für die nächste Version sind folgende Änderungen geplant: Meilenstein v1.1.4
Falls ihr Wünsche für die Zukunft habt, dann teilt sie uns bitte mit! Entweder per eMail, Discord oder direkt ins Ticketsystem eingetragen. Sie finden auf jeden Fall Gehör!
Die wesentlichen Änderungen finden sich im ChangesLog.
NumeRe v1.1.3rc
veröffentlicht: 31.03.2021
Der Release Candidate (ChangesLog) der neuen Version 1.1.3 wurde eben veröffentlicht.
Ein Überblick findet sich im Folgenden, die Details im verlinkten ChangesLog.
Animationen von Datensätzen und Tabellen sind nun möglich
Mit dem Kommando detect können Strukturen in 2D-Daten gefunden werden
Das Kommando pso stellt einen Partikel-Schwarm-Optimierer für Funktionen mit bis zu vier Dimensionen bereit
Es gibt Kommandos, um Bilder (imrot), Datensätze (tabrot) und Datengitter zu rotieren (gridrot)
GUI-System: NumeRe stellt nun die Möglichkeit zur Erzeugung eigener graphischer Oberflächen und zur Interaktion mit selbigen bereit. Fensterlayouts werden in NumeRe-Layout-Dateien (*.nlyt) abgelegt, die auch in Packages eingebettet werden können
Funktionen zu Basiskonvertierung: dectobase() und basetodec()
Perlin-Noise: perlin()
Reguläre Ausdrücke: regex()
Prä- und Suffixen entfernen: strip()
Packages können nun mit Lizenzen versehen werden
Die Vektor-Expansion wurde verbessert und erlaubt nun diese Konstrukte: {a,b,c:d,e,...}
Prozedur-Test-System: Das Kommando assert kann zum Testen einer Annahme verwendet werden und wirft einen Fehler, wenn die Annahme nicht erfüllt wird. Der Prozedur-Flag test wandelt dagegen alle nicht-kritischen Fehler in Warnings um, so dass die Prozedur nicht sofort abbricht
Prozedur-Argumente sind nun reale Variablen (Kopien der übergebenen Werte). Referenzen auf die übergebene Variablen sind möglich, indem das Argument mit einem kaufmännischen Und (&) als Referenz deklariert wird: $PROC(copiedVal, referencedVar&)
Die ESC-Taste bricht die Auswertung nur noch ab, wenn die Konsole gleichzeitig den Fokus hat
Viele Fixes und Verbesserungen
NumeRe v1.1.2 "Pierre Curie"
veröffentlicht: 15.11.2020
Wir veröffentlichen heute die dritte Version der C-Reihe und benennen sie nach dem Physiker Pierre Curie: NumeRe v1.1.2 "Pierre Curie".
Ja, wir benennen auch diese Version nach einem männlichen Physiker und nicht nach seiner Frau. Hintergrund ist unser Namenschema: Namensgeber müssen bereits verstorbene Physiker (weibl. oder männl.) sein, die nach ihrem Geburtsjahr sortiert werden. Pierre Curie wurde bereits 1859 geboren, seine Frau erst 1867, daher wird Marie Sklodowska Curie der Namensgeber für die Version 1.1.3 sein.
Änderungen dieser Version
Die Standardtabelle heißt nun table() und nicht mehr cache(), außerdem ist data() nun eine reguläre Tabelle ohne Schreibschutz. Sie ist trotzdem die Default-Tabelle für geladene Daten.
Die Option tocache heißt nun totable und wurde ebenfalls ins Kontextmenü des Dateibaums integriert
Neue Funktionen: minpos(), maxpos(), repmat()
Neue Tabellenmethoden: TABLE().name, TABLE().size, TABLE().minpos, TABLE().maxpos
Eine "Was möchtest du tun?"-Suchfunktion in der Toolbar
Dokumentations-Keywords und Dokumentations-Kommentare werden nun im Editor getrennt hervorgehoben. Die Konvertierung in eine LaTeX-Dokumentation wurde überarbeitet und kann nun einen vollständigen Abhängigkeitsbaum in eine gemeinsame Dokumentation exportieren
Der Editor hat nun eine "transpose data"-Funktionalität, die leerzeichen-/tabulator-/kommagetrennte Daten in einer Textdatei transponieren kann
Der Static-Code-Analyzer wurde vielfach verbessert und wartet mit dem Refresh nun, bis der Benutzer eine Tipp-Pause gemacht hat
Weitere Filter zum Glätten von Daten wurden hinzugefügt
Kommandos wurden überarbeitet: set, get, random, hist, stats, reload, clear
Kommandos zum Datei laden geben nun die Indices des geladenen Datenblocks zurück
NumeRe ist nun single-instance: Dateien, die per Doppelklick geöffnet werden, werden nun in der bereits laufenden Instanz geöffnet
Viele Verbesserungen und Fixes, sowie natürlich alle Änderungen der vorherigen Release Candidates
Für die nächste Version sind folgende Änderungen geplant: Meilenstein v1.1.3
Falls ihr Wünsche für die Zukunft habt, dann teilt sie uns bitte mit! Entweder per eMail, Discord oder direkt ins Ticketsystem eingetragen. Sie finden auf jeden Fall Gehör!
Die wesentlichen Änderungen finden sich im ChangesLog.
NumeRe v1.1.2rc3 HF 1
aktualisiert: 03.06.2020
Der Release Candidate 3 HF1 der neuen Version 1.1.2 wurde eben veröffentlicht.
Release Candidate 1
Ein Überblick findet sich im Folgenden, die Details wie immer im angehängten ChangesLog.
switch als neue Kontrollflussumgebung
Clusters wurden als neue Datentypen integriert. Diese können numerische Werte und Zeichenketten gemischt enthalten
Viele neue Zeichenkettenfunktionen, die den Typ der enthaltenen Zeichen erkennen können
Verbesserungen des Editors: Speichern von Lesezeichen, Mehrfachselektions-Einfügen, Autovervollständigung von LaTeX-Kommandos, Warnungen vor globalen Variablen
Die Konsole kann nun POS1, ENDE und STRG-LINKS, STRG-RECHTS umsetzen
Animationen enthalten nun einen zusätzlichen Rendering-Schritt, in dem die Animation gecacht wird und dann flüssiger und mit geringerem Rechenbedarf abläuft
Der Debugger wurde massiv verbessert und bietet nun viele Standardfunktionen wie Block überspringen, nächste Anweisung ausführen, aus der aktuellen Prozedur springen, etc.
Der inline flag der Prozeduren wurde verbessert und ermöglicht nun tatsächliches inlining, was Laufzeitverbesserungen von einem Faktor 20 bedeuten kann
NumeRe bietet nun eine integrierte Versionskontrolle von Dateien in den Standardpfaden an, wenn diese mit dem Editor bearbeitet werden
Mit dem dialog Kommando können nun graphische Dialoge zur Interaktion mit dem Nutzer erzeugt werden
Die Refactoring-Funktionen wurden verbessert und können nun im Suchbereich eingeschränkt werden. Außerdem wird jede Umbenennung eines Symbols protokolliert
NumeRe kann einen Abhängigkeitsbaum für eine Prozedur berechnen (Werkzeuge-Menü)
NumeRe bietet nun einen Package-Creator, der aus einem gewählten Satz an Prozeduren automatisch ein Install-Script generieren kann (Werkzeuge-Menü)
Das Dokumentationsfenster wurde überarbeitet und enthält nun einen Verzeichnis auf der linken Seite und eine Toolbar mit den History-Funktionen und der Möglichkeit, einen Artikel auszudrucken
Viele Fixes und Verbesserungen
Release Candidate 2
Der Release Candidate 2 der Version 1.1.2 bringt die folgenden Verbesserungen:
Zeichenkettenausdrücke können nun als Indexausdrücke für Datenobjekte verwendet werden
Die Namen der lokalen Variablen können bei der Deklaration hervorgehoben werden. Das hat besonders bei langen Variablendeklarationen Vorteile
Das Versionskontrollsystem wurde verbessert und enthält nun einen Diff-Viewer zum Vergleichen der Unterschiede zweier Versionen
Der Package-Creator kann nun auch geöffnet werden, wenn keine Prozedur ausgewählt wurde
Die Variable "ans" ist nun ein Cluster und kann daher beliebige und gemischte Werte speichern
Die Funktion "polynomial(x,a0,a1,a2,...)" wurde hinzugefügt und ersetzt die bisherigen Definitionen von "taylor" und "spline"
Viele weitere, kleinere Verbesserungen und Fixes
Release Candidate 3
Der Release Candidate 3 der Version 1.1.2 bringt diese Veränderungen:
Plots können nun Zeitwerte (UNIX-Time) als Achsen verwenden
MathGL 2.4.4 wurde integriert und verbessert Plotting-Qualität und -Geschwindigkeit
DoxyGen-ähnliche Dokumentationsblöcke können von NumeRe zu Prozeduren erzeugt werden
"implot" generiert einen Bildplot aus Bilddaten
"cmp()" kann nun auch den ersten Wert finden, der kleiner/größer/gleich zum Vergleichswert ist
"shuffle(sel,val)" ist eine neue Matrixfunktion, die einen Vektor mit gemischten Werten zurückgibt
"getkeyval()" ist eine Zeichenkettenfunktion, die eine Schlüssel-Wert-Liste dekodierten kann: "{KEY1,VAL1,KEY2,VAL2,...}"
OpenMP-Support wurde aktiviert und wird bei der Auswertung von Zeichenketten verwendet
NumeRe wurde mit einem neuen Compiler kompiliert und ist nun ungefähr doppelt so schnell (in Ausnahmen wurden 3x höhere Geschwindigkeiten gemessen)
Viele weitere, kleinere Verbesserungen und Fixes
Der Hotfix 1 zum Release Candidate 3 behebt einige kleine Fehler, die neu im RC3 eingeführt wurden. Die Unterstützung der neuen Plotting-Bibliothek ist noch immer experimentell.
NumeRe v1.1.1 "Carnot"
veröffentlicht: 28.01.2019
Wir veröffentlichen heute die zweite Version der C-Reihe und benennen sie nach dem Physiker und Ingenieur Nicolas Léonard Sadi Carnot: NumeRe v1.1.1 "Carnot".
Wir hatten ursprünglich geplant, die Änderungen zwischen den Versionen kleiner zu machen, allerdings hat einer der Stakeholder längeren Support für einen Release Candidate (rc2, um genau zu sein) verlangt. Wir hoffen, dass dies in Zukunft nicht mehr erforderlich sein wird, so dass zukünftige Versionen nun tatsächlich in kleineren Schritten durchgeführt werden.
Für die nächste Version sind folgende Änderungen geplant: Meilenstein v1.1.2
Falls ihr Wünsche für die Zukunft habt, dann teilt sie uns bitte mit! Entweder per eMail, per Facebook oder direkt ins Ticketsystem eingetragen. Sie finden auf jeden Fall Gehör!
Die wesentlichen Änderungen finden sich im ChangesLog, das unten anhängt, sowie im Artikel zum Release Candidate. Die Änderungen zwischen rc3 und dieser Version sind nur Fixes zu Fehlern.