About varocarbas.com

--

About me

--

Contact me

--

Visit customsolvers.com, another side of my work

--

Valid markup

--

Valid CSS

--

© 2015-2017 Alvaro Carballo Garcia

--

URL friendly

--

Optimised for 1920x1080 - Proudly mobile unfriendly

R&D projects RSS feed

All projects in full-screen mode

PDFs:

Project 10

Project 9

Project 8

FlexibleParser code analysis:

UnitParser

NumberParser

Tools:

Chromatic encryption

(v. 1.3)

Pages in customsolvers.com:

Upcoming additions

Failed projects

Active crawling bots:

Ranking type 2

(
)

FlexibleParser raw data:

Unit conversion (UnitParser)

Compound types (UnitParser)

Timezones (DateParser)

Currently active or soon to be updated:

Domain ranking

FlexibleParser (DateParser)

NO NEW PROJECTS:
Project 10 is expected to be the last formal project of varocarbas.com. I will continue using this site as my main self-promotional R&D-focused online resource, but by relying on other more adequate formats like domain ranking.
Note that the last versions of all the successfully completed projects (5 to 10) will always be available.
Completed (24 days)
Completed (57 days)
Completed (26 days)
Completed (47 days)
Completed (19 days)
Completed (14 days)

Introduction >

NumberParser Code (.NET/C#) >

Adapted native mathematical functionalities

DateParser Code (.NET/C#) >

FlexibleParser
NumberParser code (.NET/C#) >
Adapted native mathematical functionalities
Additionally to the custom methods described in the previous section, Math2 also includes NumberD-adapted versions of all the .NET native System.Math functions. Most of the code of all these implementations is stored in the files and subfolders of the Math2 folder whose names include "Existing".

The NumberX calculation rules aren't fully applicable to these situations, where the format of the given native method has to be met. For example, NumberD numberD = Math2.Abs(new NumberD(12345, 6789)); triggers an error because the input number (i.e., 12345*10^6789) is outside the maximum range supported by System.Math.Abs (i.e., the double type range).

On the other hand, the NumberD versions can deal with most of the scenarios involving numeric types not supported by the native methods. For example, NumberD numberD = Math2.Cos(123.456m); (with 123.456m being implicitly converted to new NumberD(123.456m)) works fine despite the impossibility of double val = Math.Cos(123.456m);. In these situations, NumberParser performs a conversion to the most adequate natively-supported type (double in this example).