Skip to content

Thoth is a versatile, multi-paradigm programming language designed to unify and empower developers. Named after the ancient Egyptian deity of knowledge and writing, Thoth promotes innovation and adaptability across various computing environments, from mechanical to quantum systems.

License

Notifications You must be signed in to change notification settings

CyberKenneth/Thoth

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 

Repository files navigation

Thoth

Thoth is a versatile, Wip, multi-paradigm programming language designed to unify and empower developers. Named after the ancient Egyptian deity of knowledge and writing, Thoth promotes innovation and adaptability across various computing environments, from mechanical to quantum systems. #currently I have this in various stages of development

Thoth Programming Language

Thoth is a versatile, multi-paradigm programming language designed to unify and empower developers with a focus on innovation, adaptability, and knowledge sharing. Named after the ancient Egyptian deity of knowledge and writing, Thoth aims to support a wide range of computing environments, from mechanical computers to quantum systems.

Language Features

Multi-Paradigm Support

Thoth supports various programming paradigms:

  • Object-Oriented Programming
  • Functional Programming
  • Procedural Programming
  • Declarative Programming
  • Structured Programming
  • Parallel Computing
  • Data-Driven Programming
  • Aspect-Oriented Programming
  • Event-Driven Programming
  • Logic Programming
  • Reactive Programming
  • Modular Programming
  • Markup Languages

Type System

Thoth provides a robust and flexible type system:

  • Static Typing: Types are checked at compile time by default.
  • Dynamic Typing: Types can be checked at runtime if enabled.
  • Strong Typing: Enforces strict type rules to prevent type errors.
  • Weak Typing: Allows more flexibility in type conversion.
  • Manifest Typing: Types must be explicitly declared.
  • Inferred Typing: Types can be automatically inferred by the compiler.
  • Nominal Typing: Types are determined by explicit declarations.
  • Structural Typing: Types are determined by the structure and behavior of objects.
  • Duck Typing: An object’s suitability is determined by the presence of certain methods and properties.
  • Latent Typing: Allows for delayed type checking. "woof"

Precision and Optimization

  • Advanced Evaluation System: Handles floating-point arithmetic with precision and optimizes equations.
  • Custom Linker: Allows overriding distribution code for optimization.
  • Unused Code Culling: Removes unused code to ensure efficient binaries.
  • Built-in Translation: Supports encoding paradigms with default UTF-8 encoding.

Scalability

  • Supports single systems, distributed systems, and cloud computing.
  • Suitable for embedded systems and low-bandwidth devices.
  • Native support for parallel and quantum computing.

Hot Swapping

  • Allows live code updates without downtime using #hotswap=true.

Sandboxing and Weaving

  • Sandboxing: Enables secure execution of code with specific properties.
  • Weaving Paradigms: Allows nesting and combining different paradigms within the code.

Compiler Options

  • Pre-JIT, JIT, and Econo-JIT Compilers: Optimizes code execution for various environments.

Primitives and Types

Basic Primitives

  • Boolean
  • Float
  • Int
  • Byte
  • Char
  • Double
  • String
  • Data
  • Number
  • Long
  • Short
  • QuadrupleFP (128-bit floating-point)
  • Quantum (for quantum computing operations)
  • 'Qbit'

"Hello there, i used to be aventurer like you till i took a arow to the knee"

Here's the continuation with the new file types you provided:

Source and General Files:

  • *.thoth* : The primary source code file for Thoth programs.
  • *.thth* : Thoth source files, providing flexibility for those who prefer shorter extensions.
  • *.thi* : Thoth user files, general user-defined source files.
  • *.thoi* : Thoth origin files, only distributed by the main Thoth repository or the original developer (Kenneth Joseph Treadaway and Direct Family).

Header Files:

  • *.thoih* : Thoth origin include header files, used to declare types, functions, and other constructs that can be included in multiple .thoth files.
  • *.thih* : Thoth include header files, user-defined header files.
  • *.thoisrc* : Thoth origin source include files, for more specific source inclusions.

Module and Object Files:

  • *.thmod* : Thoth module files, used to package and distribute reusable code modules.
  • *.thoobj* : Thoth origin object files, intermediate files generated by the compiler during the build process.
  • *.thobj* : Thoth object files, user-defined intermediate files generated by the compiler during the build process.

Library and Bytecode Files:

  • *.thlib* : Thoth library files, containing compiled code that can be linked with Thoth programs.
  • *.thbyte* : Thoth bytecode files, containing compiled bytecode for the Thoth virtual machine.

Script and Assembly Files:

  • *.ths* : Thoth self script files, used for scripting and automation within the Thoth environment.
  • *.thits* : Thoth user script files, user-defined scripts for automation and other purposes.
  • *.thasm* : Thoth assembly files, containing assembly code generated by the Thoth compiler for low-level programming.

System and Configuration Files:

  • *.thsys* : Thoth system files, containing system-level code and configurations.
  • *.thconf* : Configuration files for Thoth projects, containing settings and options for the compiler and runtime.

Swap and Log Files:

  • *.thswp* : Thoth swap files, used for hot swapping code at runtime.
  • *.thlog* : Log files generated by Thoth programs for debugging and analysis.

Documentation and Data Files:

  • *.thdoc* : Documentation files for Thoth code, containing comments and annotations for understanding and maintaining codebases.
  • *.thdat* : Thoth data files, used to store data that can be read and processed by Thoth programs.

Resource, Enumeration, and Lock Files:

  • *.thres* : Thoth resource files, containing additional resources such as images, sounds, and other assets used by Thoth programs.
  • *.thenum* : Thoth enumeration files, containing enumerations used in Thoth programs.
  • *.thlock* : Thoth lock files, used to manage concurrent access to resources in parallel and distributed computing environments.

About

Thoth is a versatile, multi-paradigm programming language designed to unify and empower developers. Named after the ancient Egyptian deity of knowledge and writing, Thoth promotes innovation and adaptability across various computing environments, from mechanical to quantum systems.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages