digitalmars.D - [nomenclature] systems language
- Justin Johansson (12/12) Oct 14 2010 Touted often around here is the term "systems language".
- so (5/17) Oct 14 2010 Jokes? sure!
- Moritz Warning (2/16) Oct 14 2010 From my pov, a systems programming language has pointers. That's all.
- Justin Johansson (2/18) Oct 14 2010 And therefore candidate languages might include ... and exclude ...?
- Norbert Nemec (3/15) Oct 14 2010 A language that is adequate for systems programming.
- so (8/26) Oct 14 2010 That is too much to comprehend for some people. They think if a language...
- Paulo Pinto (6/25) Oct 14 2010 I would consider a systems programming language any language that you
- Ezneh (4/9) Oct 14 2010 I would consider that too but ... Something goes wrong with this :
- Paulo Pinto (11/20) Oct 14 2010 Why not? What about this?
- Jimmy Cao (4/34) Oct 14 2010 I think that would be too broad.
- Juanjo Alvarez (7/12) Oct 14 2010 A system language allows you to:.
- Paulo Pinto (13/23) Oct 14 2010 You just ruled out C as a systems language.
- SK (9/10) Oct 15 2010 No, C is a systems language and fits my definition.
- Paulo Pinto (16/27) Oct 16 2010 Maybe you should improve your english skills. I was being sarcastic.
- Juanjo Alvarez (4/7) Oct 16 2010 In my defense I must say that I never used a C compiler without an
- Paulo Pinto (5/12) Oct 16 2010 Visual C++ 64bit no longer supports inline assembly, but they do offer
- SK (5/6) Oct 16 2010 I ran a diagnostic on my English and guess what? It's just fine!
- Nick Sabalausky (4/16) Oct 14 2010 A language that doesn't suck at general direct hardware access (memory, ...
- sybrandy (8/20) Oct 14 2010 A systems language is a compiled language that allows you to get as
- Simen kjaeraas (13/20) Oct 14 2010 My understanding of the term:
- Simen kjaeraas (5/15) Oct 14 2010 forgot:
- so (11/13) Oct 15 2010 I asked the similar question on "What do people here use as an IDE?",
- =?UTF-8?B?IkrDqXLDtG1lIE0uIEJlcmdlciI=?= (11/19) Oct 16 2010 =2E
- so (9/22) Oct 16 2010 Not really, you got to read it again.
- Justin Johansson (3/16) Oct 16 2010 Excellent counterpoint. Could not have said it better.
- so (8/27) Oct 16 2010 No doubt.
- so (24/37) Oct 16 2010 I'll just help you, because i am so nice!
- =?UTF-8?B?IkrDqXLDtG1lIE0uIEJlcmdlciI=?= (7/26) Oct 16 2010 plonk
- so (7/28) Oct 16 2010 Wow you are hopeless, i give up.
- SK (19/24) Oct 14 2010 A fun question without a precise answer -- like the "i know it when I
- Steven Wawryk (10/22) Oct 15 2010 To me it means that it can be used for applications on platforms that
- so (6/32) Oct 15 2010 C doesn't have scope mechanism (constructor/destructor) either, though i...
- Steven Wawryk (5/45) Oct 16 2010 C does allow allocation on the stack. But of course you're right that
- dsimcha (6/8) Oct 15 2010 Why? The elimination of scope and delete just serves to uglyify the rel...
- Steven Wawryk (6/17) Oct 16 2010 Good - ugly is better than nothing. Can this be used for class members
- Denis Koroskin (3/21) Oct 16 2010 New uses gc_malloc under the hood, override it and you should be fine.
- div0 (7/19) Oct 16 2010 Something not mentioned so far:
- Andrei Alexandrescu (3/22) Oct 16 2010 Solid one!
- Paulo Pinto (9/31) Oct 16 2010 Would that make Smalltalk, Lisp, Oberon, Modula-3, Component Pascal, Ada...
- div0 (22/27) Oct 16 2010 Well true, but the main problem with a lot of those systems is that you
- Walter Bright (4/8) Oct 29 2010 I suppose it's like the difference between porn and art. It's impossible...
- Iain Buclaw (3/11) Oct 29 2010 Also known as the Elephant test: "is hard to describe, but instantly rec...
- Walter Bright (6/18) Oct 30 2010 Yeah. I think it's a waste of our time to try and define what a systems
- Don (5/28) Oct 30 2010 Did the term "systems programming language" exist before C? I mean, asm
- Walter Bright (5/9) Oct 30 2010 The first I encountered the term was the BLISS programming language. I t...
- Bruno Medeiros (12/20) Nov 09 2010 In the vast majority of cases, yes, but is it *always* easy to tell the
- Bruno Medeiros (8/20) Oct 29 2010 It's those programming languages whose type systems can be used to move
- retard (14/36) Oct 29 2010 It's probably very hard to find an accurate definition for this kind of
- Bruno Medeiros (5/41) Nov 09 2010 Why this serious reply? Perhaps I fell victim to an overly accurate
Touted often around here is the term "systems language". May we please discuss a definition to be agreed upon for the usage this term (at least in this community) and also have some agreed upon examples of PLs that might also be members of the "set of systems languages". Given a general subjective term like this, one would have to suspect that the D PL is not the only member of this set. Cheers Justin Johansson PS. my apologies for posting a lame joke recently; certainly it was not meant to be disparaging towards the D PL and hopefully it was not taken this way.
Oct 14 2010
Jokes? sure! System language is a language you can "actually" write "code" with it. On Thu, 14 Oct 2010 15:30:02 +0300, Justin Johansson <no spam.com> wrote:Touted often around here is the term "systems language". May we please discuss a definition to be agreed upon for the usage this term (at least in this community) and also have some agreed upon examples of PLs that might also be members of the "set of systems languages". Given a general subjective term like this, one would have to suspect that the D PL is not the only member of this set. Cheers Justin Johansson PS. my apologies for posting a lame joke recently; certainly it was not meant to be disparaging towards the D PL and hopefully it was not taken this way.-- Using Opera's revolutionary e-mail client: http://www.opera.com/mail/
Oct 14 2010
On Thu, 14 Oct 2010 23:30:02 +1100, Justin Johansson wrote:Touted often around here is the term "systems language". May we please discuss a definition to be agreed upon for the usage this term (at least in this community) and also have some agreed upon examples of PLs that might also be members of the "set of systems languages". Given a general subjective term like this, one would have to suspect that the D PL is not the only member of this set. Cheers Justin Johansson PS. my apologies for posting a lame joke recently; certainly it was not meant to be disparaging towards the D PL and hopefully it was not taken this way.From my pov, a systems programming language has pointers. That's all.
Oct 14 2010
On 14/10/2010 11:48 PM, Moritz Warning wrote:On Thu, 14 Oct 2010 23:30:02 +1100, Justin Johansson wrote:And therefore candidate languages might include ... and exclude ...?Touted often around here is the term "systems language". May we please discuss a definition to be agreed upon for the usage this term (at least in this community) and also have some agreed upon examples of PLs that might also be members of the "set of systems languages". Given a general subjective term like this, one would have to suspect that the D PL is not the only member of this set. Cheers Justin Johansson PS. my apologies for posting a lame joke recently; certainly it was not meant to be disparaging towards the D PL and hopefully it was not taken this way.From my pov, a systems programming language has pointers. That's all.
Oct 14 2010
A language that is adequate for systems programming. This leaves "adequate" and "systems programming" for definition... On 10/14/2010 02:30 PM, Justin Johansson wrote:Touted often around here is the term "systems language". May we please discuss a definition to be agreed upon for the usage this term (at least in this community) and also have some agreed upon examples of PLs that might also be members of the "set of systems languages". Given a general subjective term like this, one would have to suspect that the D PL is not the only member of this set. Cheers Justin Johansson PS. my apologies for posting a lame joke recently; certainly it was not meant to be disparaging towards the D PL and hopefully it was not taken this way.
Oct 14 2010
That is too much to comprehend for some people. They think if a language is "able" to do something it doesn't matter how many million lines or knowledge to do that simple thing, and you can simply put "able to do certain stuff" in that languages feature list. On Thu, 14 Oct 2010 16:08:06 +0300, Norbert Nemec <Norbert nemec-online.de> wrote:A language that is adequate for systems programming. This leaves "adequate" and "systems programming" for definition... On 10/14/2010 02:30 PM, Justin Johansson wrote:-- Using Opera's revolutionary e-mail client: http://www.opera.com/mail/Touted often around here is the term "systems language". May we please discuss a definition to be agreed upon for the usage this term (at least in this community) and also have some agreed upon examples of PLs that might also be members of the "set of systems languages". Given a general subjective term like this, one would have to suspect that the D PL is not the only member of this set. Cheers Justin Johansson PS. my apologies for posting a lame joke recently; certainly it was not meant to be disparaging towards the D PL and hopefully it was not taken this way.
Oct 14 2010
I would consider a systems programming language any language that you can use to build operating systems, even if a little help of assembly language is required. "Norbert Nemec" <Norbert Nemec-online.de> wrote in message news:i96vcl$11oi$1 digitalmars.com...A language that is adequate for systems programming. This leaves "adequate" and "systems programming" for definition... On 10/14/2010 02:30 PM, Justin Johansson wrote:Touted often around here is the term "systems language". May we please discuss a definition to be agreed upon for the usage this term (at least in this community) and also have some agreed upon examples of PLs that might also be members of the "set of systems languages". Given a general subjective term like this, one would have to suspect that the D PL is not the only member of this set. Cheers Justin Johansson PS. my apologies for posting a lame joke recently; certainly it was not meant to be disparaging towards the D PL and hopefully it was not taken this way.
Oct 14 2010
Paulo Pinto Wrote:I would consider a systems programming language any language that you can use to build operating systems, even if a little help of assembly language is required.I would consider that too but ... Something goes wrong with this : http://www.jnode.org/ On OS in ASM and Java only (99% Java) ... But Java is not categorized as a systems programming language.
Oct 14 2010
Am 14.10.2010 18:08, schrieb Ezneh:Paulo Pinto Wrote:Why not? What about this? http://killerstuff.net/publications/device_drivers_in_java_paper_from_qnx.pdf http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.92.1892&rep=rep1&type=pdf Someone else said that any language with pointers is a systems for that matter Pascal. For me, if you can write the majority of an OS in a specific language, then you can use it for systems programming. -- PauloI would consider a systems programming language any language that you can use to build operating systems, even if a little help of assembly language is required.I would consider that too but ... Something goes wrong with this : http://www.jnode.org/ On OS in ASM and Java only (99% Java) ... But Java is not categorized as a systems programming language.
Oct 14 2010
I think that would be too broad. You can write an operating system in Python if you wanted to. http://unununium.org/ On Thu, Oct 14, 2010 at 10:57 AM, Paulo Pinto <pjmlp progtools.org> wrote:I would consider a systems programming language any language that you can use to build operating systems, even if a little help of assembly language is required. "Norbert Nemec" <Norbert Nemec-online.de> wrote in message news:i96vcl$11oi$1 digitalmars.com...A language that is adequate for systems programming. This leaves "adequate" and "systems programming" for definition... On 10/14/2010 02:30 PM, Justin Johansson wrote:Touted often around here is the term "systems language". May we please discuss a definition to be agreed upon for the usage this term (at least in this community) and also have some agreed upon examples of PLs that might also be members of the "set of systems languages". Given a general subjective term like this, one would have to suspect that the D PL is not the only member of this set. Cheers Justin Johansson PS. my apologies for posting a lame joke recently; certainly it was not meant to be disparaging towards the D PL and hopefully it was not taken this way.
Oct 14 2010
On Thu, 14 Oct 2010 23:30:02 +1100, Justin Johansson <no spam.com> wrote:Touted often around here is the term "systems language". May we please discuss a definition to be agreed upon for the usage this term (at least in this community) and also have some agreed upon examples of PLs that might also be members of the "set of systems languages".A system language allows you to:. + Use pointers + Do manual memory management + Embed assembler + Call the operating system syscalls
Oct 14 2010
You just ruled out C as a systems language. In case you are not aware the C standard does not define inline assembler. So it is possibile to have a fully conformat Ansi/ISO C compiler that does not offer inline assembly. Actually there are a few commercial C compilers that do not offer inline assembly. So given your definition C is not a systems programming language. -- Paulo "Juanjo Alvarez" <fake fakeemail.com> wrote in message news:almarsoft.5384689916443906991 news.digitalmars.com...On Thu, 14 Oct 2010 23:30:02 +1100, Justin Johansson <no spam.com> wrote:Touted often around here is the term "systems language". May we please discuss a definition to be agreed upon for the usage this term (at least in this community) and also have some agreed upon examples of PLs that might also be members of the "set of systems languages".A system language allows you to:. + Use pointers + Do manual memory management + Embed assembler + Call the operating system syscalls
Oct 14 2010
On Thu, Oct 14, 2010 at 11:39 PM, Paulo Pinto <pjmlp progtools.org> wrote:You just ruled out C as a systems language.No, C is a systems language and fits my definition. 1) C need not overlay software written in another language 2) C allows expression of essential machine independent concepts How did inline assembly become a requirement? For machine dependent code, I can just link C with assembly. But it's still easy to nitpick against C. For example, ANSI C cannot express the family of atomic operations, which one could argue are essential machine independent concepts.
Oct 15 2010
Maybe you should improve your english skills. I was being sarcastic. Next time, please read my email until the end, before hitting the reply button. One of the Juanjo's requirements for a languange to be considered a systems programming language, is for it to include support for inline assembler. I was just making a point that C fails his definition, because the inline assembler you find in most compilers is a vendor extension to the standard. No one in his perfect mind would say that C is not a systems programming language, but it fails the Juanjo's checkpoint list, hence my reply. -- Paulo "SK" <sk metrokings.com> wrote in message news:mailman.628.1287155971.858.digitalmars-d puremagic.com...On Thu, Oct 14, 2010 at 11:39 PM, Paulo Pinto <pjmlp progtools.org> wrote:You just ruled out C as a systems language.No, C is a systems language and fits my definition. 1) C need not overlay software written in another language 2) C allows expression of essential machine independent concepts How did inline assembly become a requirement? For machine dependent code, I can just link C with assembly. But it's still easy to nitpick against C. For example, ANSI C cannot express the family of atomic operations, which one could argue are essential machine independent concepts.
Oct 16 2010
On Sat, 16 Oct 2010 10:36:48 +0200, "Paulo Pinto" <pjmlp progtools.org> wrote:No one in his perfect mind would say that C is not a systems programming language, but it fails the Juanjo's checkpoint list, hence my reply.In my defense I must say that I never used a C compiler without an inline assembler.
Oct 16 2010
Visual C++ 64bit no longer supports inline assembly, but they do offer intrinsics instead http://blogs.msdn.com/b/vcblog/archive/2007/10/18/new-intrinsic-support-in-visual-studio-2008.aspx "Juanjo Alvarez" <fake fakeemail.com> wrote in message news:almarsoft.3746932674979703085 news.digitalmars.com...On Sat, 16 Oct 2010 10:36:48 +0200, "Paulo Pinto" <pjmlp progtools.org> wrote:No one in his perfect mind would say that C is not a systems programming language, but it fails the Juanjo's checkpoint list, hence my reply.In my defense I must say that I never used a C compiler without an inline assembler.
Oct 16 2010
On Sat, Oct 16, 2010 at 1:36 AM, Paulo Pinto <pjmlp progtools.org> wrote:Maybe you should improve your english skills. I was being sarcastic.I ran a diagnostic on my English and guess what? It's just fine! What's not fine is the way Gmail displays threads. At least in my configuration, it looked like you were responding to my post. So now I'm a more enlightened Gmailer.
Oct 16 2010
"Justin Johansson" <no spam.com> wrote in message news:i96t5c$af5$1 digitalmars.com...Touted often around here is the term "systems language". May we please discuss a definition to be agreed upon for the usage this term (at least in this community) and also have some agreed upon examples of PLs that might also be members of the "set of systems languages". Given a general subjective term like this, one would have to suspect that the D PL is not the only member of this set. Cheers Justin Johansson PS. my apologies for posting a lame joke recently; certainly it was not meant to be disparaging towards the D PL and hopefully it was not taken this way.A language that doesn't suck at general direct hardware access (memory, i/o, etc).
Oct 14 2010
On 10/14/2010 08:30 AM, Justin Johansson wrote:Touted often around here is the term "systems language". May we please discuss a definition to be agreed upon for the usage this term (at least in this community) and also have some agreed upon examples of PLs that might also be members of the "set of systems languages". Given a general subjective term like this, one would have to suspect that the D PL is not the only member of this set. Cheers Justin Johansson PS. my apologies for posting a lame joke recently; certainly it was not meant to be disparaging towards the D PL and hopefully it was not taken this way.A systems language is a compiled language that allows you to get as close to the metal as possible without having to resort to assembly language. Also, it should be able to run in such a manner as to not interfere with applications unless absolutely necessary. Lastly, it should have a API/ABI (Not sure which is correct) that is easy for other languages to use for system calls. Casey
Oct 14 2010
Justin Johansson <no spam.com> wrote:Touted often around here is the term "systems language". May we please discuss a definition to be agreed upon for the usage this term (at least in this community) and also have some agreed upon examples of PLs that might also be members of the "set of systems languages". Given a general subjective term like this, one would have to suspect that the D PL is not the only member of this set.My understanding of the term: - Compiles to native code - Gives direct access to low-level primitives (pointers, register-size integers, bitwise operations) - Allows pointer arithmetic - Does not stand in the way of getting low-level work done - Has a well defined ABI - Lets you do manual memory management Not sure which languages do fit this definition, except of course C, C++ and D. -- Simen
Oct 14 2010
Simen kjaeraas <simen.kjaras gmail.com> wrote:My understanding of the term: - Compiles to native codeforgot: that is close in speed to that of handwritten assembly- Gives direct access to low-level primitives (pointers, register-size integers, bitwise operations) - Allows pointer arithmetic - Does not stand in the way of getting low-level work done - Has a well defined ABI - Lets you do manual memory management Not sure which languages do fit this definition, except of course C, C++ and D.-- Simen
Oct 14 2010
I asked the similar question on "What do people here use as an IDE?", which i suppose the reason of this topic. And asked if anyone can name a language that can replace C (other than these two). they say. It looks like people here agree that all languages are system languages. Lets drop the "system" and use "all" instead, from now on :) On Fri, 15 Oct 2010 04:59:41 +0300, Simen kjaeraas <simen.kjaras gmail.com> wrote:Not sure which languages do fit this definition, except of course C, C++ and D.-- Using Opera's revolutionary e-mail client: http://www.opera.com/mail/
Oct 15 2010
so wrote:I asked the similar question on "What do people here use as an IDE?", which i suppose the reason of this topic. And asked if anyone can name =alanguage that can replace C (other than these two). =20they say. It looks like people here agree that all languages are system languages==2E=20No, you got these answers when you asked for a list of "powerful languages". A language may be "powerful" without being a systems language. Jerome --=20 mailto:jeberger free.fr http://jeberger.free.fr Jabber: jeberger jabber.fr
Oct 16 2010
Not really, you got to read it again. On Sat, 16 Oct 2010 13:02:17 +0300, J=E9r=F4me M. Berger <jeberger free.= fr> = wrote:so wrote:I asked the similar question on "What do people here use as an IDE?",=e awhich i suppose the reason of this topic. And asked if anyone can nam=relanguage that can replace C (other than these two).es.they say. It looks like people here agree that all languages are system languag=-- = Using Opera's revolutionary e-mail client: http://www.opera.com/mail/No, you got these answers when you asked for a list of "powerful languages". A language may be "powerful" without being a systems language. Jerome
Oct 16 2010
On 16/10/2010 9:02 PM, "Jérôme M. Berger" wrote:so wrote:Excellent counterpoint. Could not have said it better. JustinI asked the similar question on "What do people here use as an IDE?", which i suppose the reason of this topic. And asked if anyone can name a language that can replace C (other than these two). they say. It looks like people here agree that all languages are system languages.No, you got these answers when you asked for a list of "powerful languages". A language may be "powerful" without being a systems language. Jerome
Oct 16 2010
No doubt. On Sat, 16 Oct 2010 14:11:12 +0300, Justin Johansson <no spam.com> wrote= :On 16/10/2010 9:02 PM, "J=E9r=F4me M. Berger" wrote:,so wrote:I asked the similar question on "What do people here use as an IDE?"=me =which i suppose the reason of this topic. And asked if anyone can na=orea language that can replace C (other than these two).they say. It looks like people here agree that all languages are system =-- = Using Opera's revolutionary e-mail client: http://www.opera.com/mail/Excellent counterpoint. Could not have said it better. Justinlanguages.No, you got these answers when you asked for a list of "powerful languages". A language may be "powerful" without being a systems language. Jerome
Oct 16 2010
I'll just help you, because i am so nice! If you go read you will see i asked the question "Name one?" quoting "If= = it wasn't for C++, there are plenty of other powerfull languages out = there." We are good so far? I hope yes! You see that little sentence which is almost the first half of quote? "I= f = it wasn't for C++"? I hope you do... Now someone with a little reading comprehension (i suppose i do have som= e) = would interpret that line like "Powerfull languages that could replace = C++". So i did and asked if he could name one, it wasn't hard no? Come on, you can do better than this... Sorry if i am being harsh. On Sat, 16 Oct 2010 13:02:17 +0300, J=E9r=F4me M. Berger <jeberger free.= fr> = wrote:so wrote:I asked the similar question on "What do people here use as an IDE?",=e awhich i suppose the reason of this topic. And asked if anyone can nam=relanguage that can replace C (other than these two).es.they say. It looks like people here agree that all languages are system languag=-- = Using Opera's revolutionary e-mail client: http://www.opera.com/mail/No, you got these answers when you asked for a list of "powerful languages". A language may be "powerful" without being a systems language. Jerome
Oct 16 2010
so wrote:I'll just help you, because i am so nice! =20 If you go read you will see i asked the question "Name one?" quoting "I=fit wasn't for C++, there are plenty of other powerfull languages out there." =20 We are good so far? I hope yes! You see that little sentence which is almost the first half of quote? "If it wasn't for C++"? I hope you do... =20 Now someone with a little reading comprehension (i suppose i do have some) would interpret that line like "Powerfull languages that could replace C++". =20 So i did and asked if he could name one, it wasn't hard no? Come on, you can do better than this... =20 Sorry if i am being harsh. =20plonk --=20 mailto:jeberger free.fr http://jeberger.free.fr Jabber: jeberger jabber.fr
Oct 16 2010
Wow you are hopeless, i give up. On Sat, 16 Oct 2010 15:48:17 +0300, J=E9r=F4me M. Berger <jeberger free.= fr> = wrote:so wrote:"IfI'll just help you, because i am so nice! If you go read you will see i asked the question "Name one?" quoting =it wasn't for C++, there are plenty of other powerfull languages out there." We are good so far? I hope yes! You see that little sentence which is almost the first half of quote?=-- = Using Opera's revolutionary e-mail client: http://www.opera.com/mail/"If it wasn't for C++"? I hope you do... Now someone with a little reading comprehension (i suppose i do have some) would interpret that line like "Powerfull languages that could replace C++". So i did and asked if he could name one, it wasn't hard no? Come on, you can do better than this... Sorry if i am being harsh.plonk
Oct 16 2010
On Thu, Oct 14, 2010 at 5:30 AM, Justin Johansson <no spam.com> wrote:Touted often around here is the term "systems language". May we please discuss a definition to be agreed upon for the usage this term (at least in this community) and also have some agreed upon examples of PLs that might also be members of the "set of systems languages".A fun question without a precise answer -- like the "i know it when I see it" definition of obscenity. IMO, a systems language has two key characteristics: 1) A systems language expresses software that does not overlay software written in another language. "Overlay" includes running over interpreters and/or kernels. 2) A systems language allows machine independent concepts to be expressed in the language. This means I can't call my flimsy language a systems language by falling back on assembly to fill conceptual gaps that recur on every platform. It also rules out assembly itself as a systems language. When a concept is machine dependent, e.g. "read the x86 time stamp counter register", then assembly is perfectly permissible. Some on this list have opined that D is not aiming at operating system software, so maybe D is an "aspiring" systems language for the time being. Regards, -steve
Oct 14 2010
To me it means that it can be used for applications on platforms that provide no operating system support, for example tightly embedded applications or writing an operating system. This implies that the language run-time (or at least the parts of it that need operating system support) is unavailable, so as much hardware interfacing and resource management as are needed by the application need to be written for the purpose. C and C++ qualify. I'm new to D and still learning about it, but with the deprecation of scoped classes and delete, I'm not sure that D qualifies. On 14/10/10 23:00, Justin Johansson wrote:Touted often around here is the term "systems language". May we please discuss a definition to be agreed upon for the usage this term (at least in this community) and also have some agreed upon examples of PLs that might also be members of the "set of systems languages". Given a general subjective term like this, one would have to suspect that the D PL is not the only member of this set. Cheers Justin Johansson PS. my apologies for posting a lame joke recently; certainly it was not meant to be disparaging towards the D PL and hopefully it was not taken this way.
Oct 15 2010
C doesn't have scope mechanism (constructor/destructor) either, though it is a great tool. On Fri, 15 Oct 2010 12:10:05 +0300, Steven Wawryk <stevenw acres.com.au> wrote:To me it means that it can be used for applications on platforms that provide no operating system support, for example tightly embedded applications or writing an operating system. This implies that the language run-time (or at least the parts of it that need operating system support) is unavailable, so as much hardware interfacing and resource management as are needed by the application need to be written for the purpose. C and C++ qualify. I'm new to D and still learning about it, but with the deprecation of scoped classes and delete, I'm not sure that D qualifies. On 14/10/10 23:00, Justin Johansson wrote:-- Using Opera's revolutionary e-mail client: http://www.opera.com/mail/Touted often around here is the term "systems language". May we please discuss a definition to be agreed upon for the usage this term (at least in this community) and also have some agreed upon examples of PLs that might also be members of the "set of systems languages". Given a general subjective term like this, one would have to suspect that the D PL is not the only member of this set. Cheers Justin Johansson PS. my apologies for posting a lame joke recently; certainly it was not meant to be disparaging towards the D PL and hopefully it was not taken this way.
Oct 15 2010
C does allow allocation on the stack. But of course you're right that it doesn't have constructors/destructors, nor classes and OO. It's interesting that device drivers for linux use a (partial) manual implementation of polymorphism and require a lot of boilerplate. so wrote:C doesn't have scope mechanism (constructor/destructor) either, though it is a great tool. On Fri, 15 Oct 2010 12:10:05 +0300, Steven Wawryk <stevenw acres.com.au> wrote:To me it means that it can be used for applications on platforms that provide no operating system support, for example tightly embedded applications or writing an operating system. This implies that the language run-time (or at least the parts of it that need operating system support) is unavailable, so as much hardware interfacing and resource management as are needed by the application need to be written for the purpose. C and C++ qualify. I'm new to D and still learning about it, but with the deprecation of scoped classes and delete, I'm not sure that D qualifies. On 14/10/10 23:00, Justin Johansson wrote:--Using Opera's revolutionary e-mail client: http://www.opera.com/mail/Touted often around here is the term "systems language". May we please discuss a definition to be agreed upon for the usage this term (at least in this community) and also have some agreed upon examples of PLs that might also be members of the "set of systems languages". Given a general subjective term like this, one would have to suspect that the D PL is not the only member of this set. Cheers Justin Johansson PS. my apologies for posting a lame joke recently; certainly it was not meant to be disparaging towards the D PL and hopefully it was not taken this way.
Oct 16 2010
== Quote from Steven Wawryk (stevenw acres.com.au)'s articleC and C++ qualify. I'm new to D and still learning about it, but with the deprecation of scoped classes and delete, I'm not sure that D qualifies.Why? The elimination of scope and delete just serves to uglyify the relevant concepts (which are unsafe and infrequently used) and save keywords. The concepts can still be expressed: scope T -> std.typecons.scoped!T delete foo -> foo.__dtor(); GC.free(cast(void*) foo);
Oct 15 2010
dsimcha wrote:== Quote from Steven Wawryk (stevenw acres.com.au)'s articleGood - ugly is better than nothing. Can this be used for class members of struct's too?C and C++ qualify. I'm new to D and still learning about it, but with the deprecation of scoped classes and delete, I'm not sure that D qualifies.Why? The elimination of scope and delete just serves to uglyify the relevant concepts (which are unsafe and infrequently used) and save keywords. The concepts can still be expressed: scope T -> std.typecons.scoped!Tdelete foo -> foo.__dtor(); GC.free(cast(void*) foo);If I wrote my own minimal run-time with no garbage collector I guess GC.free would be replaced by my own memory manager's free function. Does D allow me to hook my own allocation function into new?
Oct 16 2010
On Sun, 17 Oct 2010 07:22:46 +0400, Steven Wawryk <stevenw acres.com.au> wrote:dsimcha wrote:New uses gc_malloc under the hood, override it and you should be fine.== Quote from Steven Wawryk (stevenw acres.com.au)'s articleGood - ugly is better than nothing. Can this be used for class members of struct's too?C and C++ qualify. I'm new to D and still learning about it, but with the deprecation of scoped classes and delete, I'm not sure that D qualifies.Why? The elimination of scope and delete just serves to uglyify the relevant concepts (which are unsafe and infrequently used) and save keywords. The concepts can still be expressed: scope T -> std.typecons.scoped!Tdelete foo -> foo.__dtor(); GC.free(cast(void*) foo);If I wrote my own minimal run-time with no garbage collector I guess GC.free would be replaced by my own memory manager's free function. Does D allow me to hook my own allocation function into new?
Oct 16 2010
On 14/10/2010 13:30, Justin Johansson wrote:Touted often around here is the term "systems language". May we please discuss a definition to be agreed upon for the usage this term (at least in this community) and also have some agreed upon examples of PLs that might also be members of the "set of systems languages". Given a general subjective term like this, one would have to suspect that the D PL is not the only member of this set. Cheers Justin Johansson PS. my apologies for posting a lame joke recently; certainly it was not meant to be disparaging towards the D PL and hopefully it was not taken this way.Something not mentioned so far: The language must be self hostable; i.e. you need to be able to write it's runtime in the language itself. -- My enormous talent is exceeded only by my outrageous laziness. http://www.ssTk.co.uk
Oct 16 2010
On 10/16/10 6:39 CDT, div0 wrote:On 14/10/2010 13:30, Justin Johansson wrote:Solid one! AndreiTouted often around here is the term "systems language". May we please discuss a definition to be agreed upon for the usage this term (at least in this community) and also have some agreed upon examples of PLs that might also be members of the "set of systems languages". Given a general subjective term like this, one would have to suspect that the D PL is not the only member of this set. Cheers Justin Johansson PS. my apologies for posting a lame joke recently; certainly it was not meant to be disparaging towards the D PL and hopefully it was not taken this way.Something not mentioned so far: The language must be self hostable; i.e. you need to be able to write it's runtime in the language itself.
Oct 16 2010
Would that make Smalltalk, Lisp, Oberon, Modula-3, Component Pascal, Ada, Mac Pascal system programming languages? All of them were used to write operating systems, in some of them the operating system and language are the same, kind of. -- paulo "div0" <div0 sourceforge.net> wrote in message news:i9c2ue$30f1$1 digitalmars.com...On 14/10/2010 13:30, Justin Johansson wrote:Touted often around here is the term "systems language". May we please discuss a definition to be agreed upon for the usage this term (at least in this community) and also have some agreed upon examples of PLs that might also be members of the "set of systems languages". Given a general subjective term like this, one would have to suspect that the D PL is not the only member of this set. Cheers Justin Johansson PS. my apologies for posting a lame joke recently; certainly it was not meant to be disparaging towards the D PL and hopefully it was not taken this way.Something not mentioned so far: The language must be self hostable; i.e. you need to be able to write it's runtime in the language itself. -- My enormous talent is exceeded only by my outrageous laziness. http://www.ssTk.co.uk
Oct 16 2010
On 16/10/2010 19:27, Paulo Pinto wrote:Would that make Smalltalk, Lisp, Oberon, Modula-3, Component Pascal, Ada, Mac Pascal system programming languages? All of them were used to write operating systems, in some of them the operating system and language are the same, kind of.Well true, but the main problem with a lot of those systems is that you can only program on them in that language; they are all special execptions rather than general computers. They used to make h/w Lisp machines back in the late 70s, where all the OS was written in Lisp; but you could only program them in Lisp. I wonder how they did the garbage collector as Lisp doesn't have pointers? I guess they either wrote the garbage collector entierly in assembly or added a bunch of Lisp functions to allow them to manipulate the address space, effectively added pointers to the language. For C, in principle you only need a trivial amount of assembly to handle the processor specific calls to switch privilege levels and load process/thread state. For something like Java/Python you'd need a huge amount of assembly if you wanted to avoid using another lower level language. There's nothing special about a systems language; it's just they have explicit facilities that make certain low level functionality easier to implement. You could implement an OS in BASIC using PEEK/POKE if you mad enough. -- My enormous talent is exceeded only by my outrageous laziness. http://www.ssTk.co.uk
Oct 16 2010
div0 wrote:There's nothing special about a systems language; it's just they have explicit facilities that make certain low level functionality easier to implement. You could implement an OS in BASIC using PEEK/POKE if you mad enough.I suppose it's like the difference between porn and art. It's impossible to write a bureaucratic rule to distinguish them, but it's easy to tell the difference just by looking at the two. "I know it when I see it!"
Oct 29 2010
== Quote from Walter Bright (newshound2 digitalmars.com)'s articlediv0 wrote:Also known as the Elephant test: "is hard to describe, but instantly recognisable when spotted".There's nothing special about a systems language; it's just they have explicit facilities that make certain low level functionality easier to implement. You could implement an OS in BASIC using PEEK/POKE if you mad enough.I suppose it's like the difference between porn and art. It's impossible to write a bureaucratic rule to distinguish them, but it's easy to tell the difference just by looking at the two. "I know it when I see it!"
Oct 29 2010
Iain Buclaw wrote:== Quote from Walter Bright (newshound2 digitalmars.com)'s articleYeah. I think it's a waste of our time to try and define what a systems programming language is. For example, sure, you can write a gc in Java. The problem is, it is not a useful gc. Ditto for anything else "but you can do that in this non-systems language, so your rule is wrong."div0 wrote:Also known as the Elephant test: "is hard to describe, but instantly recognisable when spotted".There's nothing special about a systems language; it's just they have explicit facilities that make certain low level functionality easier to implement. You could implement an OS in BASIC using PEEK/POKE if you mad enough.I suppose it's like the difference between porn and art. It's impossible to write a bureaucratic rule to distinguish them, but it's easy to tell the difference just by looking at the two. "I know it when I see it!"
Oct 30 2010
Walter Bright wrote:Iain Buclaw wrote:Did the term "systems programming language" exist before C? I mean, asm isn't a "systems programming language", it's asm! Seems to me that it's a market segment term, which just means "competes with C".== Quote from Walter Bright (newshound2 digitalmars.com)'s articleYeah. I think it's a waste of our time to try and define what a systems programming language is. For example, sure, you can write a gc in Java. The problem is, it is not a useful gc. Ditto for anything else "but you can do that in this non-systems language, so your rule is wrong."div0 wrote:Also known as the Elephant test: "is hard to describe, but instantly recognisable when spotted".There's nothing special about a systems language; it's just they have explicit facilities that make certain low level functionality easier to implement. You could implement an OS in BASIC using PEEK/POKE if you mad enough.I suppose it's like the difference between porn and art. It's impossible to write a bureaucratic rule to distinguish them, but it's easy to tell the difference just by looking at the two. "I know it when I see it!"
Oct 30 2010
Don wrote:Did the term "systems programming language" exist before C? I mean, asm isn't a "systems programming language", it's asm! Seems to me that it's a market segment term, which just means "competes with C".The first I encountered the term was the BLISS programming language. I think it means Basic Language for Implementation of Systems Software. BLISS predates C. http://en.wikipedia.org/wiki/BLISS
Oct 30 2010
On 30/10/2010 02:13, Walter Bright wrote:div0 wrote:In the vast majority of cases, yes, but is it *always* easy to tell the difference? Because if a bureaucratic rule was to made, it would have to work for *all* cases, otherwise it would not be very useful. Consider Chloe Sevigny's blowjob scene in the end of The Brown Bunny (an art house film). Art or porno? Or the photograph "Portrait of My British Wife" by Panayiotis Lamprou: http://www.guardian.co.uk/artanddesign/2010/sep/17/panayiotis-lamprou-portr it-wife-photography which will be displayed in the National Portrait Gallery. Art or porno? -_-' -- Bruno Medeiros - Software EngineerThere's nothing special about a systems language; it's just they have explicit facilities that make certain low level functionality easier to implement. You could implement an OS in BASIC using PEEK/POKE if you mad enough.I suppose it's like the difference between porn and art. It's impossible to write a bureaucratic rule to distinguish them, but it's easy to tell the difference just by looking at the two. "I know it when I see it!"
Nov 09 2010
On 14/10/2010 13:30, Justin Johansson wrote:Touted often around here is the term "systems language". May we please discuss a definition to be agreed upon for the usage this term (at least in this community) and also have some agreed upon examples of PLs that might also be members of the "set of systems languages". Given a general subjective term like this, one would have to suspect that the D PL is not the only member of this set. Cheers Justin Johansson PS. my apologies for posting a lame joke recently; certainly it was not meant to be disparaging towards the D PL and hopefully it was not taken this way.It's those programming languages whose type systems can be used to move and navigate across water (but can sink if you rock it enough). Compare to other languages whose type systems merely floats on water, but don't move anywhere... (although some guarantee they will never sink no matter how much you rock it!) -- Bruno Medeiros - Software Engineer
Oct 29 2010
Fri, 29 Oct 2010 20:54:03 +0100, Bruno Medeiros wrote:On 14/10/2010 13:30, Justin Johansson wrote:It's probably very hard to find an accurate definition for this kind of term. The same can be said about terms such as 'functional language'. Many 'pragmatic' software engineering terms are based on emotions, broken mental models, inaccurate or purposefully wrong information. In my opinion these are all subtypes of a thing called 'marketing bullshit'.Touted often around here is the term "systems language". May we please discuss a definition to be agreed upon for the usage this term (at least in this community) and also have some agreed upon examples of PLs that might also be members of the "set of systems languages". Given a general subjective term like this, one would have to suspect that the D PL is not the only member of this set. Cheers Justin Johansson PS. my apologies for posting a lame joke recently; certainly it was not meant to be disparaging towards the D PL and hopefully it was not taken this way.It's those programming languages whose type systems can be used to move and navigate across water (but can sink if you rock it enough).Compare to other languages whose type systems merely floats on water, but don't move anywhere... (although some guarantee they will never sink no matter how much you rock it!)You can easily create a language with guarantees about safety: no segfaults, no index out of bounds errors, no overflows etc. Some of these languages even guarantee termination. However, they're not Turing complete in that case, which reduces their usefulness. Another thing is, these guarantees can be expensive. However, the trend has been towards higher level languages. One reason is Moore's law, you have achieved the same results with a N times slower implementation using the N times faster hardware.
Oct 29 2010
On 29/10/2010 21:30, retard wrote:Fri, 29 Oct 2010 20:54:03 +0100, Bruno Medeiros wrote:Why this serious reply? Perhaps I fell victim to an overly accurate analogy, but my previous post was a joke/satire. -- Bruno Medeiros - Software EngineerOn 14/10/2010 13:30, Justin Johansson wrote:It's probably very hard to find an accurate definition for this kind of term. The same can be said about terms such as 'functional language'. Many 'pragmatic' software engineering terms are based on emotions, broken mental models, inaccurate or purposefully wrong information. In my opinion these are all subtypes of a thing called 'marketing bullshit'.Touted often around here is the term "systems language". May we please discuss a definition to be agreed upon for the usage this term (at least in this community) and also have some agreed upon examples of PLs that might also be members of the "set of systems languages". Given a general subjective term like this, one would have to suspect that the D PL is not the only member of this set. Cheers Justin Johansson PS. my apologies for posting a lame joke recently; certainly it was not meant to be disparaging towards the D PL and hopefully it was not taken this way.It's those programming languages whose type systems can be used to move and navigate across water (but can sink if you rock it enough).Compare to other languages whose type systems merely floats on water, but don't move anywhere... (although some guarantee they will never sink no matter how much you rock it!)You can easily create a language with guarantees about safety: no segfaults, no index out of bounds errors, no overflows etc. Some of these languages even guarantee termination. However, they're not Turing complete in that case, which reduces their usefulness. Another thing is, these guarantees can be expensive. However, the trend has been towards higher level languages. One reason is Moore's law, you have achieved the same results with a N times slower implementation using the N times faster hardware.
Nov 09 2010