![Maven Central Adds Sigstore Signature Validation](https://cdn.sanity.io/images/cgdhsj6q/production/7da3bc8a946cfb5df15d7fcf49767faedc72b483-1024x1024.webp?w=400&fit=max&auto=format)
Security News
Maven Central Adds Sigstore Signature Validation
Maven Central now validates Sigstore signatures, making it easier for developers to verify the provenance of Java packages.
Aletheia is an experimental compiled-to-javascript programming language.
For 1 and 2, Aletheia's philosopy is to "make correct things easy, but make incorrect things hard". For example, immutable variables require no prefix to declare them. However, mutable variables require a prefix for both declaration and mutation.
We're still missing some basic things, which we intend to implement in the future:
return
ing from a function inside an if-blocka = 5
if true [
mutate a = 6 // illegal! mutating a const variable
]
>> SyntaxError: ALC: Mutating `a`, which has modifier `const` is not permitted. Declare with `mutable` to allow mutation.
mutable
mutable a = 5
if true [
mutate a = 6 // compiles correctly
]
mutable a = 5
if true [
a = 6 // illegal! declaring a new variable
]
>> SyntaxError: ALC: Shadowing `a` is not permitted. Use `mutate` to mutate.
console.log "arg1" "arg2"
f = [ n | ret (n + 1) ]
console.log (f 4) // prints 5
if ((1 + 1) == 2) [
console.log "correct!"
]
mutable i = 0
while [ret (i < 10)] [ // this is not the final syntax
console.log i
mutate i = i + 1
]
fib = [ n |
mutable a = 1
mutable b = 0
mutable i = 0
while [ret (i < n)] [
old_b = b
mutate b = a + b
mutate a = old_b
mutate i = i + 1
]
ret b
]
Aletheia is quite unstable currently, but if you'd like to play with it (which I pretty much don't recommend at this point), the setup instructions are:
To install the current semistable library version of the compiler
npm install -g aletheia
alc <input_file.al> <output_file.js>
To install the current (unstable) library version of the compiler
npm install -g git://github.com/jacktoole1/aletheia.git
alc <input_file.al> <output_file.js>
To run the library compiler from the git repo:
git clone https://github.com/jacktoole1/aletheia.git
./aletheia/lib/aletheia/alc <source .al input file> <destination .js output file>
To create the latest bootstrapped compiler:
git clone https://github.com/jacktoole1/aletheia.git
cd aletheia/
npm install
make build
make test # to run the tests
./build/alc [source .al input file] [destination .js output file] # our created compiler
FAQs
An experimental compile-to-js programming language
The npm package aletheia receives a total of 3 weekly downloads. As such, aletheia popularity was classified as not popular.
We found that aletheia demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Maven Central now validates Sigstore signatures, making it easier for developers to verify the provenance of Java packages.
Security News
CISOs are racing to adopt AI for cybersecurity, but hurdles in budgets and governance may leave some falling behind in the fight against cyber threats.
Research
Security News
Socket researchers uncovered a backdoored typosquat of BoltDB in the Go ecosystem, exploiting Go Module Proxy caching to persist undetected for years.