markm: At http://www.erights.org/elib/concurrency/eio/index.html and http://www.erights.org/javadoc/org/erights/e/elib/eio/package-summary.html . |
tribble: Some suggestions: |
markm: I'll be meeting with Dean and a few others tomorrow, where I expect we'll discuss EIO. Afterwards I'll explain in more detail my take on these issues. |
markm: I started with "EStream", but it made the writing awkward. A stream is what flows through an EReader or EWriter. |
markm: Java doesn't have any one terminology convention that I know of that applies to characters, bytes, and object |
markm: Agreed, I will fix this. |
markm: Agreed. Done. |
markm: Agreed. Done. |
markm: Nah, that's what a web site is for, especially since these are more goals than specs. But the package doc links directly too it. |
markm: Almost certainly, but I want to postpone sugar until we've lived directly with the primitives for a little bit. |
markm: I assume by "start" you mean an element to look for rather than a position? |
markm: This is the big issue. By normal E design criteria, and from the currently posted material, my whenAvailable semantics seem obviously bad. |
tribble: - Rename EIOConnector to EIOStream since it describes what is in common among read and write streams? |
markm: I started with "EStream", but it made the writing awkward. A stream is what flows through an EReader or EWriter. |
tribble: - Keep consistent with Java naming convention, so Reader and Writers should be for handling text, not raw streams |
markm: Java doesn't have any one terminology convention that I know of that applies to characters, bytes, and object |
tribble: - In EIOConnector, the description: "You use an EWriter to place elements into a stream, |
markm: Agreed, I will fix this. |
tribble: - UnavailableException should be a kind of IOException so that if I want, I can just catch IOException. |
markm: Agreed. Done. |
tribble: - The second sentence of the EWriter.flush() documentation |
markm: Agreed. Done. |
tribble: - The material in "http://www.erights.org/elib/concurrency/eio/goals.html" should be in the package doc. |
markm: Nah, that's what a web site is for, especially since these are more goals than specs. But the package doc links directly too it. |
tribble: - need to add read(amount) and read() |
markm: Almost certainly, but I want to postpone sugar until we've lived directly with the primitives for a little bit. |
tribble: - need to add peekOne(start) which peeks ahead that many characters. |
markm: I assume by "start" you mean an element to look for rather than a position? |
tribble: A secondary issues is whether there can be multiple waiters. |
markm: This is the big issue. By normal E design criteria, and from the currently posted material, my whenAvailable semantics seem obviously bad. |