Talk:CSL: Difference between revisions
m (→Project: Categorical Imp: temporarily inactive) |
m (→Project: X++: Annotations, debugger and profiler) |
||
Line 99: | Line 99: | ||
:* Precompiler will also be available for Eclipse and as a command line tool. |
:* Precompiler will also be available for Eclipse and as a command line tool. |
||
:* Profiler/debugger with extensible SQL database. |
:* Profiler/debugger with extensible SQL database. |
||
:* [[wikipedia:Java_annotation|Annotations]] can contain debugger and profiler instructions. |
|||
:* Conditionally compiled debug code can control debugger and profiler from within the program. |
|||
:: The name "X++" is already used by Microsoft for a language that has similarities with C# and C++ but includes SQL syntax. [http://msdn.microsoft.com/en-us/library/aa867122.aspx] --[[User:Fasten|fasten]] 12:37, 30 January 2009 (UTC) |
:: The name "X++" is already used by Microsoft for a language that has similarities with C# and C++ but includes SQL syntax. [http://msdn.microsoft.com/en-us/library/aa867122.aspx] --[[User:Fasten|fasten]] 12:37, 30 January 2009 (UTC) |
||
::: Proposals for a new name are welcome. --[[User:Fasten|fasten]] 11:55, 24 April 2009 (UTC) |
::: Proposals for a new name are welcome. --[[User:Fasten|fasten]] 11:55, 24 April 2009 (UTC) |
Revision as of 09:37, 25 July 2009
Proposals
Proposal: CSL Membership License
At a fixed annual cost access to all software under CSL Membership License could be made available. CSL-EDU could be a special case for education providers. This license would allow a community of users and programmers with open access, similar to the open source community.
Proposal: CSL-EDU
The CSL-EDU license would be a special license for education providers. At a fixed cost the education provider can license all software that is made available under the CSL-EDU license. Licensor and education provider can negotiate the cost according to published policies of the Licensor. The Licensor is responsible to provide a license management system that allows to distribute and revoke licenses for students conveniently and to make software released under the CSL-EDU compatible with the licensing scheme. Licensors who do not meet that criterion cannot sell site licenses for education providers.
Proposal: Modular design
This is not a license issue but a design recommendation. CSL programs can build on a freely available core but allow plugins, extensions or related programs (e.g. similar to Firefox or Eclipse plugins) under the CSL license. One would probably want an option in the CSL license to either allow or disallow commercial plugins under different licenses.
Proposal: CSL SDK license
A CSL SDK license could be a license to develop commercial plugins for a CSL-licensed program. This could be seen as a middle ground between trying to prohibit commercial plugins and allowing commercial plugins without restrictions. A CSL SDK license should have an annual licensing fee, possibly in percent of the generated revenue. A commercial vendor would always be free to make his plugins usable in a different container program but might lose the community around the CSL-licensed program.
An interesting consideration here may be: "If you accept a moral obligation to educate/motivate others, how much motivation are you willing to provide?" One could, for instance, make payment of the full license fee voluntary but revoke the license below a minimum threshold. The rationale is that a voluntary component is a precondition of free will, while the motivation appears to be a necessary response to poverty, consequently an intermediate position may be desirable (the free will of higher-order volitions, however, is likely to be the decision to make the voluntary contribution, not to use the resources to "do what you want").
The above statement may implicitly aim to make you observe that "many companies have sufficient opportunity to exert free will, especially the management, and that can hardly be the most relevant concern here", to which a communist AI would probably remark "Thank you (for that assessment)."
Proposal: Free license
CSL-licensed software can be made available for free. The interested licensee has to submit a 500 word essay explaining his eligibility with at least 5 relevant references to the categorical imperative. Participants can also win a cruise. The expectation is, of course, that most people will run into an argumentative dilemma.
Projects
Project proposal: Eclipse under CSL?
The EPL states "A Contributor may choose to distribute the Program in object code form under its own license agreement", which could be the CSL.
- Examples:
- An Eclipse-Jemacs hybrid might be a good idea. (See also: Eclipse Linux Tools, bug #8009) --fasten 19:02, 17 January 2009 (UTC)
- A version of Eclipse with a special emphasis on teaching computer science might be useful for schools. --fasten 15:07, 8 February 2009 (UTC)
Project proposal: Software that is useful for OLPC
- QNX, Sugar and Java/X++ as a CSL-licensed commercial distribution? (For instance with application monitoring written in Java) The distribution would, of course, not be attached to the XO hardware. --fasten 02:16, 31 January 2009 (UTC)
Project: Categorical Imp
A management program for categories defined in XML namespaces (according to the esp specification). | |
Maintainer: | Bernhard Fastenrath |
Version: | 0.0 |
Next release: | temporarily inactive |
Donation strategy: | free software but GPL+CSL-licensed to encourage CSL-licensed extensions. |
The program will feature CSL-licensed extensions.
See: Categorical Imp Wiki @ sourceforge.net
Project: Assistant Teacher Program Workbench
A management program for the Wikiversity assistant teacher program | |
Maintainer: | Bernhard Fastenrath |
Version: | 0.0 |
Next release: | temporarily inactive |
Donation strategy: | unicef.de donations (with online certificate), 95% |
A management program for the Wikiversity assistant teacher program that can manage and schedule all necessary entities and events for the Wikiversity assistant teacher program. The free version will run the server code in the desktop program, which reduces the number of simultaneous users to one and doesn't allow to reduce the access rights of users. The language is Java.
Project: X++
Synthesis of Java and C++ with IDE and integrated Wiki | |
Maintainer: | Bernhard Fastenrath |
Version: | 0.0 |
Next release: | temporarily inactive |
Donation strategy: | unicef.de donations (with online certificate), 95% |
A language that combines C++, XML and Java with a simplified syntax. Releasing X++ (working title) under CSL could have the psychological effects of increasing awareness for the CSL and making CSL licensing a more natural choice. --fasten 12:30, 30 January 2009 (UTC)
- Features:
- The C++ object hierarchy is replaced with that of Java. All C++ methods are part of Java objects. C structs can be used and are accessible from Java (as in javolution)
- All objects are partitioned into aspects. This isn't exactly aspect orientation but makes large objects more easily understandable. Refactoring on aspect level will be possible.
- typedef for Java basic types (Request for enhancement was rejected by Sun).
- IDE is designed with respect to psychological effects.
- Wiki syntax (JAMWiki) for code documentation; alternative pure XML output format for templates; Java code embedded in templates (<java>...</java> for server side code and <script language="BeanShell"> for client side code) can be used to generate custom template output
- Embedded command line interpreter that can control the IDE (with external script interface).
- Argument passing with named arguments:
r = f (c=1, b=2, a=3);
can call a function wich is defined asf (a,b,c,)
. - Apache Maven project model as default.
- JDKs: Apache Harmony, GNU GCJ/Classpath, Sun JDK
- Should there be a new access type "shared" (like package access but for multiple packages)?
- Precompiler will also be available for Eclipse and as a command line tool.
- Profiler/debugger with extensible SQL database.
- Annotations can contain debugger and profiler instructions.
- Conditionally compiled debug code can control debugger and profiler from within the program.