Email sending tool made with C #, Kotlin, Rust, Julia and TypeScript

1 minute read

Introducing an email sending tool made by one of the qualityers Mr. Ohno in various program languages.

A program that sends EML format files by SMTP (Date and Message-ID can be updated as an option). It works portablely in Windows, Linux, and Mac environments. It works fine even if the EML contains UTF8 violating characters.

You can create such tools in any programming language, but it’s recommended for those who are curious because they can easily touch the recent trends such as Rust, TypeScript, and Julia.

C # version

Execution environment

–.NET Core 3.1 or above

download

https://github.com/ykon/sendeml-cs

Execution method
  • Windows
SendEML <setting_file>
  • Others
dotnet SendEML.dll <setting_file>

Kotlin version

Execution environment

–Java 8 and above

download

https://github.com/ykon/sendeml-kt

Execution method
java -jar SendEML.jar <setting_file>

Rust version

Execution environment

–Rust 1.45.2 and above

download

https://github.com/ykon/sendeml-rs

Execution method
sendeml-rs <setting_file>

Julia version

Execution environment

–Julia 1.5 and above

download

https://github.com/ykon/sendeml-jl

Execution method
  • Windows
julia --project .\src\SendEML.jl <setting_file>
  • Others
julia --project ./src/SendEML.jl <setting_file>

TypeScript version

Execution environment

–For Deno only. Deno 1.3.0 and above

download

https://github.com/ykon/sendeml-ts

Execution method
deno run --allow-read --allow-net sendeml.ts <setting_file>

Comment from the author: I wrote the characteristics of each language in one line

–C #: The IDE is great. I just don’t like the Pascal Case, but LINQ is great.
–Kotlin: The IDE is also great here. The extension library is a very easy-to-use language.
–Rust: Great. It’s a complete language that can’t be better.
–Julia: It’s a very quirky language, with Index starting from “1”.
–TypeScript: An ordinary simple and easy-to-write language.

We plan to make it in other languages and publish it, so I will introduce it again at that time.

that’s all.