System# is a .NET library intended for the description of real-time embedded systems. It comes with a built-in simulator kernel and a code transformation engine that converts a design into synthesizable VHDL. The main focus is currently the development of FPGA designs. System# not only supports register-transfer-level (RTL) descriptions whose translation to VHDL is straightforward, but is also capable of converting clocked threads with wait statements to a synthesizable VHDL state machine. Furthermore, System# introduces synthesizable transaction-level modeling features. From a technological point of view, it uses reflection and assembly code (CIL) decompilation to reconstruct an abstract syntax tree (AST) from the system design. The AST conforms to SysDOM, a document object model for describing component-based reactive systems. An unparsing stage converts the AST to VHDL. The decompilation process can be instrumented in various ways by attribute-based programming. Furthermore, transformations of the AST itself are possible. This enables implementation of advanced features such as converting clocked threads to finite state machines.
S22.Imap is an easy-to-use and well-documented .NET library component for communicating with and receiving electronic mail from an Internet Message Access Protocol (IMAP) servers. It supports IMAP IDLE notifications and IMAP over SSL, allows selective fetching of parts of mail messages, is inherently thread-safe, and is well documented with lots of example code.
ENet for C# wraps the C-language ENet networking library. For games and other realtime applications, if you use TCP, old data can hold up newer data, even if it is no longer relevant (old positions, etc.). Your players will perceive any lost packet as a "lag burst". ENet supports multiple in-order streams of data, and allows you to decide on reliability on a per-packet basis. The library is useful for both client-server and peer-to-peer architectures.