digitalmars.D.announce - New language based on D
- Dibyendu Majumdar (15/15) Nov 12 2020 I am starting a project to create a new language based on D.
- Faux Amis (4/23) Nov 12 2020 I was thinking about something similar: Basic-D, a subset of D which
- bachmeier (15/17) Nov 12 2020 I hope not. That would create lots of problems:
- Ola Fosheim =?UTF-8?B?R3LDuHN0YWQ=?= (3/8) Nov 13 2020 That is already the case though. If you only use gdc or ldc, then
- Faux Amis (7/26) Nov 18 2020 I wasn't clear before. The subset I was thinking about would only be
- Dibyendu Majumdar (13/18) Nov 13 2020 I think it is too early for that as my project is not yet
- Paul Backus (5/13) Nov 13 2020 It sounds like maybe your time would be better spent improving
- Dibyendu Majumdar (2/5) Nov 13 2020 Not really. It is a waste of time trying to do that.
- Paul Backus (8/14) Nov 13 2020 Why is it a waste of time? If I understand your proposal
- Dibyendu Majumdar (9/15) Nov 13 2020 For several reasons.
- dangbinghoo (7/21) Nov 16 2020 people want betterC, and if we can add Interface to current D's
- Dibyendu Majumdar (6/9) Nov 17 2020 Yes, right now Better C is not a match for Rust because Rust has
- jmh530 (6/31) Nov 17 2020 You might find Atila Neves's tardy [1] or Jean-Louis Leroy's open
- dangbinghoo (9/43) Nov 17 2020 it seems that tardy is more close to this topic. and open-methods
- Nick Treleaven (5/9) Nov 25 2020 Pretty sure tardy only uses an interface definition for compile
- Jack (5/20) Nov 14 2020 Where are you going to use this subset? embedded systems?
- Dibyendu Majumdar (2/3) Nov 14 2020 Indeed. Less is sometimes more.
- Dibyendu Majumdar (9/13) Nov 15 2020 Started working on docs. It will take sometime to cover
- Imperatorn (3/18) Nov 25 2020 Nice initiative
I am starting a project to create a new language based on D. The name I have chosen is Laser-D. It is supposed to be Lesser D - rather than Better C. This follows from my post about better branding for Better-C. The project will basically be about turning off certain features in D - the language will have better C option baked in. I do not intend to make any changes to D itself other than turning off features. The main effort will be update documentation that accurately reflects what works in the language. So there will be a new language reference. The project will be hosted at https://github.com/laser-d I hope to start creating content soon. Regards Dibyendu
Nov 12 2020
On 2020-11-12 16:08, Dibyendu Majumdar wrote:I am starting a project to create a new language based on D. The name I have chosen is Laser-D. It is supposed to be Lesser D - rather than Better C. This follows from my post about better branding for Better-C. The project will basically be about turning off certain features in D - the language will have better C option baked in. I do not intend to make any changes to D itself other than turning off features. The main effort will be update documentation that accurately reflects what works in the language. So there will be a new language reference. The project will be hosted at https://github.com/laser-d I hope to start creating content soon. Regards DibyenduI was thinking about something similar: Basic-D, a subset of D which would be a perfect starting language with appropriate docs and tutorials. Maybe these type of subset languages could be integrated in the D frontpage.
Nov 12 2020
On Thursday, 12 November 2020 at 15:28:44 UTC, Faux Amis wrote:Maybe these type of subset languages could be integrated in the D frontpage.I hope not. That would create lots of problems: - There are multiple versions of the language. - What happens when a version dies? What do you tell the developers (perhaps even businesses) that relied on a version they downloaded from the official homepage that now have a dead version? - What if a developer makes weird changes (like removing int, which would still be a subset) or goes Windows-only because of the burden maintaining for multiple OSes? Is that something that should be promoted on the official homepage? These are just the problems that immediately come to mind. I'm sure there are others. Open source is wonderful because it lets things like this happen. That doesn't mean we want to promote them on dlang.org.
Nov 12 2020
On Thursday, 12 November 2020 at 19:00:51 UTC, bachmeier wrote:On Thursday, 12 November 2020 at 15:28:44 UTC, Faux Amis wrote:That is already the case though. If you only use gdc or ldc, then you get access to features that wont compile with dmd.Maybe these type of subset languages could be integrated in the D frontpage.I hope not. That would create lots of problems: - There are multiple versions of the language.
Nov 13 2020
On 2020-11-12 20:00, bachmeier wrote:On Thursday, 12 November 2020 at 15:28:44 UTC, Faux Amis wrote:I wasn't clear before. The subset I was thinking about would only be supervisual; the basic-D documentation and tutorials would only touch those parts that would be part of the basic-D version. The underlying compiler would just be the normal dmd compiler, nothing changed. I thik that within D there is a nice novice language lurking, but it is hidden by all the complex parts.Maybe these type of subset languages could be integrated in the D frontpage.I hope not. That would create lots of problems: - There are multiple versions of the language. - What happens when a version dies? What do you tell the developers (perhaps even businesses) that relied on a version they downloaded from the official homepage that now have a dead version? - What if a developer makes weird changes (like removing int, which would still be a subset) or goes Windows-only because of the burden maintaining for multiple OSes? Is that something that should be promoted on the official homepage? These are just the problems that immediately come to mind. I'm sure there are others. Open source is wonderful because it lets things like this happen. That doesn't mean we want to promote them on dlang.org.
Nov 18 2020
On Thursday, 12 November 2020 at 15:28:44 UTC, Faux Amis wrote:I was thinking about something similar: Basic-D, a subset of D which would be a perfect starting language with appropriate docs and tutorials. Maybe these type of subset languages could be integrated in the D frontpage.I think it is too early for that as my project is not yet started, and it may not have any traction. I believe that if I can create solid documentation then it might make a difference but we will see. Fortunately or not - I have limited time - so I won't be making changes to D other than very simple patches to switch off some things. I simply cannot afford to spend time on maintaining a different code base. My main focus will be to create documentation. I can probably do one thing - guarantee that the new language is a proper subset of D and that any code in laser-D is guaranteed to build with dmd, ldc, gdc.
Nov 13 2020
On Friday, 13 November 2020 at 12:25:48 UTC, Dibyendu Majumdar wrote:Fortunately or not - I have limited time - so I won't be making changes to D other than very simple patches to switch off some things. I simply cannot afford to spend time on maintaining a different code base. My main focus will be to create documentation. I can probably do one thing - guarantee that the new language is a proper subset of D and that any code in laser-D is guaranteed to build with dmd, ldc, gdc.It sounds like maybe your time would be better spent improving the official D documentation to say which features and libraries are compatible with betterC and which are not.
Nov 13 2020
On Friday, 13 November 2020 at 13:41:50 UTC, Paul Backus wrote:It sounds like maybe your time would be better spent improving the official D documentation to say which features and libraries are compatible with betterC and which are not.Not really. It is a waste of time trying to do that.
Nov 13 2020
On Friday, 13 November 2020 at 15:22:03 UTC, Dibyendu Majumdar wrote:On Friday, 13 November 2020 at 13:41:50 UTC, Paul Backus wrote:Why is it a waste of time? If I understand your proposal correctly, you will be doing more or less the same work either way--that is, figuring out which features and libraries still work with certain language features disabled. The only difference is whether you write up your results in a separate document, or incorporate them into the official documentation.It sounds like maybe your time would be better spent improving the official D documentation to say which features and libraries are compatible with betterC and which are not.Not really. It is a waste of time trying to do that.
Nov 13 2020
On Friday, 13 November 2020 at 16:18:32 UTC, Paul Backus wrote:Why is it a waste of time? If I understand your proposal correctly, you will be doing more or less the same work either way--that is, figuring out which features and libraries still work with certain language features disabled. The only difference is whether you write up your results in a separate document, or incorporate them into the official documentation.For several reasons. My goal is to create good docs without being constrained by existing docs (I will of course reuse what I can). I have little time so I need to make most efficient use of it - and not get bogged down by discussions, arguments, process. I think it is almost certain that Laser-D docs will not fit into the D docs model. Because my goal is make Laser-D attractive, and that means stripping out anything that will not work in Laser-D.
Nov 13 2020
On Friday, 13 November 2020 at 12:25:48 UTC, Dibyendu Majumdar wrote:On Thursday, 12 November 2020 at 15:28:44 UTC, Faux Amis wrote:people want betterC, and if we can add Interface to current D's (betterC) struct (which works like Rust's trait), it would be more attractive! ^_^ ---- binghoo dang[...]I think it is too early for that as my project is not yet started, and it may not have any traction. I believe that if I can create solid documentation then it might make a difference but we will see. Fortunately or not - I have limited time - so I won't be making changes to D other than very simple patches to switch off some things. I simply cannot afford to spend time on maintaining a different code base. My main focus will be to create documentation. I can probably do one thing - guarantee that the new language is a proper subset of D and that any code in laser-D is guaranteed to build with dmd, ldc, gdc.
Nov 16 2020
On Tuesday, 17 November 2020 at 05:50:27 UTC, dangbinghoo wrote:people want betterC, and if we can add Interface to current D's (betterC) struct (which works like Rust's trait), it would be more attractive! ^_^Yes, right now Better C is not a match for Rust because Rust has traits and algebraic types which are really important ways to improve on C. I am not sure if I will be able to solve this as I do not want to make changes that would be incompatible with D.
Nov 17 2020
On Tuesday, 17 November 2020 at 05:50:27 UTC, dangbinghoo wrote:On Friday, 13 November 2020 at 12:25:48 UTC, Dibyendu Majumdar wrote:You might find Atila Neves's tardy [1] or Jean-Louis Leroy's open methods [2] libraries interesting. I don't know if they work with betterC though. [1] https://github.com/atilaneves/tardy [2] https://github.com/jll63/openmethods.dOn Thursday, 12 November 2020 at 15:28:44 UTC, Faux Amis wrote:people want betterC, and if we can add Interface to current D's (betterC) struct (which works like Rust's trait), it would be more attractive! ^_^ ---- binghoo dang[...]I think it is too early for that as my project is not yet started, and it may not have any traction. I believe that if I can create solid documentation then it might make a difference but we will see. Fortunately or not - I have limited time - so I won't be making changes to D other than very simple patches to switch off some things. I simply cannot afford to spend time on maintaining a different code base. My main focus will be to create documentation. I can probably do one thing - guarantee that the new language is a proper subset of D and that any code in laser-D is guaranteed to build with dmd, ldc, gdc.
Nov 17 2020
On Tuesday, 17 November 2020 at 13:12:04 UTC, jmh530 wrote:On Tuesday, 17 November 2020 at 05:50:27 UTC, dangbinghoo wrote:it seems that tardy is more close to this topic. and open-methods is dispatching system for 'Normal D'. and both of them uses keyword `interface`, and "Interfaces describe a list of functions that a class that inherits from the interface must implement". shows these may not work with betterC. thanks! ---- binghoo dangOn Friday, 13 November 2020 at 12:25:48 UTC, Dibyendu Majumdar wrote:You might find Atila Neves's tardy [1] or Jean-Louis Leroy's open methods [2] libraries interesting. I don't know if they work with betterC though. [1] https://github.com/atilaneves/tardy [2] https://github.com/jll63/openmethods.dOn Thursday, 12 November 2020 at 15:28:44 UTC, Faux Amis wrote:people want betterC, and if we can add Interface to current D's (betterC) struct (which works like Rust's trait), it would be more attractive! ^_^ ---- binghoo dang[...]I think it is too early for that as my project is not yet started, and it may not have any traction. I believe that if I can create solid documentation then it might make a difference but we will see. Fortunately or not - I have limited time - so I won't be making changes to D other than very simple patches to switch off some things. I simply cannot afford to spend time on maintaining a different code base. My main focus will be to create documentation. I can probably do one thing - guarantee that the new language is a proper subset of D and that any code in laser-D is guaranteed to build with dmd, ldc, gdc.
Nov 17 2020
On Wednesday, 18 November 2020 at 00:58:40 UTC, dangbinghoo wrote:both of them uses keyword `interface`, and "Interfaces describe a list of functions that a class that inherits from the interface must implement". shows these may not work with betterC.Pretty sure tardy only uses an interface definition for compile time introspection (probably the same goes for open-methods). The instance of Polymorphic doesn't convert to any interface type or Object.
Nov 25 2020
On Thursday, 12 November 2020 at 15:08:55 UTC, Dibyendu Majumdar wrote:I am starting a project to create a new language based on D. The name I have chosen is Laser-D. It is supposed to be Lesser D - rather than Better C. This follows from my post about better branding for Better-C. The project will basically be about turning off certain features in D - the language will have better C option baked in. I do not intend to make any changes to D itself other than turning off features. The main effort will be update documentation that accurately reflects what works in the language. So there will be a new language reference. The project will be hosted at https://github.com/laser-d I hope to start creating content soon. Regards DibyenduWhere are you going to use this subset? embedded systems? desktop? are you going to cut features only not change anything else?
Nov 14 2020
On Saturday, 14 November 2020 at 16:03:31 UTC, Jack wrote:are you going to cut features only not change anything else?Indeed. Less is sometimes more.
Nov 14 2020
On Thursday, 12 November 2020 at 15:08:55 UTC, Dibyendu Majumdar wrote:I am starting a project to create a new language based on D. The name I have chosen is Laser-D. It is supposed to be Lesser D - rather than Better C. This follows from my post about better branding for Better-C.Started working on docs. It will take sometime to cover everything I need to cover, but in the meantime if anyone cares to provide feedback that would be very welcome! https://laser-d.github.io/ Sources are at: https://github.com/laser-d/laser-d-docs/edit/main/src/laser-d.rst It is being written in reStructuredText.
Nov 15 2020
On Sunday, 15 November 2020 at 18:22:06 UTC, Dibyendu Majumdar wrote:On Thursday, 12 November 2020 at 15:08:55 UTC, Dibyendu Majumdar wrote:Nice initiativeI am starting a project to create a new language based on D. The name I have chosen is Laser-D. It is supposed to be Lesser D - rather than Better C. This follows from my post about better branding for Better-C.Started working on docs. It will take sometime to cover everything I need to cover, but in the meantime if anyone cares to provide feedback that would be very welcome! https://laser-d.github.io/ Sources are at: https://github.com/laser-d/laser-d-docs/edit/main/src/laser-d.rst It is being written in reStructuredText.
Nov 25 2020