Unitful.jl
pcmos386v501
Unitful.jl | pcmos386v501 | |
---|---|---|
9 | 3 | |
575 | 397 | |
0.5% | - | |
7.0 | 0.0 | |
9 days ago | over 1 year ago | |
Julia | Assembly | |
GNU General Public License v3.0 or later | GNU General Public License v3.0 only |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Unitful.jl
- What Is Dimensional Analysis?
- All I can say is that I relate, very much
-
Are there any languages that allow units?
Julia's Unitful package is one of my favorites. https://github.com/PainterQubits/Unitful.jl
Tangentially related, LaTeX's siunitx package makes typesetting units a joy. https://ctan.org/pkg/siunitx
-
Question solved unsuccessfully
Laughs in https://github.com/PainterQubits/Unitful.jl
-
Similitude.jl is new more powerful Quantity than Unitful.jl
Not sure why you think more units is more powerful. Defining specific units is seldom the difficult part of dealing with units in code. I'd say that just looking at the tests for Unitful (excluding the separate tests for dates) to the tests of Similitude that there seems to be a lot more functionality in Unitful. What are the advantages of these alternate packages? And I do not think focusing on "more powerful" is too useful unless qualified appropriately.
-
ModelingToolkit, Modelica, and Modia: The Composable Modeling Future in Julia
It's really two separate problems but they kinda interact.
Unitful quantities with heterogeneous units don't have a `zero` function that works correctly, which gets in the way inside numerical routines. [0] There are other places where 0 or 1 is added, which is an error for quantities but not for plain real numbers. [1]
Zygote doesn't handle mutating arrays. [2]
[0]: https://github.com/PainterQubits/Unitful.jl/pull/472
-
Atlas, a (hopefully) better engineering IDE
Julia has the Unitful package [1], which does a decent job. It's quite ergonomic, and Julia's design helps with making existing code/libraries play nicely with Unitful-encoded units/values.
[1] https://github.com/PainterQubits/Unitful.jl
- Lotus 1-2-3 arbitrary resolution
-
GNU Units
I've seen a few before, and a quick search yielded a bunch for me, right off the bat. By no means exhaustive:
Julia: https://github.com/PainterQubits/Unitful.jl
Python: https://pint.readthedocs.io/en/0.6/
C++: https://github.com/nholthaus/units
etc.
And yes, it has always struck me as strange that date/time/calendar libraries are standard as canonical libraries shipped with language distributions, but units are not.
pcmos386v501
-
Thirty Years Ago: MS-DOS 6.00
Today, we have FreeDOS and SvarDOS, as well as PCMOS386.
0. https://freedos.org/
1. http://svardos.org/
2. https://github.com/roelandjansen/pcmos386v501
3.
- Pcmos386v501
-
Lotus 1-2-3 arbitrary resolution
PC-MOS/386 is FOSS now, but nobody seems to be interested.
https://github.com/roelandjansen/pcmos386v501
TBH it was a 2nd string product in its prime, IME. DR's Concurrent DOS/386 was the premium offering. I supported it in the late 1980s.
This was around the time that a LAN of cheap PC-XT clones was becoming price-competitive with a big high-power 80386DX machine with lots of RAM and a bunch of dumb terminals on a multiport serial card.
The terminal vendors and multiuser OS vendors fought back with colour terminals and then graphical terminals. CDOS386 supported these. The basic PC design supported 4 RS-232 ports, so you could have an 8MB 386DX with one user on the system console and four users on dumb terminals, all of them able to run even quite demanding DOS apps including fancy stuff like graphical print-preview or a spreadsheet that could draw graphs.
The snag was that CDOS386 was not a DOS; it was a descendant of Concurrent CP/M. It ran DOS apps but could not use DOS drivers – it needed its own. So adding hardware was not a trivial exercise. Kit had to be chosen from short hardware compatibility list (and was therefore expensive) and drivers supplied as object files relinked with the kernel. It was not as simple as modifying CONFIG.SYS and rebooting – PC/MS-DOS sysadmin skills did not transfer over.
And it couldn't usefully run Windows. So as soon as Windows 3 came out in 1990 and the market started to move to Windows and Windows apps, that was largely it for Concurrent DOS, PC-MOS etc.
When DR was bought out by Novell, several forks of the codebase were continued for a while by OEM licencees, and it gained support for FAT32, USB and so on.
A branch of the CDOS codebase is still just about alive though. DR did a 286 version, but were screwed over by Intel. It used a feature of prototype 80286 chips to multitask DOS apps, but this was removed in the final shipping CPU hardware. (Intel did not know and put it back but it was too late.)
DR just took the OS in a different direction and sold it as a multitasking real-time OS instead, downplaying DOS compatibility. It bundled a multitasking version of its GEM desktop, too, so it was a multitasking GUI RTOS, called DR-FlexOS.
This found a niche in electronic point-of-sale systems: EPOS, i.e. smart cash registers built around x86 PCs. It was later acquired by IBM who rebranded it as IBM 4680 OS, later IBM 4690 OS. (What a knack for snappy names Big Blue has!)
IBM discontinued it just a few years ago, but it is still sold by Toshiba.
What are some alternatives?
gnu-units - GNU Units (mirror)
Zygote-Mutating-Arrays-WorkAround.jl - A tutorial on how to work around ‘Mutating arrays is not supported’ error while performing automatic differentiation (AD) using the Julia package Zygote.
NonlinearSolve.jl - High-performance and differentiation-enabled nonlinear solvers (Newton methods), bracketed rootfinding (bisection, Falsi), with sparsity and Newton-Krylov support.
UnitSystems.jl - Physical unit systems (Metric, English, Natural, etc...)
Ruby Units - A unit handling library for ruby
uom-se - JSR 363 - Implementation for Java SE 8
unix-v6 - UNIX 6th Edition Kernel Source Code
Squants - The Scala API for Quantities, Units of Measure and Dimensional Analysis
Similitude.jl - Dimensions and Quantities for UnitSystems.jl
Zygote-Mutating-Arrays-WorkArou
Unchained - A fully type safe, compile time only units library.
uom - Units of measurement -- type-safe zero-cost dimensional analysis