Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ficus stdlib TODO #5

Open
vpisarev opened this issue Jan 19, 2021 · 2 comments
Open

ficus stdlib TODO #5

vpisarev opened this issue Jan 19, 2021 · 2 comments
Milestone

Comments

@vpisarev
Copy link
Owner

vpisarev commented Jan 19, 2021

(in bold there are higher-priority items)

    • Basic ops on strings, lists, arrays, numbers, tuples etc. ...
    • Real complex type & ops (need support at compiler level, but mostly can be done in the standard library, just like "option")
    • Introspection, compiler as a library
    • JSON parser & emitter
    • XML, YAML parser & emitter
    • Async, parallel programming (Mutex class/module or equivalent functionality is necessary to implement first for map-reduce algorithms)
    • OS services (files, directories, processes, ...)
    • Time & Date (arithmetic operations on time and date, calendar etc.)
    • Unit test framework
    • Logging
    • Pretty printing
    • Regexp (RE2? or something like that)
    • Parsing module for context-free grammars or some more constrained grammars
    • Functional & imperative data structures (balanced trees, hash tables, ...)
    • Basic operations on graphs (?)
    • Matrix operations, including popular decompositions
    • Bindings to BLAS & LAPACK
    • Math functions
    • Random number generation
    • Solvers (Linear programming, convex programming etc.)
    • Geometry (rotations, projections, multiple-view geometry etc.)
    • BigInt a.k.a. long or bigint or decimal (bindings to GMP?) (libBF by Fabrice Bellard? or big.js?). See also adding 'deci' type #12
    • GPGPU OpenCL (bindings & runtime loader of OpenCL; memory management)
    • GPGPU CUDA (???)
    • OpenGL API (or maybe something more modern?)
    • Vector graphics (AGG, NanoVG, ...)
    • Bindings to OpenCV
    • Tiny image processing library (filters, resize & warping, color conversion etc.)
    • Tiny DSP library (DFT, DCT, FIR/IIR filter, windows, ...)
    • (work in progress) Deep learning inference library (importers + execution)
    • Machine learning library (SVM, kNN, ...)
    • Image I/O
    • Bindings to zlib, ... (lossless data compression)
    • Bindings to sqlite, convenient SQL queries
    • Video encoding/decoding
    • Audio I/O (including mp3 decoder & microphone & playback)
    • Camera & other sensor access
    • Small network library (sockets, file downloading from url, ...)
    • Simple UI framework (?, LCUI? GLFW? tiny ui)
@vpisarev vpisarev added this to the 1.0 milestone Apr 1, 2022
@puneeth072003
Copy link

Hey there, Im a nubie here could you please help me to set up the project in local computer

@puneeth072003
Copy link

I'm finding it difficult to understand the code

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants