digitalmars.D.learn - Newbie -> midbie, personal projects
- Andy Valencia (47/47) Jul 11 I thought I should mention some of what has fallen out of my
I thought I should mention some of what has fallen out of my learning D. These are bits and pieces, coded in a minimalist approach. Where the OS matters, its target is Linux. I've collected my reusable stuff in "libtiny": https://sources.vsta.org:7100/tiny/index This includes socket.d, a class-based Socket with inherited hierarchy of Socket/IPSocket/TcpSocket/UDPSocket/SSLSocket. The fetch.d module uses this to support accessing of both TCP and SSL/TCP resources using the same code paths. There's an embeddable web server middleware in webserv.d. It's an SMP-friendly implementation and thread safe. It has companion modules for authentication and the serving of files (including ranges). There's a Python-inspired sstruct.d which permits encoding and decoding of byte streams into D data structures, like Python's "struct" module. epub.d is a module for accessing the industry standard epub ebook format. There are a number of modules which are lighter weight than existing solutions, or are pure D implementations because they'll be touching possibly malicious data and D safety is desired: - aes.d AES encryption/decryption - csv.d A CSV parser - dtoa.d A float/double formatter - xml.d An XML parser - fmt.d Formatting data into a string, sprintf() style - tag.d Extract metadata from mp3/flac/wav/ogg/aac - sqlite.d An interface to the sqlite3 library The smp/ sub-folder has data structures with integrated locking for SMP applications. At https://sources.vsta.org/ you can find some projects which use libtiny: - wepub2 A web interface read of an EPUB collection - wplayer2 A web interface to a audio media collection This is database driven, and can efficiently support even fairly large media collections (mine is about half a million tracks). - wradio2 A web radio streaming player It's been a fun journey; as a retired engineer pursuing this in an amateur (as in "for the love of it") capacity, D is quite possibly the last language I'll learn.
Jul 11








Andy Valencia <dont spam.me>