aspl-lang/aspl

aspl: add (inline) `if` expressions/a ternary operator

オープン

#38 opened on 2026/07/16

 (0 件のコメント) (0 件のリアクション) (0 人の担当者)C (6 件のフォーク)auto 404
enhancementhelp wanted

Repository metrics

Stars
 (30 個のスター)
PR merge metrics
 (PR metrics pending)

説明

Feature idea

There is currently no clean way to conditionally assign/select values inside a single expression in ASPL, leading to a lot of boilerplate code like temporary or wrongly-typed variables. See this code, which is taken from the ASPL compiler, for an example:

var string? mainOutFile = null
// ...
if(Options:targetOs == "android"){
    mainOutFile = tempFile
}else{
    // ...
    mainOutFile = exeFile
}

Possible solutions/implementations

An if expression, analogous to if statements, or a ternary operator, which is just a different notation for the same thing.

Alternatives considered

Match expressions (see #37) are the more general solution to this problem but also unnecessary clutter for just a simple binary condition, so additional if expressions are still worth it, imo.

Additional context

No response

Contributing guidelines

  • I agree to follow this project's contributing guidelines

コントリビューターガイド