Aqualis 188.0.3

dotnet add package Aqualis --version 188.0.3
                    
NuGet\Install-Package Aqualis -Version 188.0.3
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Aqualis" Version="188.0.3" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Aqualis" Version="188.0.3" />
                    
Directory.Packages.props
<PackageReference Include="Aqualis" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Aqualis --version 188.0.3
                    
#r "nuget: Aqualis, 188.0.3"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Aqualis@188.0.3
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Aqualis&version=188.0.3
                    
Install as a Cake Addin
#tool nuget:?package=Aqualis&version=188.0.3
                    
Install as a Cake Tool

Aqualis

Algorithm and equation analyzer for lightwave simulation.

This F# library generates C, Fortran, Python, LaTeX, HTML, JavaScript, and PHP source code for numerical simulation and related applications.

Installation

Aqualis targets .NET 10. Install the .NET 10 SDK to run F# scripts or build an application that uses Aqualis. Add version 188.0.3 from NuGet to an F# project with:

dotnet add package Aqualis --version 188.0.3

For an F# script, reference the package directly instead of copying the DLL:

#r "nuget: Aqualis, 188.0.3"

How to use

Save the following as hello.fsx, then run dotnet fsi hello.fsx. It creates a generated directory next to the script and writes C, Fortran, and Python source files there.

#r "nuget: Aqualis, 188.0.3"

open System.IO
open Aqualis

let outputdir = Path.Combine(__SOURCE_DIRECTORY__, "generated")
Directory.CreateDirectory(outputdir) |> ignore

Compile [C99; Fortran; Python] outputdir "hello" "1.0.0" <| fun ctx ->
    ctx.print.s "Hello World!"

The version passed to Compile identifies your generated project; it is separate from the Aqualis package version. Compiling or running generated code requires the corresponding language tools.

See also the Japanese manual or English manual for detailed usage and prerequisites.

For PHP file uploads, configure private upload storage outside the public web root. Generated PHP rejects public or overly permissive storage directories before saving files.

Optional HTML assets

Generated HTML does not reference external CDNs by default. Applications that need MathJax or a web-font stylesheet must provide and reference those assets explicitly. A relative URL can point to files deployed alongside the generated output; an HTTPS URL is an explicit CDN opt-in.

Compile [HTML] outputdir projectname version <| fun context ->
    context.HtmlAssets.UseMathJax(Url.relative "assets/mathjax/tex-chtml.js")
    context.HtmlAssets.UseFontStylesheet(Url.relative "assets/fonts.css")
    // Generate the document body here.

Aqualis does not include or download MathJax, fonts, or other third-party web assets.

Structured diagnostics

Use CompileWithDiagnostics when warnings need to be inspected programmatically without console output.

let result =
    CompileWithDiagnostics [C99] outputdir projectname version <| fun context ->
        // Generate the program here.
        ()

for diagnostic in result.Diagnostics do
    printfn "%s: %s" diagnostic.Code diagnostic.Message

Compile remains available for compatibility and renders collected diagnostics to standard error. Error diagnostics abort the output transaction. CompileWithDiagnosticPolicy can additionally treat warnings as errors or limit the number of collected diagnostics. Context-free operations can be inspected with Diagnostics.Capture.

Generated output ownership

Successful Compile runs create a per-project .aqualis-generated-<project>.json manifest in the output directory. On later runs for the same project, files listed in the previous manifest but not generated again are removed transactionally. Unrelated files are left alone; if a previously generated file was edited after the previous run, compilation stops rather than deleting or replacing that edit. Existing outputs from before a manifest is first created are not automatically claimed or removed. Do not run multiple generator processes against the same output directory concurrently.

License

MIT License

Copyright (c) 2023 Jun-ichiro Sugisaka

Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
188.0.3 81 9/18/2026
188.0.0 76 9/17/2026