rot13 icon indicating copy to clipboard operation
rot13 copied to clipboard

Basic dialects | Disassembling | New functional language

Open AlexeyTolstopyatov opened this issue 11 months ago • 0 comments

New

I've added some new variants of ROT-13 algorithm's implementation:

  • Visual Basic (.NET)
  • Visual Basic Classic (6.0/5.0...~and earlier~)
  • Twin Basic
  • Intermediate Language (MSIL)
  • Frege

~Little~ about

VB.NET

I saw the implementation of the algorithm on VB.NET, but decided to add some idea,. showing not total partial reverse compatibility with the functions of the virtual machine,. but non- connection with IL and directly with the platforms .NET...

As a focus-example, I used LINQ, because it is everywhere where there is.NET. . Old functions from the virtual machine (for example, 'Chr', 'Asc') I left to. show compatibility. 🦅💥.

Classic era~

Visual Basic at that time was completely dependent on the eponymous virtual machine,. (MSVBVMXX.dll or VBX00.dll for earlier language revisions) and was different. in terms of understanding it as a NET rework.

So I thought, what we can do. separate directory ('.../Visual Basic 6.0') with the program module. I did not create. also the folder `.../vba', since it is the same, in understanding of the task.

Same tools are used and the magic of interaction with Office will not be :D

~Maybe later with new languages I will add the source code of the macro for Microsoft Excel~

Twin Basic.

Implementation of classic Visual Basic, with full backwards compatibility.. Unlike the parent, can be collected in Native Code (N-Code in literature). for 64-bit architectures. (for IA32(e) exactly).

Frege.

Frege is a functional programming language, close to Haskell, implemented on top of JVM and allowing to use any Java-libraries..

(MS)IL.

Similar to LLVM for .NET compiled binary files. Used an example from VB.NET (where there is a lambda expression and the concept of "high level C#" to show a little more detail description).

In the end

Please, give me a feedback if something happened. Hope this info will be useful in the project :3

AlexeyTolstopyatov avatar May 03 '25 16:05 AlexeyTolstopyatov