PP

Rust

Dette sprog er mest beregnet til systemprogrammering. Glem alt om fancy grafer og brugerinterface.

Sålænge man holder sig til "The Rust Programming Language" virker alt fint.

Ulempen er, at der introduceres en bunke begreber, uden at disse helt forklares før længere fremme. Fx leder man længe efter, at "Some" betyder "indeholder en værdi" ¹.

En anden er https://rust-unofficial.github.io/too-many-lists/index.html
God, men kører nogen gange helt ud i tovene, fx linked list.

Dokumentation https://doc.rust-lang.org/
Kræver nogen viden at benytte denne. Brug søgefeltet

Kode forskønnelse med de rigtige indrykninger:
Installer denne:

rustup component add rustfmt

og kør på den aktuelle mappe således

cargo fmt

Fejlsøgning: Sådan kører man "Run with `RUST_BACKTRACE=1` environment variable to display a backtrace."

RUST_BACKTRACE=1 cargo run

Bevæger man sig ud over "The Rust Programming Language" , fx prøver at bruge crates til mysql eller læse/skrive  til regneark, så drukner man i fejlmeddelser (2021).
Det er dog lykkedes, at skrive til en excel-fil, men så kan man ikke læse fra den i samme program. Omvendt er det lykkedes at læse en excel-fil.

Nedenfor et program,  som beregner elprisen. Der læses en excel-fil som indeholder aktuelle afgifter og tariffer. Der sendes forespørgsel til energidataservice om rene elpriser et døgn frem i tiden.

Regnearket ser sådan ud. Afgifter og tariffer ændrer sig hele tiden, så kik fx på https://elberegner.dk/elpriser-time-for-time/. Indtast adresse og husk at markere, om det er øst eller vest for Storebælt.

 

 

 


¹) fra https://doc.rust-lang.org/:

Type Option represents an optional value: every Option is either Some and contains a value, or None, and does not. Option types are very common in Rust code, as they have a number of uses:

 Initial values

  • Return values for functions that are not defined over their entire input range (partial functions)
  • Return value for otherwise reporting simple errors, where None is returned on error
  • Optional struct fields
  • Struct fields that can be loaned or "taken"
  • Optional function arguments
  • Nullable pointers
  • Swapping things out of difficult situations

Options are commonly paired with pattern matching to query the presence of a value and take action, always accounting for the None case.

Powered by CMSimple | Template: ge-webdesign.de | Login

nach oben