Generic-C-DataStructures
CSCMIC
Our great sponsors
Generic-C-DataStructures | CSCMIC | |
---|---|---|
3 | 2 | |
1 | 6 | |
- | - | |
4.3 | 0.0 | |
over 2 years ago | about 2 years ago | |
C | C | |
- | - |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Generic-C-DataStructures
-
15+ year programming willing to help
Hi, I graduated with Chemical engineering and left a dead end job late last year in oil sector. I kind of dabbled in programming on and off for the 7 years before that, learning bits and pieces of C, swift, iOS development, C++, machine learning, even algorithms and data structures; but nothing really “took off”. I used to mainly code simple engineering calculators. But there’s only so many engineering calculators the world needs and so since December last year I started studying CS “properly” - I did SICP and I learnt the basics of interpreters, assembly and compilers. I wanted to gain more experience with C before I did systems so I wrote generic data structures in C, even implemented a subset of Scheme in C .
-
November 2021 monthly "What are you working on?" thread
Started making a generic data structures library in C for subsequently using them to implement a basic Scheme interpreter. link
-
Yet another "Generic Data Structures in C" post
So I was just lurking on this subreddit that I found a really good link for a get-down-to-business tutorial on C: Yale CPSC 223 notes, and I finally understood macros. I was going through Crafting Interpreters where the author was using Java's generic hash tables and I got this motivation for implementing my own generic symbol table implementation in C. I wrote macros for ordinary BSTs and Sedgewick's Left Leaning Red Black trees (translating from his recursive Java implementation). In the process, I also learnt (and used) Clang's Address Sanitizer and Leak detection features to remove memory leaks.
CSCMIC
-
15+ year programming willing to help
Hi, I graduated with Chemical engineering and left a dead end job late last year in oil sector. I kind of dabbled in programming on and off for the 7 years before that, learning bits and pieces of C, swift, iOS development, C++, machine learning, even algorithms and data structures; but nothing really “took off”. I used to mainly code simple engineering calculators. But there’s only so many engineering calculators the world needs and so since December last year I started studying CS “properly” - I did SICP and I learnt the basics of interpreters, assembly and compilers. I wanted to gain more experience with C before I did systems so I wrote generic data structures in C, even implemented a subset of Scheme in C .
-
Show HN: A (barely usable) Scheme Interpreter in C
Next I tried to study parsing from his book but didn't find parsing to be as enjoyable. I then went to the dragon book , which I had found to be very dense the first time I flipped through it an year ago. This time I found it to be much more approachable, thanks again to what I had read in Nystrom's book. Precedence and associativity made more sense when I read it a second time. But it turns out that Scheme's grammar is really simple: Expr -> atom | '(' Expr ')', so I stopped reading and started coding.
It's barely usable because it has no GC, and I may have to rewrite it from scratch for implementing one. In the meantime I am thinking of doing a rewrite in Java, and then do part 3 from Crafting Interpreters, where the author implements everything in C.
Still very much a newbie, I welcome criticisms and directions for moving it forward.
[1] https://github.com/TectonicFury/CSCMIC
What are some alternatives?
RustScript2 - RustScript is a functional scripting language with as much relation to Rust as Javascript has to Java.
One - One (onelang) is an open-source system programming language that makes it easy to build reliable, efficient and performant software. (release as soon) 1️⃣ 🕐 🩱
skybison - A fork of Instagram's experimental performance oriented greenfield implementation of Python. It features small objects; a moving GC; hidden classes; bytecode inline caching; type-specialized bytecode; an experimental template JIT.
CS50x-2021 - 🎓 HarvardX: CS50 Introduction to Computer Science (CS50x)
tonic - An elegant language for script-kiddies and terminal squatters.
STklos - STklos Scheme
protea - An in-progress programming language inspired by JavaScript.
Rubinius - The Rubinius Language Platform
lockdown - Lockdown is a general-purpose programming language that combines the positive characteristics of both "strongly-typed" and "dynamic" languages, giving the developer the choice about when and how these should be used.
Weechat - The extensible chat client.
aussieplusplus - Programming language from down under
free-programming-books - :books: Freely available programming books