#uallang — Public Fediverse posts
Live and recent posts from across the Fediverse tagged #uallang, aggregated by home.social.
-
I added Rust to the list of tracked runtimes in this tracker tool for the ual backends, showing perfect semantic parity between the different systems. Not trivial at all, especially for the intensive concurrency tests, they behave identically in vastly different runtime environments.
This can be understood as validation of the ual concurrency model without mapping 1-to-1 to any one of the backends, with its own expressiveness, consistency, and semantic soundness.
#rustlang #golang #ual #uallang #foss #compsci #programming #wasm #wasi #rust
-
@dngrs Last update, I tracked down the bug, I can confirm the bug is not ual itself, but the runtime binary generated by TinyGo, and the TinyGo team have been sitting on a bug report by jakebailey for about four years, possibly unable to reproduce it because it's a strange edge case.
What did I do: I added feature flags to ual, so it doesn't generate the shape of code that trips the WASM emitter causing the browser to panic. If they ever apply the jakebailey patch, the workaround can be lifted and the feature flag removed in a future ual version.
Thanks for reporting! With your help, I can now safely say that the existing ual code runs correctly on the browser, not only with WASI and wasmtime.
Whenever you are ready to use it for something cool, I standby ready to adjust and produce a new release that you can use.
#ual #uallang #compsci #programming #wasm #wasi #forth #rustlang #golang #foss
-
Hello world, from zenox, the new ual backend which can now emit mach-O binaries for XNU/darwin on ARM64 in addition to ELF for linux amd64, and ELF for linux ARM64.
Lots of work to do before we can have a usable standard library and a runtime scheduler.
But so far so good, this is ual, zenox, and the kernel alone.
#ual #uallang #compsci #zenox #programming #rustlang #golang #foss
-
@dngrs It works for the most part, five tests don't pass. All the most complex code does pass, what breaks isn't ual, it's the error handling of the wasm code generated by TinyGo.
I may have to patch the TinyGo wasm emitter and report it upstream. -
This is the status of the new zenox backend for #uallang, work in progress. Zenox front-end producing ELF binaries for trivial programs on Linux only, a little milestone that proves the architecture is sound, but still a long way from being able to compile real ual programmes without the Go/Rust crutches.
Should be able to produce simple running code and maybe simple little toy tools before this year ends. The first glimpses of something useful in 2027.
#ual #uallang #programming #compsci #asm #assembler #rustlang #golang #foss #forth #rust #assembly
-
UPDATE: ual 1.5 proposal
Defer Stack Mechanism
https://github.com/ha1tch/ual/blob/main/spec/ual-1.5-PROPOSAL-defer.md
This document proposes a Go-inspired defer mechanism for ual implemented through a dedicated @defer stack and offering a convenient defer_op syntactic sugar. This feature aims to simplify resource management and enhance error handling robustness.
#ual #uallang #foss #programming #compsci #embedded #retrodev #retrocomputing
-
From Forth to ual
https://github.com/ha1tch/ual/blob/main/doc/philo/ual-philosophy-04-forth.md
This is a new addition from the perspective of the philosophy of programming languages.
Some of you may be interested in this particular addition, feel free to ignore the rest in the series if you are exclusively focused on the Forth-like aspects of ual,
#ual #uallang #foss #programming #compsci #embedded #forth #lua #retrodev #retrocomputing #rustlang
-
UPDATE: The philosophy of ual.
If you're more the kind of person who would like to understand better from a humanistic point of view what values are encoded in the language, this is for you. It's not a big proclamation, and it's nothing like Larry Wall's exegesis, but I needed to try to understand myself at least in this way that works for me. Hope it works for some of you too.
https://github.com/ha1tch/ual/tree/main/doc/philo#ual #uallang #foss #programming #compsci #embedded #forth #lua #retrodev #retrocomputing #rustlang #philosophy
-
UPDATED: Three new primers added to documentation explaining ual for different programming backgrounds.
Who-Who... Are You?
Mainstream Programmer
Embedded Systems Programmer
Retro / Minimalist Programmer
The README now links to the primers as well from the quicklinks section.
#ual #programming #uallang #ual #forth #rustlang #rust #embedded #retrodev #retrocomputing #compsci
-
UPDATED: The README now better reflects what ual is all about.
https://github.com/ha1tch/ualUPDATE to the update: added links to the relevant specs and documentation.
-
A Unified Stack-Based Approach to Program Safety: The ual Language Design
https://github.com/ha1tch/ual/blob/main/spec/ual-1.4-DESIGN-unified-stack-approach.md#ual #uallang #foss #programming #compsci #embedded #forth #lua #programming #retrodev #retrocomputing
-
UPDATE: Several key additions to the ual spec in these new proposals.
Error Stack Mechanism
Typed Stacks
- P1: https://github.com/ha1tch/ual/blob/main/spec/ual-1.4-PROPOSAL-typed-stacks-01.md
- P2: https://github.com/ha1tch/ual/blob/main/spec/ual-1.4-PROPOSAL-typed-stacks-02.md
Ownership Mechanism
#ual #uallang #foss #programming #compsci #embedded #forth #lua #programming #retrodev #retrocomputing #rust
-
UPDATE: ual docs now differentiate between specs and proposals.
https://github.com/ha1tch/ual/tree/main/spec
The documents marked as proposals are not definitive, are subject to evolution and discussion, and features presented in them may or may not be introduced as presented in forthcoming versions of the specification.
What's new:
ual Design: Strengths and Limitations
https://github.com/ha1tch/ual/blob/main/spec/ual-1.3-DESIGN.md
Proposal: macros
https://github.com/ha1tch/ual/blob/main/spec/ual-1.4-PROPOSAL-macros.md
Proposal: conditional compilation
P1: https://github.com/ha1tch/ual/blob/main/spec/ual-1.4-PROPOSAL-conditional-compilation-01.md
P2: https://github.com/ha1tch/ual/blob/main/spec/ual-1.4-PROPOSAL-conditional-compilation-02.md
#ual #uallang #foss #programming #compsci #embedded #forth #lua #programming #retrodev #retrocomputing
-
ual is a new programming language for small systems, it borrows from Lua, Forth, and Go/TinyGo.
https://github.com/ha1tch/ualIt's not a scripting language, it compiles to TinyGo, and Go, therefore binaries are produced for the same targets of those compilers. In the case of TinyGo using an optimised LLVM-based backend (esp32, risc-v, wasm, various mcus), and for mainstream server/desktop computing architectures via the Go compiler's own backend (x86-64, arm64, etc.) and OSes (Linux, Mac, Windows).
The general idea is that this design allows developers for fast iteration cycles on a workstation, with sound and safely tested algorithms before moving to a second stage workflow on the real embedded platform.((Work in progrees))
Not ready to use yet, but I thought I'd RFC before I complete the first implementation, whilst there's still time to influence design.Hope you find it interesting!
Spec:
https://github.com/ha1tch/ual/tree/main/specExamples:
https://github.com/ha1tch/ual/tree/main/examplesLet me know what you think!
#ual #retrocomputing #embedded #programming #z80 #riscv #esp32 #uallang #compsci #retrodev #forth #lua #golang
-
ual is a new programming language for small systems, it borrows from Lua, Forth, and Go/TinyGo.
https://github.com/ha1tch/ualIt's not a scripting language, it compiles to TinyGo, and Go, therefore binaries are produced for the same targets of those compilers. In the case of TinyGo using an optimised LLVM-based backend (esp32, risc-v, wasm, various mcus), and for mainstream server/desktop computing architectures via the Go compiler's own backend (x86-64, arm64, etc.) and OSes (Linux, Mac, Windows).
((Work in progrees))
Not ready to use yet, but I thought I'd RFC before I complete the first implementation, whilst there's still time.Hope you find it interesting!
Spec:
https://github.com/ha1tch/ual/tree/main/specExamples:
https://github.com/ha1tch/ual/tree/main/examplesLet me know what you think!
#ual #retrocomputing #embedded #programming #z80 #riscv #esp32 #uallang #compsci #retrodev #forth #lua #golang