Giter Site home page Giter Site logo

itssamuelrowe / jtk Goto Github PK

View Code? Open in Web Editor NEW
27.0 27.0 6.0 830 KB

JTK is a library designed for writing applications and libraries in C. It provides core utilities such as collections, unit testing, I/O streams, threads and much more.

License: Other

CMake 0.79% C 95.06% C++ 3.36% Shell 0.02% Objective-C 0.78%
c collections concurrency cpp cross-platform jtk networking unit-test zen

jtk's People

Contributors

apfeltee avatar itssamuelrowe avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

jtk's Issues

Can some please implement the BigInteger data type?

BigInteger data type can be used for mathematical operations which involve very big integer calculations that are outside the limit of all available primitive data types in C.

For example factorial of 100 contains 158 digits. Obviously, it cannot be stored in any primitive data type available in C. However, with a BigInteger we can store large integer values as we want. The memory is allocated dynamically as required.

The structure of BigInteger can be something like this:

struct jtk_BigInteger_t {
   /* A sequence bytes that represent the integer value. */
    int32_t* m_values;
   /* The number of bytes occupied by this big integer. */
    int32_t m_capacity;
};

typedef struct jtk_BigInteger_t jtk_BigInteger_t;

Please try to implement the following operations:

  • addition
  • subtraction
  • division for quotient
  • multiplication
  • division for remainder
  • bitwise AND
  • bitwise OR
  • bitwise NOT

It would be great if you could add other operations, too.

Extend the documentation of JTK

JTK was created to write a compiler for a language that I designing. It's been three years since I started working on the project. Given my schedule, I am not able to work on both Zen and JTK. And writing documentation is out of the question for now. For the most part, JTK is easy to use once you are acquainted with the library. However, most users cannot comprehend the conventions, functions, and so on without a proper documentation. It would be really helpful if someone could help me write the documentation.

Create unit tests to detect bugs in the library.

JTK was created to write a compiler for a language that I designing. It's been three years since I started working on the project. Given my schedule, I am not able to work on both Zen and JTK. And writing unit tests is out of the question for now. For the most part, JTK seems to work fine. However, I come across bugs every now. It would be really helpful if someone could help me write unit tests to detect bugs.

Fix the compilation warning messages

JTK was created to write a compiler for a language that I designing. It's been three years since I started working on the project. Given my schedule, I am not able to work on both Zen and JTK. For the most part, JTK seems to work fine. However, the compiler generates a plethora of warnings during compilation. I have disabled warnings in CMakeLists.txt file. It would be really helpful if someone could help me fix the warnings.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.