Elm:
Skriva till standardfel
Hur man gör:
Elm är främst inriktad på webbutveckling, där konceptet att skriva direkt till stderr inte tillämpas på samma sätt som det gör i traditionella kommandoradsmiljöer. Dock, för Elm-program som körs i Node.js eller liknande miljöer, är interaktion med JavaScript genom portar den främsta metoden för att uppnå liknande funktionalitet. Här är hur du kan ställa in det:
Elm-kod (Main.elm
):
port module Main exposing (main)
import Browser
port errorOut : String -> Cmd msg
-- Fiktivt exempel på funktion som skickar ett felmeddelande till JS
generateError : String -> Cmd msg
generateError message =
errorOut message
main =
generateError "Det här är ett felmeddelande för stderr"
JavaScript-interaktion (index.js
):
const { Elm } = require('./Main.elm');
var app = Elm.Main.init();
app.ports.errorOut.subscribe((message) => {
console.error(message);
});
Denna Elm-kod definierar en port errorOut
som tillåter skickande av meddelanden från Elm till JavaScript. Sedan i JavaScript-koden lyssnar vi på meddelanden som skickas genom denna port och omdirigerar dem till stderr med console.error()
. På så sätt kan du effektivt skriva till stderr i en miljö som stöder det, genom att utnyttja Elms interops-funktioner med JavaScript.
Exempelutdata i Node.js-terminal (när index.js
körs):
Det här är ett felmeddelande för stderr