Comments (13)
Furthermore, I also have some doubts about naming.
- Why is it
HttpRequest
,HttpResponse
? Doesceylon.net
have other kinds ofRequest
s andResponse
s? - Why is it
WebEndpoint
andWebEndpointConfig
? Doesceylon.net
have other kinds ofEndpoint
s andEndpointConfig
s? - Why is it
HttpdStatusListerner
? Are there other sorts ofStatusListener
? Also note the misspelling ;-) - We don't use abbreviations in the SDK, therefore
Config
should beConfiguration
. - I'm also very suspicious of the name of the interface
Httpd
. Is that a word?
from ceylon-sdk.
I think we should be putting all this in a ceylon.http
module (e.g. ceylon.http.client
/ ceylon.http.server
) rather than it being a package of ceylon.net
. After all there are plenty of other protocols, and it would be unreasonable to make them all packages of ceylon.net
.
And I agree that we should try to avoid the term 'httpd' in favour of 'server', which will be more obvious to many people, is pronounceable, and offers a certain symmetry in conjunction with the term 'client'.
from ceylon-sdk.
In principal I agree with the above, just that I don't see how "it would be unreasonable to make them all packages of ceylon.net". Why would that be unreasonable?
from ceylon-sdk.
Well, I guess we're unlikely to support a great many protocols in the SDK, so maybe it would not actually be "unreasonable". But in theory we end up with a package (or two) for each protocol, and imho it gets a bit silly having nested packages like this:
- ceylon.net.http
- ceylon.net.smtp
- ceylon.net.xmpp
- ceylon.net.ftp
where there's no dependency of the subpackages on each other, only on the parent package.
The whole point is that http provides abstractions I can use (mostly) independently of tcp/ip, so having those abstractions in their own module makes sense to me. After all, in theory I could write an http 'server' that uses inetd
to handle the network interaction.
from ceylon-sdk.
Well, I would expect inetd
to be in net
as well :)
But even so, an http client/server without some kind of network communication seems a bit far-fetched right?
For it's just that if we start putting everything in the toplevel name space we'll end up with many dozens of modules and no grouping, no way to easily find related things, so http will be next to regexp, next to serializing, next to xml parsing, etc, personally I like things a bit more organized
from ceylon-sdk.
I agree with quintesse, I prefer ceylon.net.http
than ceylon.http
I also found that server
would be clearer than httpd
from ceylon-sdk.
What do you think about moving to ceylon.net.http.client
and ceylon.net.http.server
?
from ceylon-sdk.
Sounds good to me.
from ceylon-sdk.
+1
Sent from my iPhone
On 08/03/2013, at 11:00 AM, Matej Lazar [email protected] wrote:
What do you think about moving to ceylon.net.http.client and ceylon.net.http.server ?
—
Reply to this email directly or view it on GitHub.
from ceylon-sdk.
This is done, right?
from ceylon-sdk.
Can I close this issue or was there something else remaining?
from ceylon-sdk.
You can close it. @gavinking refactored API, based on his comments ;)
Packages has been renamed too.
from ceylon-sdk.
Thanks.
from ceylon-sdk.
Related Issues (20)
- http.server.Request.read() and "unterminated" strings HOT 1
- Ceylon logging should support loggers with class name HOT 1
- JavaList should throw IOOBE for bad indexes HOT 2
- change pattern for attributes in `ceylon.html` HOT 4
- Regex stickiness
- ceylon.test::parameters is unintuitive when test is wrapped in a class HOT 1
- ceylon.test::parameters is unintuitive when test is wrapped in a class
- make JavaMap, JavaSet, JavaList serializable
- JDK 9 adds SSLEngineResult.HandshakeStatus.NEED_UNWRAP_AGAIN
- Loading files from the classpath throws FileSystemNotFoundException
- Bad class file error using ceylon.file 1.3.4-SNAPSHOT
- ceylon.time.iso8601::parseDayOfMonth and parseDate fail for leap day HOT 5
- ceylon.time.Period compare and equals incompatible HOT 2
- ceylon.time.Period should be `Invertible` HOT 4
- Decimal == AnythingElse causes assertion failure HOT 3
- use 'new' enum style instead of old 'object' style HOT 3
- ceylon.time.Duration should satisfy Summable, Invertible, and Comparable
- assertThateException -> ExceptionAssert can't handle member exception classes
- promlem with parsing february 29 in leap year HOT 2
- ceylon test -F fails with AssertionError
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ceylon-sdk.