Skip to content

karoenven/Melon

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Melon logo

Melon

中文说明

Melon is a generic cross-platform C library. It contains many algorithms, data structures, functional components, scripting languages and practical frameworks, which can facilitate developers to quickly develop applications and avoid the dilemma of repeated wheel building.

  • Components
    • Library Initialization
    • Configuration
    • Log
    • Error Code Management
    • Memory Pool
    • Thread Pool
    • I/O Thread
    • TCP Encapsulation
    • Event Mechanism
    • File Set
    • HTTP Handling
    • Scripting Language
    • Lexical Analyzer
    • Parser Generator
    • Websocket
    • String
    • Regular Expression
    • Big Number Calculation
    • FEC
    • JSON
    • Matrix Operations
    • Reed Solomon Coding
    • Cron Format Parser
    • Spin Lock
    • Prime Generator
  • Data Structures
    • Doubly Linked List
    • Fibonacci Heap
    • Hash Table
    • Queue
    • Red-black Tree
    • Stack
    • Array
  • Algorithms
    • AES
    • DES/3DES
    • RC4
    • RSA
    • MD5
    • SHA
    • Base64
  • Scripting Language Development
  • Frameworks
    • Multi-Process Model
    • Multi-Thread Model
    • Trace Mode
    • IPC

Platform Support

Melon was originally written for UNIX systems, so it is suitable for UNIX-like systems such as Linux and MacOS. And there are a few optimizations for Intel CPUs.

At present, Melon has also completed the preliminary porting to Windows, so it can be used on Windows. However, because Windows differs greatly from the UNIX system in the creation process, some functions of the above framework are temporarily not supported in Windows.

Installation

On Windows, please install mingw, git bash and make at first. Install MingW-W64-builds with the installation settings:

  • Version: 8.1.0

  • Architecture: i686

  • Threads: posix

  • Exception: dwarf

  • Build revision: 0

Then execute these shell commands on git bash or terminal (on UNIX).

git clone https://github.com/Water-Melon/Melon.git
cd Melon
./configure [--prefix=LIB_INSTALL_PATH]
make
make install

License

BSD-3-Clause License

Copyright (c) 2014-present, Niklaus F. Schen

Documentation

Please refer to Official Documentation Website for more details.

中文文档请参考:中文指南

Docker

You can pull the built container image to deploy the running environment.

Docker image will not be maintained temporarily because I cannot sign in docker hub from my country.

docker pull melonc/melon

Webassembly

You should install emsdk at first, make sure emcc and emar have been installed. Then execute:

./configure --enable-wasm
make && make install

There is only one static library libmelon.a to be created.

Contact

Twitter: @MelangInc

QQ: 756582294

About

A generic cross-platform asynchronous high-performance C framework, including a lot of components and a new coroutine script language Melang.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 100.0%