# Measuring NC Implementation Characteristics - external-latency.rkt is the driver for the roundtrip latency "echo" programs. Generally speaking, statistics for each run will be recorded into "client-grow-times", "client-ping-times" and "client-summary" tables. When the server for a run is written in Racket, additional statistics will be collected into tables "server-memory-use" and "server-connections". - echo-client.rkt measures roundtrip latency of pinging a remote server - echoserver.erl is a matching ping server in Erlang - echo-server-minimart-tcp-driver.rkt is a server using Minimart's TCP driver - echo-server-prospect-tcp-driver.rkt is a server using Prospect's TCP driver - echo-server-imperative-syndicate-tcp-driver.rkt is a server using Imperative Syndicate's TCP driver - echo-server.rkt is a server using Minimart, but eschewing the TCP driver - plain-racket-server.rkt is a server using built-in Racket threads - uvserver.c is a server written in C with libuv - internal-latency.rkt measures roundtrip latency of pinging a local peer in a Minimart world. - internal-latency-symbols-not-fixnums.rkt is the same, but uses symbols instead of fixnums to identify peers. - internal-latency-prospect.rkt is the same, but using Prospect instead of Minimart. - internal-latency-imperative-syndicate.rkt is the same, but using Imperative Syndicate instead of Minimart. - observe-all-minimart.rkt, observe-all-prospect.rkt, observe-all-imperative-syndicate.rkt, sum-all-minimart.rkt, sum-all-prospect.rkt, and sum-all-imperative-syndicate.rkt measure the costs of presence notification and processing in Minimart, Prospect, and Imperative Syndicate worlds, respectively. - pingpong.rkt and pingpong.erl are simple measurements of Racket's and Erlang's built-in thread communication latency, respectively. They do not use the racket-logger statistics-collection subsystem, instead printing their results to stdout.