nim-wiki/GSoC-2014-Ideas.md

1.5 KiB

Introduction

...

Projects

Compiler

  • Add support for coroutines

  • Fix bugs with iterators/generics

  • Fix/Expand Compiler as a Service features

Standard Library

  • Integrate and expand new async io module

  • Enhance the filesystem monitoring module "fsmonitor.nim"

    • Allow the fsmonitor module to work on Windows by using native api's to gather information about changes in monitored files and directories.
    • Revise the fsmonitor module api to decouple unix/linux file handle paradigms (such as using sockets.poll) from the api, allowing easier implementations of native backends.
    • Integrate the fsmonitor module's polling mechanism into the new asynchronous io modules.
  • Add a cross-platform stat()-like procedure to the operating system module "os.nim"

    • Implement a procedure which uses native stat-like calls on Linux, Mac, Windows, and other operating systems to gather detailed information about specific file system objects. Allow the bypassing of symlinks and hardlinks, where possible.
  • Enhance and expand standard library documentation

    • Ensure that documentation exists for all public methods and modules
    • Create and design new CSS and HTML layouts for the documentation, to better fit with the main website
    • Add search capabilities to the documentation

Tools & Infrastructure

  • Update and refactor nimrod builder
    • Reduce the number of assumptions the nimrod builder makes about its host system, in order to reduce configuration restrictions. Assumptions include location and usage of external tools, such as git.