summary refs log tree commit diff stats
path: root/test/testdir/zerobytes
diff options
context:
space:
mode:
authorhut <hut@lavabit.com>2010-06-24 20:31:41 +0200
committerhut <hut@lavabit.com>2010-06-24 20:31:41 +0200
commitdf2e1f7df4296e32f9597f6a78eac27f544ca12b (patch)
tree6776efb8faf68d04d2ef5edd3149d5f67249ffa2 /test/testdir/zerobytes
parent1621a40c0e268929fff97c79537db709dd2b3fc6 (diff)
downloadranger-df2e1f7df4296e32f9597f6a78eac27f544ca12b.tar.gz
Makefile: simplification
Diffstat (limited to 'test/testdir/zerobytes')
0 files changed, 0 insertions, 0 deletions
a> 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139
- thread support: threadvar on Windows seems broken; 
  add --deadlock_prevention:on|off switch
- built-in serialization

- we need a way to disable tests
- deprecate ^ and make it available as operator
- test branch coverage
- checked exceptions
- do not ambiguity error for methods if ambiguity only affects the same 
  dispatcher anyway
- slicing


High priority (version 0.9.0)
=============================


- fix implicit generic routines
- fix the streams implementation so that it uses methods
- fix overloading resolution
- wrong co-/contravariance


Bugs
----
- proc (x: int) is passable to proc (x: var int)  !?
- detected by pegs module 64bit: p(result, result) should use a temporary!
- the parser allows empty object case branches
- Exception matching needs to take subclasses into account


To implement
------------

* sort routine
* hash tables and sets
* distinct types for array/seq indexes
* constant sequences

* implement closures for the C code generator



Low priority
------------
- resizing of strings/sequences could take into account the memory that
  is allocated
- implicit conversions from ``ptr/ref T`` to ``var T`` (from
  ``ptr/ref T`` to ``T``)?
- documentation: type converters
- typeAllowed() for parameters...
- find a way to reintroduce the cleanup() pass for C code generation: this
  is hard because of partial evaluation --> symbol files will fix this as
  a side effect
- implement better error handling: errornous top level statements are ignored
  and not part of the symbal table --> for REPL
  --> this needs deletion operation for symbol table!
- floating point checks for EcmaScript
- enhance `` notation for identifier concatenation: `concat` a `these`
- prefer proc in current module over other procs with same overloading result?
- real types for template results
- generalized case statement (requires better transf)
- normalize for the DOM
- tlastmod returns wrong results on BSD (Linux, MacOS X: works)
- nested tuple unpacking
- fast assignment optimization for TPeg
- better error messages for used keywords as identifiers
- case statement branches should support constant sets
- ban ``nil`` from the AST. This might also fix bugs concerning macros.


Library
-------

- locale support
- conversion between character sets
- bignums
- ftp (and other internet protocols)

- pdcurses bindings
- queues additional to streams: have two positions (read/write) instead of one

- for system:
  proc `@` [T](a: openArray[T]): seq[T] = 
    newSeq(result, a.len)
    for i in 0..a.len-1: result[i] = a[i]
    
  --> ensure @[] calls the array version!


Version 2
---------

- language change: inheritance should only work with reference types, so that
  the ``type`` field is not needed for objects! --> zero overhead aggregation
  BETTER: ``is`` and safe object conversions only work with ref objects. Same
  for multi methods.
  
- explicit nil types?
  * nil seq[int]
  * nil string
  * nil ref int
  * nil ptr THallo
  * nil proc 

- better for backwards compatibility: default nilable, but ``not nil``
  notation:
  
  type
    PWindow = ref TWindow not nil
- the two other parsers


Low priority
------------

- ``when T is int`` for generic code
- ``when validCode( proc ()  )`` for generic code
- macros: ``typecheck`` pragma; this allows transformations based on types!
- find a way for easy constructors and destructors; (destructors are much more
  important than constructors)
- code generated for type information is wasteful


Other ideas
-----------
- startsWith `=^`
- endsWith `=$`
- ignore case `=?` --> `=$?` too?


RST
---
- footnotes; prefix :i: whitespace before :i:, _reference, `reference`__
  __ anonymous: www.nimrod.org
- rewrite the parser to use the new better look ahead technique that c2nim
  uses