• Javascript for dummies like me

    From Sys64738@VERT/TXNET1 to All on Sunday, December 05, 2021 18:45:15
    I'm not new to programming. However, my skill set is rather dated (think "pre-internet").

    Can anyone recommend any Javascript tutorials that are non-HTML and/or non-CSS driven? More to the point, Javascript tutorials that are drive for text output such as with BBS (not the web version)?

    Everything I come across on the net seems to all be tailored for an HTML end result.

    Any advice will be greatly appreciated.

    SYS64738

    ---
    þ Synchronet þ TEXNet
  • From Digital Man@VERT to Sys64738 on Sunday, December 05, 2021 18:53:30
    Re: Javascript for dummies like me
    By: Sys64738 to All on Sun Dec 05 2021 06:45 pm

    I'm not new to programming. However, my skill set is rather dated (think "pre-internet").

    Can anyone recommend any Javascript tutorials that are non-HTML and/or non-CSS driven? More to the point, Javascript tutorials that are drive for text output such as with BBS (not the web version)?

    Everything I come across on the net seems to all be tailored for an HTML end result.

    Any advice will be greatly appreciated.

    You're interested in "core JavaScript", https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference

    And anything that is "text output such as with the BBS" is going to be defined in the Synchronet object model:
    https://synchro.net/docs/jsobjs.html

    You may find some base JavaScript tutorials that use console.log() to output text and you could just replace those calls with print() when using Synchronet.
    --
    digital man (rob)

    Synchronet/BBS Terminology Definition #69:
    SEXYZ = Synchronet External X/Y/ZMODEM file transfer protocol driver
    Norco, CA WX: 58.6øF, 72.0% humidity, 1 mph E wind, 0.00 inches rain/24hrs
    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From echicken@VERT/ECBBS to Sys64738 on Monday, December 06, 2021 04:47:53
    Re: Javascript for dummies like me
    By: Sys64738 to All on Sun Dec 05 2021 18:45:15

    Can anyone recommend any Javascript tutorials that are non-HTML and/or non-CSS driven? More to the point, Javascript tutorials that are drive for text output such as with BBS (not the web version)?

    The MDN site that DM mentioned is a great reference, but bear in mind that not everything you see there will work in Synchronet. Our JS engine is a bit out of date, and some new features have been added to the language in the meantime.

    MDN is not what I would call a tutorial, although you will find some sample scripts in many of the articles.

    Everything I come across on the net seems to all be tailored for an HTML end result.

    Most JS tutorial content you find will focus on scripts running in a web browser, under node.js, or as part of a particular framework running on one or both of the above. It may be difficult for you to tell what's "core" JS and what's particular to the environment the tutorial is about.

    We have the "core" JS stuff from about 10 years ago, and some custom things on top of that:

    https://synchro.net/docs/jsobjs.html

    I could go on, but the best thing you can do is dive in, refer to the heaps of JS that are included with Synchronet for examples, and ask questions when you get stuck. Find me on IRC if you want to chat; I have an unfortunate amount of knowledge on this subject.

    ---
    echicken
    electronic chicken bbs - bbs.electronicchicken.com
    ---
    þ Synchronet þ electronic chicken bbs - bbs.electronicchicken.com
  • From Sys64738@VERT/TXNET1 to Digital Man on Monday, December 06, 2021 07:54:31
    Re: Javascript for dummies like me
    By: Digital Man to Sys64738 on Sun Dec 05 2021 18:53:30

    You're interested in "core JavaScript", https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference

    And anything that is "text output such as with the BBS" is going to be defined in the Synchronet object model:
    https://synchro.net/docs/jsobjs.html

    You may find some base JavaScript tutorials that use console.log() to output text and you could just replace those calls with print() when using Synchronet. --

    Awesome. I'll check those out. Thanks, Rob.
    SYS64738

    ---
    þ Synchronet þ TEXNet
  • From Sys64738@VERT/TXNET1 to echicken on Monday, December 06, 2021 08:02:23
    Re: Javascript for dummies like me
    By: echicken to Sys64738 on Mon Dec 06 2021 04:47:53

    MDN is not what I would call a tutorial, although you will find some sample scripts in many of the articles.

    In this instance, I think I'd probably learn faster with sample scripts instead of full-on beginner tutorials. When I see the commands and their functions in the sample scripts, I'll be able to relate that to my past "dated" knowledge. Sure, it won't be spot-on accurate, but at least it will give me a starting point and I can troubleshoot from there.

    Most JS tutorial content you find will focus on scripts running in a web browser, under node.js, or as part of a particular framework running on one or both of the above. It may be difficult for you to tell what's "core" JS and what's particular to the environment the tutorial is about.

    That's understandable since Javascript was original purpose was intended to be used in conjunction with HTML.

    We have the "core" JS stuff from about 10 years ago, and some custom things on top of that:

    https://synchro.net/docs/jsobjs.html

    I'll check that out as well.

    I could go on, but the best thing you can do is dive in, refer to the heaps of JS that are included with Synchronet for examples, and ask questions when you get stuck. Find me on IRC if you want to chat; I have an unfortunate amount of knowledge on this subject.

    Will do. Thanks for the info!
    SYS64738

    ---
    þ Synchronet þ TEXNet
  • From echicken@VERT/ECBBS to Sys64738 on Monday, December 06, 2021 15:41:31
    Re: Javascript for dummies like me
    By: Sys64738 to echicken on Mon Dec 06 2021 08:02:23

    "dated" knowledge. Sure, it won't be spot-on accurate, but at least it will give me a starting point and I can troubleshoot from there.

    The inaccuracy here is going to be stuff like:

    const num = n => Promise.resolve(n);

    function addNums([a, b]) {
    return a + b;
    }

    async function three() {
    let a = await num(1);
    let b = await num(2);
    let c = addNums([a, b]);
    console.log(c);
    }

    three();


    Admittedly this is a stupid example, but it would work in eg. a modern browser but not in our environment. We don't have Promises, we don't have 'async', 'await', 'let', array destructure, or 'console.log', and if memory serves even our 'const' behaves a bit differently than today's.

    That's understandable since Javascript was original purpose was intended to be used in conjunction with HTML.

    Though to be clear, JS is just a language and there's nothing inherently web-browserey about it. You'll see mention out there that JS is "event driven" and "asynchronous by nature" and this isn't strictly true. All of it comes down to the implementation. Just be mindful that most of what's written about JS is written with browsers or node.js in mind, by people who never needed to look beyond that space.

    ---
    echicken
    electronic chicken bbs - bbs.electronicchicken.com
    ---
    þ Synchronet þ electronic chicken bbs - bbs.electronicchicken.com
  • From Sys64738@VERT/TXNET1 to echicken on Monday, December 06, 2021 18:05:26
    Re: Javascript for dummies like me
    By: echicken to Sys64738 on Mon Dec 06 2021 15:41:31

    Though to be clear, JS is just a language and there's nothing inherently web-browserey about it. You'll see mention out there that JS is "event driven" and "asynchronous by nature" and this isn't strictly true.

    THAT has become glaringly apparent to me from everything I found while searching.

    Just be mindful that most of what's written about JS is written with > browsers or node.js in mind, by people who never needed to look beyond
    that space.

    I think you understand exactly what I'm getting at. It's the JavaScript info that is HTML/CSS-centric that I'm trying to weed my way through.

    SYS64738

    ---
    þ Synchronet þ TEXNet
  • From Digital Man@VERT to Sys64738 on Monday, December 06, 2021 17:08:05
    Re: Javascript for dummies like me
    By: Sys64738 to echicken on Mon Dec 06 2021 06:05 pm

    I think you understand exactly what I'm getting at. It's the JavaScript info that is HTML/CSS-centric that I'm trying to weed my way through.

    ... or Node.JS, which is often *not* HTML/CSS-centric.
    --
    digital man (rob)

    Synchronet "Real Fact" #121:
    Synchronet v2.20a for DOS was released on Aug 31, 1995 (5 months after v2.11a) Norco, CA WX: 58.7øF, 81.0% humidity, 0 mph E wind, 0.00 inches rain/24hrs
    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Sys64738@VERT/TXNET1 to Digital Man on Monday, December 06, 2021 20:54:39
    Re: Javascript for dummies like me
    By: Digital Man to Sys64738 on Mon Dec 06 2021 17:08:05

    I think you understand exactly what I'm getting at. It's the JavaScript info that is HTML/CSS-centric that I'm trying to weed my way through.

    ... or Node.JS, which is often *not* HTML/CSS-centric.

    Exactly.

    Is there a particular script editor that you guys recommend for writing Javascipt that works best for this purpose? I've been using Visual Code Studio, but it doesn't seem to recognize "console.print" or "prompt" for some reason.

    Sorry for all the newbie questions.
    SYS64738

    ---
    þ Synchronet þ TEXNet
  • From echicken@VERT/ECBBS to Sys64738 on Tuesday, December 07, 2021 04:10:20
    Re: Javascript for dummies like me
    By: Sys64738 to echicken on Mon Dec 06 2021 18:05:26

    I think you understand exactly what I'm getting at. It's the JavaScript info that is HTML/CSS-centric that I'm trying to weed my way through.

    Hate to say it, but you just have to power through it. You'll eventually get a feel for what information is portable and what is tied to a certain domain.

    It was like this 10+ years ago when I started learning JS. It's only gotten "worse" since then, considering how the language has proliferated.

    Somehow I managed to learn JS for Synchronet first. It was two or three years before I started using it elsewhere (browsers, node.js).

    ---
    echicken
    electronic chicken bbs - bbs.electronicchicken.com
    ---
    þ Synchronet þ electronic chicken bbs - bbs.electronicchicken.com
  • From echicken@VERT/ECBBS to Sys64738 on Tuesday, December 07, 2021 04:16:48
    Re: Javascript for dummies like me
    By: Sys64738 to Digital Man on Mon Dec 06 2021 20:54:39

    Is there a particular script editor that you guys recommend for writing Javascipt that works best for this purpose? I've been using Visual Code Studio, but it doesn't seem to recognize "console.print" or "prompt" for some reason.

    I use Visual Studio Code, and I just accept that its language features aren't always going to be accurate. I refer to jsobjs.html when I need to know what parameters a function requires, or what it will return, rather than trust the hints that come up in VS Code.

    ---
    echicken
    electronic chicken bbs - bbs.electronicchicken.com
    ---
    þ Synchronet þ electronic chicken bbs - bbs.electronicchicken.com
  • From Digital Man@VERT to Sys64738 on Monday, December 06, 2021 21:02:33
    Re: Javascript for dummies like me
    By: Sys64738 to Digital Man on Mon Dec 06 2021 08:54 pm

    I think you understand exactly what I'm getting at. It's the JavaScript info that is HTML/CSS-centric that I'm trying to weed my way through.

    ... or Node.JS, which is often *not* HTML/CSS-centric.

    Exactly.

    Is there a particular script editor that you guys recommend for writing Javascipt that works best for this purpose? I've been using Visual Code Studio, but it doesn't seem to recognize "console.print" or "prompt" for some reason.

    I use notepad++ on Windows and vim or geany on Linux. The editor doesn't have to recognize an object/method/property for you to use it.

    Sorry for all the newbie questions.

    No problem.
    --
    digital man (rob)

    Synchronet/BBS Terminology Definition #27:
    DTE = Data Terminal Equipment
    Norco, CA WX: 53.1øF, 94.0% humidity, 0 mph S wind, 0.00 inches rain/24hrs
    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Nelgin@VERT/EOTLBBS to All on Monday, December 06, 2021 23:53:51
    On Tue, 7 Dec 2021 04:10:20 -0500
    "echicken" <echicken@VERT/ECBBS> wrote:

    Re: Javascript for dummies like me
    By: Sys64738 to echicken on Mon Dec 06 2021 18:05:26

    I think you understand exactly what I'm getting at. It's the
    JavaScript info that is HTML/CSS-centric that I'm trying to weed
    my way through.

    Hate to say it, but you just have to power through it. You'll
    eventually get a feel for what information is portable and what is
    tied to a certain domain.


    Pretty much what I did. Just take some existing code, there are plenty
    of examples in /sbbs/exec from small utilities to full blown apps.
    You'll definitely want to refer to the jsobjs file. This is the link
    between js and synchronet.

    Maybe look at one of the menus. It's pretty easy and uses a few
    features like getting the users time and security levels, presenting
    menus and files and the like.

    DM also has a few videos on programming that are worth a look.

    The bottom line is, figure something you want to do and carve away at
    it. You can even do a basic outline in English then figure the
    javascript to replace it.

    like

    get users age
    if they're older than 21 set the 1M flag (for mature content)
    if they're older then 50 then set the 2O flags for Old Fart.
    Also, if it's their birthday then announce it by displaying
    an ansi birthday card


    Then plug that in somewhere in the login sequence.
    --
    End Of The Line BBS - Plano, TX
    telnet endofthelinebbs.com 23
    ---
    þ Synchronet þ End Of The Line BBS - endofthelinebbs.com
  • From Sys64738@VERT/TXNET1 to echicken on Tuesday, December 07, 2021 08:51:03
    Re: Javascript for dummies like me
    By: echicken to Sys64738 on Tue Dec 07 2021 04:16:48

    I use Visual Studio Code, and I just accept that its language features aren't always going to be accurate. I refer to jsobjs.html when I need to know what parameters a function requires, or what it will return, rather than trust the hints that come up in VS Code.

    Oh wow. This looks like my kind of adventure!

    SYS64738

    ---
    þ Synchronet þ TEXNet
  • From Sys64738@VERT/TXNET1 to Digital Man on Tuesday, December 07, 2021 09:03:20
    Re: Javascript for dummies like me
    By: Digital Man to Sys64738 on Mon Dec 06 2021 21:02:33

    I use notepad++ on Windows and vim or geany on Linux. The editor doesn't have to recognize an object/method/property for you to use it.

    I started out just using plain notepad. Since this is all new to me, I thought that I might benefit from the hints/debugging features from an editor.
    However, it seems that programming has become less uniform and less certain since the years when I was most involved (80's-90's). The paved roads of years past seem to have not been maintained and people often find themselves cutting their own path to get to where they want to go.

    In your opinion, would that be an accurate assessment?

    SYS64738

    ---
    þ Synchronet þ TEXNet
  • From Nightfox@VERT/DIGDIST to Sys64738 on Tuesday, December 07, 2021 09:15:56
    Re: Javascript for dummies like me
    By: Sys64738 to Digital Man on Mon Dec 06 2021 08:54 pm

    Javascipt that works best for this purpose? I've been using Visual Code Studio

    Do you mean Visual Studio Code?

    Nightfox

    ---
    þ Synchronet þ Digital Distortion: digitaldistortionbbs.com
  • From Digital Man@VERT to Sys64738 on Tuesday, December 07, 2021 12:56:02
    Re: Javascript for dummies like me
    By: Sys64738 to Digital Man on Tue Dec 07 2021 09:03 am

    Re: Javascript for dummies like me
    By: Digital Man to Sys64738 on Mon Dec 06 2021 21:02:33

    I use notepad++ on Windows and vim or geany on Linux. The editor doesn't have to recognize an object/method/property for you to use it.

    I started out just using plain notepad.

    Yeah, that would be my last choice, mainly due to no syntax highlighting.

    Since this is all new to me, I
    thought that I might benefit from the hints/debugging features from an editor.
    However, it seems that programming has become less uniform and less certain since the years when I was most involved (80's-90's). The paved roads of years past seem to have not been maintained and people often find themselves cutting their own path to get to where they want to go.

    In your opinion, would that be an accurate assessment?

    I think the tools are far better and more "paved" than they were in the '80s and '90s.
    --
    digital man (rob)

    Breaking Bad quote #4:
    Tagging trees is a lot better than chasing monsters. - Hank
    Norco, CA WX: 59.6øF, 80.0% humidity, 3 mph NW wind, 0.00 inches rain/24hrs
    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Sys64738@VERT/TXNET1 to Nightfox on Wednesday, December 08, 2021 23:33:26
    Re: Javascript for dummies like me
    By: Nightfox to Sys64738 on Tue Dec 07 2021 09:15:56

    Javascipt that works best for this purpose? I've been using Visual Code Studio

    Do you mean Visual Studio Code?

    Yes.
    SYS64738

    ---
    þ Synchronet þ TEXNet
  • From Sys64738@VERT/TXNET1 to Digital Man on Wednesday, December 08, 2021 23:37:59
    Re: Javascript for dummies like me
    By: Digital Man to Sys64738 on Tue Dec 07 2021 12:56:02

    However, it seems that programming has become less uniform and less certain since the years when I was most involved (80's-90's). The paved roads of years past seem to have not been maintained and people often find themselves cutting their own path to get to where they want to go.

    In your opinion, would that be an accurate assessment?

    I think the tools are far better and more "paved" than they were in the '80s and '90s.

    No doubt, the tools are far better. However, there doesn't seem to be as much consistency in the syntax of the programming languages that I've observed. Such as with "console.print" as an example. I'm not understanding why that command wouldn't be universal and a common command within JavaScript.

    SYS64738

    ---
    þ Synchronet þ TEXNet
  • From echicken@VERT/ECBBS to Sys64738 on Thursday, December 09, 2021 14:16:38
    Re: Javascript for dummies like me
    By: Sys64738 to Digital Man on Wed Dec 08 2021 23:37:59

    No doubt, the tools are far better. However, there doesn't seem to be as much consistency in the syntax of the programming languages that I've

    True, but there's a diversity of languages because lots of people had their own ideas about how things should work, from syntax down to nuts and bolts.

    observed. Such as with "console.print" as an example. I'm not understanding why that command wouldn't be universal and a common command within JavaScript.

    For whatever reason, JS has a fairly weak standard library and a lot of stuff is left to the implementor. Depending on where your JS is running, the notion of a 'console' to send output to might have a very different meaning.

    MDN says that 'console' appeared in browsers around the era of IE8, Firefox 4, Chrome 1, Safari 3. It probably wasn't widespread until at least 10 years ago. Its purpose is mostly to output debug info to a browser's dev tools console. Even then, it's just a convention and not part of the standard.

    Meanwhile Synchronet already had an object by that time which (presumably) DM chose to call 'console'. It has a different purpose entirely, even if it seems superficially similar to the 'console' in browsers or node.js.

    So, it's an unfortunate coincidence, and just one of those places where the line between standard/core JS and specific implementations gets a bit fuzzy.

    ---
    echicken
    electronic chicken bbs - bbs.electronicchicken.com
    ---
    þ Synchronet þ electronic chicken bbs - bbs.electronicchicken.com
  • From Nightfox@VERT/DIGDIST to Sys64738 on Thursday, December 09, 2021 09:03:32
    Re: Javascript for dummies like me
    By: Sys64738 to Digital Man on Wed Dec 08 2021 11:37 pm

    No doubt, the tools are far better. However, there doesn't seem to be as much consistency in the syntax of the programming languages that I've observed. Such as with "console.print" as an example. I'm not understanding why that command wouldn't be universal and a common command within JavaScript.

    In that case, it's mainly that Synchronet has defined its own custom JavaScript interface. It's possible to embed JavaScript into C/C++ projects (and projects using other languages) and define your own custom JavaScript API for your scripting needs. Doing so actually allows you a lot of flexibility.

    The console object defined in Synchronet's JS API might have fairly different requirements than for other contexts. When developing JS for a web browser, there is a 'console' object, but that's a totally different thing. The JS console object for Synchronet is for the text-based interface that the user is logged into when using telnet, RLogin, SSH, etc., whereas the web console object in JS is for the web browser's debugging console. I don't think it would really make sense for Synchronet to share the same console object as a web browser.

    Nightfox

    ---
    þ Synchronet þ Digital Distortion: digitaldistortionbbs.com
  • From Digital Man@VERT to Sys64738 on Thursday, December 09, 2021 11:57:08
    Re: Javascript for dummies like me
    By: Sys64738 to Digital Man on Wed Dec 08 2021 11:37 pm

    Re: Javascript for dummies like me
    By: Digital Man to Sys64738 on Tue Dec 07 2021 12:56:02

    However, it seems that programming has become less uniform and less certain since the years when I was most involved (80's-90's). The paved roads of years past seem to have not been maintained and people often find themselves cutting their own path to get to where they want to go.

    In your opinion, would that be an accurate assessment?

    I think the tools are far better and more "paved" than they were in the '80s and '90s.

    No doubt, the tools are far better. However, there doesn't seem to be as much consistency in the syntax of the programming languages that I've observed. Such as with "console.print" as an example. I'm not understanding why that command wouldn't be universal and a common command within JavaScript.

    Because JavaScript was designed without a "console" in mind. Core JavaScript makes no assumptions about the I/O capabilities (screen, file, or otherwise) of the environment in which the script is running.
    --
    digital man (rob)

    Rush quote #53:
    He picks up scraps of conversation, radio and radiation .. Digital Man
    Norco, CA WX: 53.7øF, 93.0% humidity, 4 mph NNW wind, 0.00 inches rain/24hrs ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Sys64738@VERT/TXNET1 to echicken on Friday, December 10, 2021 08:31:19
    Re: Javascript for dummies like me
    By: echicken to Sys64738 on Thu Dec 09 2021 14:16:38

    For whatever reason, JS has a fairly weak standard library and a lot of stuff is left to the implementor. Depending on where your JS is running, the notion of a 'console' to send output to might have a very different meaning.

    MDN says that 'console' appeared in browsers around the era of IE8, Firefox 4, Chrome 1, Safari 3. It probably wasn't widespread until at least 10 years ago. Its purpose is mostly to output debug info to a browser's dev tools console. Even then, it's just a convention and not part of the standard.

    Meanwhile Synchronet already had an object by that time which (presumably) DM chose to call 'console'. It has a different purpose entirely, even if it seems superficially similar to the 'console' in browsers or node.js.

    This language sounds like a make it up as you go free for all. Sorta like building the bicycle while you ride it. What could go wrong? lol
    SYS64738

    ---
    þ Synchronet þ TEXNet
  • From Sys64738@VERT/TXNET1 to Nightfox on Friday, December 10, 2021 08:35:07
    Re: Javascript for dummies like me
    By: Nightfox to Sys64738 on Thu Dec 09 2021 09:03:32

    The console object defined in Synchronet's JS API might have fairly different requirements than for other contexts. When developing JS for a web browser, there is a 'console' object, but that's a totally different thing. The JS console object for Synchronet is for the text-based interface

    I understand what you're saying. Thanks for explaining.

    However, the concept of people making up their own commands seems like a taking a long walk on a short pier.
    SYS64738

    ---
    þ Synchronet þ TEXNet
  • From MRO@VERT/BBSESINF to Sys64738 on Friday, December 10, 2021 08:52:07
    Re: Javascript for dummies like me
    By: Sys64738 to echicken on Fri Dec 10 2021 08:31 am


    This language sounds like a make it up as you go free for all. Sorta like building the bicycle while you ride it. What could go wrong? lol


    isnt that how computing has always been? that's how engineers do things, isn't it?
    ---
    þ Synchronet þ ::: BBSES.info - free BBS services :::
  • From echicken@VERT/ECBBS to Sys64738 on Friday, December 10, 2021 15:08:16
    Re: Javascript for dummies like me
    By: Sys64738 to echicken on Fri Dec 10 2021 08:31:19

    This language sounds like a make it up as you go free for all. Sorta like building the bicycle while you ride it. What could go wrong? lol

    Not that it's such a great language - it has strengths and weaknesses - but this is more a problem of understanding how the language and the implementation relate to each other.

    JS is typically used as a scripting environment embedded in some other application. The 'parent' application might be written in C or Java for example. The parent application might be a BBS, a print accounting system, an authentication provider, the firmware on a radio, a web browser, or a development platform like node.js. (These are places where I've used JS.)

    Sometimes the parent application uses JS sparingly, eg. some event happens, and a script is executed to do a few custom things. Sometimes the entire point of the parent application is to run your JS and let it access system resources (files, network, etc.) It all depends.

    You absolutely want to make certain things up as you go along, if you're embedding a JS engine in your product. There are things you'll want scripts to be able to do which have no rightful place in the language's core. This can be done well and it can be done poorly, but it's not inherently wrong.

    ---
    echicken
    electronic chicken bbs - bbs.electronicchicken.com
    ---
    þ Synchronet þ electronic chicken bbs - bbs.electronicchicken.com
  • From echicken@VERT/ECBBS to Sys64738 on Friday, December 10, 2021 15:15:51
    Re: Javascript for dummies like me
    By: Sys64738 to Nightfox on Fri Dec 10 2021 08:35:07

    However, the concept of people making up their own commands seems like a taking a long walk on a short pier.

    If you've written software, you've probably written a function, and in so doing you've made up a command. Your program can call that function whenever it needs to.

    In many ways, this is the same thing. It's just that the function (or object, method, property, etc.) is defined at a lower level. Sort of at a layer between the parent application and the child script.

    It's not that implementors are altering JS itself. It's that they're giving scripts an interface to resources outside of the JS core so that they can do something with them. Which is the entire point of embedding a scripting engine into your software.

    I hope that clarifies it a bit.

    ---
    echicken
    electronic chicken bbs - bbs.electronicchicken.com
    ---
    þ Synchronet þ electronic chicken bbs - bbs.electronicchicken.com
  • From Sys64738@VERT/TXNET1 to Digital Man on Friday, December 10, 2021 08:36:33
    Re: Javascript for dummies like me
    By: Digital Man to Sys64738 on Thu Dec 09 2021 11:57:08

    Because JavaScript was designed without a "console" in mind. Core JavaScript makes no assumptions about the I/O capabilities (screen, file, or otherwise) of the environment in which the script is running.

    I see. So, with Core Javascript is there a standard/universal "print" type option?
    SYS64738

    ---
    þ Synchronet þ TEXNet
  • From Sys64738@VERT/TXNET1 to MRO on Friday, December 10, 2021 09:44:05
    Re: Javascript for dummies like me
    By: MRO to Sys64738 on Fri Dec 10 2021 08:52:07

    This language sounds like a make it up as you go free for all. Sorta like building the bicycle while you ride it. What could go wrong? lol


    isnt that how computing has always been? that's how engineers do things, isn't it?

    Don't get me started on engineers. There's a special place in Hades reserved for those people. jk
    SYS64738

    ---
    þ Synchronet þ TEXNet
  • From Sys64738@VERT/TXNET1 to echicken on Friday, December 10, 2021 09:47:29
    Re: Javascript for dummies like me
    By: echicken to Sys64738 on Fri Dec 10 2021 15:08:16

    JS is typically used as a scripting environment embedded in some other application. The 'parent' application might be written in C or Java for example. The parent application might be a BBS, a print accounting system, an authentication provider, the firmware on a radio, a web browser, or a development platform like node.js. (These are places where I've used JS.)

    That makes more sense to me than anything else I have read. Thank-you for that. I guess I was thinking of it more in terms of a stand alone language instead of a scripting enviro. In that case, the parent app contains the terminology used by the script to an extent.

    SYS64738

    ---
    þ Synchronet þ TEXNet
  • From Sys64738@VERT/TXNET1 to echicken on Friday, December 10, 2021 09:51:50
    Re: Javascript for dummies like me
    By: echicken to Sys64738 on Fri Dec 10 2021 15:15:51

    If you've written software, you've probably written a function, and in so doing you've made up a command. Your program can call that function whenever it needs to.

    Pardon my dated terms, but I relate "function" in this context to be a "routine" or "subroutine".

    In many ways, this is the same thing. It's just that the function (or object, method, property, etc.) is defined at a lower level. Sort of at a layer between the parent application and the child script.

    It's not that implementors are altering JS itself. It's that they're giving scripts an interface to resources outside of the JS core so that they can do something with them. Which is the entire point of embedding a scripting engine into your software.

    I hope that clarifies it a bit.

    It certainly does. I appreciate you taking the time to explain it to me. Suddenly, the world starts to make a little more sense.

    SYS64738

    ---
    þ Synchronet þ TEXNet
  • From echicken@VERT/ECBBS to Sys64738 on Friday, December 10, 2021 17:20:41
    Re: Javascript for dummies like me
    By: Sys64738 to echicken on Fri Dec 10 2021 09:51:50

    Pardon my dated terms, but I relate "function" in this context to be a "routine" or "subroutine".

    I haven't used those terms since I was a teenager learning BASIC in high school, but it's all close enough for this discussion.

    It certainly does. I appreciate you taking the time to explain it to me. Suddenly, the world starts to make a little more sense.

    Glad to hear it. Takes a while for concepts to 'click' sometimes, but once they do, it's a lot easier to proceed with your project. (I usually just dive headfirst into stuff I know nothing about, and come away with slightly, incrementally more understanding each time.)

    ---
    echicken
    electronic chicken bbs - bbs.electronicchicken.com
    ---
    þ Synchronet þ electronic chicken bbs - bbs.electronicchicken.com
  • From Nightfox@VERT/DIGDIST to Sys64738 on Friday, December 10, 2021 09:20:33
    Re: Javascript for dummies like me
    By: Sys64738 to Nightfox on Fri Dec 10 2021 08:35 am

    The console object defined in Synchronet's JS API might have fairly
    different requirements than for other contexts. When developing JS
    for a web browser, there is a 'console' object, but that's a totally
    different thing. The JS console object for Synchronet is for the
    text-based interface

    I understand what you're saying. Thanks for explaining.

    However, the concept of people making up their own commands seems like a taking a long walk on a short pier.

    How so?
    The ability to create your own functions, your own classes, your own API, etc. is the foundation of being able to build software. You need to be able to create your own functions, classes, etc. in order to build software effectively.

    Also, in this case, do you really need to have any consistency between the Synchronet console object and the web console object? What benefit would that serve?

    Also I rarely see them referred to as "commands".

    Nightfox

    ---
    þ Synchronet þ Digital Distortion: digitaldistortionbbs.com
  • From Nightfox@VERT/DIGDIST to MRO on Friday, December 10, 2021 09:24:39
    Re: Javascript for dummies like me
    By: MRO to Sys64738 on Fri Dec 10 2021 08:52 am

    This language sounds like a make it up as you go free for all. Sorta
    like building the bicycle while you ride it. What could go wrong? lol

    isnt that how computing has always been? that's how engineers do things, isn't it?

    It's good to think about at least a bit of the design before building it. I doubt computers such as the IBM PC, Mac, etc. were just thrown together haphazardly.

    Nightfox

    ---
    þ Synchronet þ Digital Distortion: digitaldistortionbbs.com
  • From Digital Man@VERT to echicken on Friday, December 10, 2021 09:53:52
    Re: Javascript for dummies like me
    By: echicken to Sys64738 on Fri Dec 10 2021 03:15 pm

    It's not that implementors are altering JS itself. It's that they're giving scripts an interface to resources outside of the JS core so that they can do something with them. Which is the entire point of embedding a scripting engine into your software.

    The same can be said of other scripting languages (Perl, Python, Lua, etc.).
    --
    digital man (rob)

    Synchronet/BBS Terminology Definition #85:
    UART = Universal Asynchronous Receiver/Transmitter
    Norco, CA WX: 53.6øF, 84.0% humidity, 1 mph S wind, 0.03 inches rain/24hrs
    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Digital Man@VERT to Sys64738 on Friday, December 10, 2021 09:56:53
    Re: Javascript for dummies like me
    By: Sys64738 to Digital Man on Fri Dec 10 2021 08:36 am

    Re: Javascript for dummies like me
    By: Digital Man to Sys64738 on Thu Dec 09 2021 11:57:08

    Because JavaScript was designed without a "console" in mind. Core JavaScript makes no assumptions about the I/O capabilities (screen, file, or otherwise) of the environment in which the script is running.

    I see. So, with Core Javascript is there a standard/universal "print" type option?

    No, because like I said, Core JavaScript makes no assumptions about the I/O capabilities of the environmnet.
    --
    digital man (rob)

    Synchronet "Real Fact" #104:
    The official Synchronet YouTube channel went live on May 6, 2019
    Norco, CA WX: 53.6øF, 84.0% humidity, 1 mph S wind, 0.03 inches rain/24hrs
    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Digital Man@VERT to Sys64738 on Friday, December 10, 2021 10:08:53
    Re: Javascript for dummies like me
    By: Digital Man to Sys64738 on Fri Dec 10 2021 09:56 am

    Re: Javascript for dummies like me
    By: Sys64738 to Digital Man on Fri Dec 10 2021 08:36 am

    Re: Javascript for dummies like me
    By: Digital Man to Sys64738 on Thu Dec 09 2021 11:57:08

    Because JavaScript was designed without a "console" in mind. Core JavaScript makes no assumptions about the I/O capabilities (screen, file, or otherwise) of the environment in which the script is running.

    I see. So, with Core Javascript is there a standard/universal "print" type option?

    No, because like I said, Core JavaScript makes no assumptions about the I/O capabilities of the environmnet.

    And btw, this attribute is not unique to JavaScript. You've heard of the C and C++ programming languages, I'm sure. C and C++, the languages themselves, don't define a standard/universal "print" type function either.

    There *are* "Standard Runtime Libraries" for the C and C++ which add that functionality (e.g. puts, printf), but they're not part of the core language definition. I've worked professionally on C projects where there was no "print" type functionality at all (we did not use a "standard runtime library", nor was there a console to print to in the execution environment).
    --
    digital man (rob)

    This Is Spinal Tap quote #8:
    Derek Smalls: Making a big thing out of it would have been a good idea.
    Norco, CA WX: 53.8øF, 81.0% humidity, 2 mph S wind, 0.03 inches rain/24hrs
    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From MRO@VERT/BBSESINF to Nightfox on Friday, December 10, 2021 15:40:10
    Re: Javascript for dummies like me
    By: Nightfox to MRO on Fri Dec 10 2021 09:24 am

    isnt that how computing has always been? that's how engineers do things, isn't it?

    It's good to think about at least a bit of the design before building it. I doubt computers such as the IBM PC, Mac, etc. were just thrown together haphazardly.


    HAHAHA

    guess you haven't seen any.
    ---
    þ Synchronet þ ::: BBSES.info - free BBS services :::
  • From Nelgin@VERT/EOTLBBS to All on Friday, December 10, 2021 16:12:02
    On Fri, 10 Dec 2021 08:35:07 -0600
    "Sys64738" <sys64738@VERT/TXNET1> wrote:


    However, the concept of people making up their own commands seems
    like a taking a long walk on a short pier. SYS64738

    Maybe you should quit while you're ahead...
    --
    End Of The Line BBS - Plano, TX
    telnet endofthelinebbs.com 23
    ---
    þ Synchronet þ End Of The Line BBS - endofthelinebbs.com
  • From Sys64738@VERT/TXNET1 to echicken on Friday, December 10, 2021 22:35:56
    Re: Javascript for dummies like me
    By: echicken to Sys64738 on Fri Dec 10 2021 17:20:41

    Pardon my dated terms, but I relate "function" in this context to be a "routine" or "subroutine".

    I haven't used those terms since I was a teenager learning BASIC in high school, but it's all close enough for this discussion.

    Yep, I'm old. Not to the point where I scram at kids to get off my lawn or anything. However, I do cringe every time I hear "programming" termed as "coding". blech!

    they do, it's a lot easier to proceed with your project. (I usually just dive headfirst into stuff I know nothing about, and come away with slightly, incrementally more understanding each time.)

    Well, that's I'm doing here. The only problem is I wasn't facing the pool before I did my triple somersalt swan dive...lol
    SYS64738

    ---
    þ Synchronet þ TEXNet
  • From echicken@VERT/ECBBS to Sys64738 on Saturday, December 11, 2021 05:28:03
    Re: Javascript for dummies like me
    By: Sys64738 to echicken on Fri Dec 10 2021 22:35:56

    Yep, I'm old. Not to the point where I scram at kids to get off my lawn or

    I'm 40 now and trying to keep up with a 2 year old kid. I feel old enough.

    anything. However, I do cringe every time I hear "programming" termed as "coding". blech!

    Yeah, there's no 'programming' any more, old timer. There are developers and coders and coders who develop and developers who code and probably a bunch of other things I'm not hip enough to know about.

    Exposure therapy is the only thing that really works. Slang comes and goes; you can ignore it or resist it up to a certain point, but language will drift. I am often quite annoyed by stuff like this (eg. referring to the # symbol itself as 'hashtag'), but I eventually get used to it. I just unclench my cringe muscles and move on as many times as it takes until that happens.

    ---
    echicken
    electronic chicken bbs - bbs.electronicchicken.com
    ---
    þ Synchronet þ electronic chicken bbs - bbs.electronicchicken.com
  • From Digital Man@VERT to echicken on Friday, December 10, 2021 21:33:33
    Re: Javascript for dummies like me
    By: echicken to Sys64738 on Sat Dec 11 2021 05:28 am

    Exposure therapy is the only thing that really works. Slang comes and goes; you can ignore it or resist it up to a certain point, but language will drift. I am often quite annoyed by stuff like this (eg. referring to the # symbol itself as 'hashtag'), but I eventually get used to it. I just unclench my cringe muscles and move on as many times as it takes until that happens.

    I like the way you talk... mm hmm.
    --
    digital man (rob)

    This Is Spinal Tap quote #27:
    As long as there's, y'know, sex and drugs, I can do without the rock and roll. Norco, CA WX: 48.1øF, 80.0% humidity, 0 mph S wind, 0.00 inches rain/24hrs
    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Sys64738@VERT/TXNET1 to Nightfox on Friday, December 10, 2021 22:38:49
    Re: Javascript for dummies like me
    By: Nightfox to Sys64738 on Fri Dec 10 2021 09:20:33

    However, the concept of people making up their own commands seems like a taking a long walk on a short pier.

    How so?
    The ability to create your own functions, your own classes, your own API, etc. is the foundation of being able to build software. You need to be able to create your own functions, classes, etc. in order to build software effectively.

    Never mind me. I was looking at it from the wrong perspective. Echicken set me straight.

    Also I rarely see them referred to as "commands".

    What? Is this pick on the old programmer day? lol

    SYS64738

    ---
    þ Synchronet þ TEXNet
  • From Sys64738@VERT/TXNET1 to Digital Man on Friday, December 10, 2021 22:40:00
    Re: Javascript for dummies like me
    By: Digital Man to Sys64738 on Fri Dec 10 2021 09:56:53

    I see. So, with Core Javascript is there a standard/universal "print" type option?

    No, because like I said, Core JavaScript makes no assumptions about the I/O capabilities of the environmnet.

    Ok. I guess that will make sense as I weed through things.

    SYS64738

    ---
    þ Synchronet þ TEXNet
  • From Sys64738@VERT/TXNET1 to Digital Man on Friday, December 10, 2021 22:44:31
    Re: Javascript for dummies like me
    By: Digital Man to Sys64738 on Fri Dec 10 2021 10:08:53

    And btw, this attribute is not unique to JavaScript. You've heard of the C and C++ programming languages, I'm sure. C and C++, the languages themselves, don't define a standard/universal "print" type function either.

    There *are* "Standard Runtime Libraries" for the C and C++ which add that functionality (e.g. puts, printf), but they're not part of the core language definition. I've worked professionally on C projects where there was no "print" type functionality at all (we did not use a "standard runtime library", nor was there a console to print to in the execution environment).

    That is odd to me. Even the Eniac and Edvac had the ability to display a readout even if it was on punchcards or some other medieval median.

    SYS64738

    ---
    þ Synchronet þ TEXNet
  • From Digital Man@VERT to Sys64738 on Friday, December 10, 2021 22:11:29
    Re: Javascript for dummies like me
    By: Sys64738 to Digital Man on Fri Dec 10 2021 10:44 pm

    Re: Javascript for dummies like me
    By: Digital Man to Sys64738 on Fri Dec 10 2021 10:08:53

    And btw, this attribute is not unique to JavaScript. You've heard of the C and C++ programming languages, I'm sure. C and C++, the languages themselves, don't define a standard/universal "print" type function either.

    There *are* "Standard Runtime Libraries" for the C and C++ which add that functionality (e.g. puts, printf), but they're not part of the core language definition. I've worked professionally on C projects where there was no "print" type functionality at all (we did not use a "standard runtime library", nor was there a console to print to in the execution environment).

    That is odd to me. Even the Eniac and Edvac had the ability to display a readout even if it was on punchcards or some other medieval median.

    Sure, but the inventors of the language (C) believed in maximum modularity and tried to make the language itself (the built-in "keywords" and symbols) as small as possible. This design has served the world well as C and its derivitives have been to put to great use in environments unlike the one it was first created for (a PDP-7).

    The software embedded in your webcam, for example, likely was written in C or C++. It doesn't have "a console" or anywhere to "print", so any logic to support that function would have been a waste of resources on such a device. It's great that such functions are not requirements of the language itself.
    --
    digital man (rob)

    Sling Blade quote #20:
    Doyle: Hey is this the kind of retard that drools and rubs shit in his hair? Norco, CA WX: 49.4øF, 60.0% humidity, 1 mph S wind, 0.00 inches rain/24hrs
    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Nightfox@VERT/DIGDIST to Sys64738 on Friday, December 10, 2021 23:55:30
    Re: Javascript for dummies like me
    By: Sys64738 to Nightfox on Fri Dec 10 2021 10:38 pm

    Never mind me. I was looking at it from the wrong perspective. Echicken set me straight.

    I think he explained it fairly well.

    Also I rarely see them referred to as "commands".

    What? Is this pick on the old programmer day? lol

    I didn't mean it like that, and sorry it came across that way.

    Nightfox

    ---
    þ Synchronet þ Digital Distortion: digitaldistortionbbs.com
  • From Nightfox@VERT/DIGDIST to echicken on Friday, December 10, 2021 23:59:00
    Re: Javascript for dummies like me
    By: echicken to Sys64738 on Sat Dec 11 2021 05:28 am

    anything. However, I do cringe every time I hear "programming"
    termed as "coding". blech!

    Yeah, there's no 'programming' any more, old timer. There are developers and coders and coders who develop and developers who code and probably a bunch of other things I'm not hip enough to know about.

    I almost feel like "programming" sounds okay, but the term "computer programmer" seems like something that's not really used anymore. "Software developer" and "software engineer" has largely replaced "computer programmer".

    Nightfox

    ---
    þ Synchronet þ Digital Distortion: digitaldistortionbbs.com
  • From Nightfox@VERT/DIGDIST to echicken on Saturday, December 11, 2021 00:00:24
    Re: Javascript for dummies like me
    By: echicken to Sys64738 on Sat Dec 11 2021 05:28 am

    will drift. I am often quite annoyed by stuff like this (eg. referring to the # symbol itself as 'hashtag'), but I eventually get used to it. I just

    I as well. I also feel annoyed when I see posts where the only text people post with it are #hashtags rather than an actual sentence saying something..

    Nightfox

    ---
    þ Synchronet þ Digital Distortion: digitaldistortionbbs.com
  • From Nightfox@VERT/DIGDIST to Sys64738 on Saturday, December 11, 2021 00:02:52
    Re: Javascript for dummies like me
    By: Sys64738 to Digital Man on Fri Dec 10 2021 10:44 pm

    And btw, this attribute is not unique to JavaScript. You've heard of
    the C and C++ programming languages, I'm sure. C and C++, the
    languages themselves, don't define a standard/universal "print" type
    function either.

    There *are* "Standard Runtime Libraries" for the C and C++ which add
    that functionality (e.g. puts, printf), but they're not part of the
    core language definition. I've worked professionally on C projects
    where there was no "print" type functionality at all (we did not use a
    "standard runtime
    library", nor was there a console to print to in the execution environment)

    That is odd to me. Even the Eniac and Edvac had the ability to display a readout even if it was on punchcards or some other medieval median.

    I think the reasoning is that it's possible to write a program for something that doesn't have a console (such as firmware for a device), where there isn't anything to write onto. The only way to get a message out in that kind of situation would be to send something over a data connection (serial or otherwise).

    Nightfox

    ---
    þ Synchronet þ Digital Distortion: digitaldistortionbbs.com
  • From MRO@VERT/BBSESINF to Nightfox on Saturday, December 11, 2021 13:15:10
    Re: Javascript for dummies like me
    By: Nightfox to echicken on Sat Dec 11 2021 12:00 am

    Re: Javascript for dummies like me
    By: echicken to Sys64738 on Sat Dec 11 2021 05:28 am

    will drift. I am often quite annoyed by stuff like this (eg. referring to the # symbol itself as 'hashtag'), but I eventually get used to it. I just

    I as well. I also feel annoyed when I see posts where the only text people post with it are #hashtags rather than an actual sentence saying something..


    i feel annooyed when they don't call it octothorpe.
    ---
    þ Synchronet þ ::: BBSES.info - free BBS services :::
  • From Sys64738@VERT/TXNET1 to Digital Man on Monday, December 13, 2021 17:36:03
    Re: Javascript for dummies like me
    By: Digital Man to Sys64738 on Fri Dec 10 2021 22:11:29

    The software embedded in your webcam, for example, likely was written in C or C++. It doesn't have "a console" or anywhere to "print", so any logic to support that function would have been a waste of resources on such a device. It's great that such functions are not requirements of the language itself.

    I get that. However, at some point someone won't someone want to run a diagnostic on the device to see a report of what it has done and is currently doing? Without a record, they will only be able to see what the device is doing now and no historical record (no matter how short) for use in troubleshooting.

    Of course, it is possible to have a device like this, but I anticipate trouble on the horizon when it comes to rectifying problems the device has.

    SYS64738

    ---
    þ Synchronet þ TEXNet
  • From Sys64738@VERT/TXNET1 to Nightfox on Monday, December 13, 2021 17:40:28
    Re: Javascript for dummies like me
    By: Nightfox to Sys64738 on Fri Dec 10 2021 23:55:30

    Never mind me. I was looking at it from the wrong perspective. Echicken set me straight.

    I think he explained it fairly well.

    Made a believer out of me! :)

    Also I rarely see them referred to as "commands".

    What? Is this pick on the old programmer day? lol

    I didn't mean it like that, and sorry it came across that way.

    No sweat, dude. I sorta get a kick out of how seeing how things have changed. After being so active "back in the day" and taking a nearly 3 decade hiatus, I find that it's sort of like time travelling to see how things have progressed/degraded including the dialect.

    By the way, another thing that didn't exist in my day was the concept of a "good" or "white hat" hacker. lol

    SYS64738

    ---
    þ Synchronet þ TEXNet
  • From Digital Man@VERT to Sys64738 on Monday, December 13, 2021 17:02:16
    Re: Javascript for dummies like me
    By: Sys64738 to Digital Man on Mon Dec 13 2021 05:36 pm

    Re: Javascript for dummies like me
    By: Digital Man to Sys64738 on Fri Dec 10 2021 22:11:29

    The software embedded in your webcam, for example, likely was written in C or C++. It doesn't have "a console" or anywhere to "print", so any logic to support that function would have been a waste of resources on such a device. It's great that such functions are not requirements of the language itself.

    I get that. However, at some point someone won't someone want to run a diagnostic on the device to see a report of what it has done and is currently doing? Without a record, they will only be able to see what the device is doing now and no historical record (no matter how short) for use in troubleshooting.

    Of course, it is possible to have a device like this, but I anticipate trouble on the horizon when it comes to rectifying problems the device has.

    Sure, but "print" may not be the best way to report/store or retrieve that diagnostic output.
    --
    digital man (rob)

    Sling Blade quote #7:
    Karl: I don't reckon the Good Lord would send anybody like you to Hades.
    Norco, CA WX: 53.0øF, 77.0% humidity, 0 mph NW wind, 0.00 inches rain/24hrs
    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Tracker1@VERT/TRN to Sys64738 on Monday, December 13, 2021 18:20:53
    On 12/7/21 08:03, Sys64738 wrote:
    I use notepad++ on Windows and vim or geany on Linux. The editor
    doesn't have to recognize an object/method/property for you to
    use it.

    I started out just using plain notepad. Since this is all new to me,
    I thought that I might benefit from the hints/debugging features from
    an editor.

    However, it seems that programming has become less uniform and less
    certain since the years when I was most involved (80's-90's). The
    paved roads of years past seem to have not been maintained and people
    often find themselves cutting their own path to get to where they want
    to go.

    In your opinion, would that be an accurate assessment?

    I would use at least Notepad++ or another more feature-rich text editor
    over plain notepad...

    JS is pretty feature rich and the module syntax is pretty solid. For
    better or worse, a lot of the work in Synchronet predates the changes
    towards ES5 and ES6/ES2015 by a few years. Including a few bits that
    were done differently in the SpiderMonkey engine used vs. what became
    the standard. Like for-each and getter/setter syntax, which are widely
    used in Synchronet scripts.

    A lot of the object model naming and mapping are close to 1:1 to the underlying C libraries in Synchronet... so it will feel a little alien
    in places, compared to modern JS tooling. Event Enigma 1/2 has some
    rough edges and is on a much newer JS platform, but not nearly as
    feature rich as Synchronet.
    --
    Michael J. Ryan - tracker1@roughneckbbs.com
    ---
    þ Synchronet þ Roughneck BBS - roughneckbbs.com
  • From Tracker1@VERT/TRN to Sys64738 on Monday, December 13, 2021 18:23:47
    On 12/8/21 22:37, Sys64738 wrote:

    No doubt, the tools are far better. However, there doesn't seem to be
    as much consistency in the syntax of the programming languages that
    I've observed. Such as with "console.print" as an example. I'm not understanding why that command wouldn't be universal and a common
    command within JavaScript.

    I'm not sure, but I think the start of JS in Synchronet may pre-date the console object in the browser.

    Also, what would you expect console.log to do? Should it show to the host/server side, or to the client/user? It's not necessarily clear in
    this case.
    --
    Michael J. Ryan - tracker1@roughneckbbs.com
    ---
    þ Synchronet þ Roughneck BBS - roughneckbbs.com
  • From Tracker1@VERT/TRN to Sys64738 on Monday, December 13, 2021 18:28:22
    On 12/10/21 07:35, Sys64738 wrote:
    The console object defined in Synchronet's JS API might have fairly
    different requirements than for other contexts. When developing JS
    for a web browser, there is a 'console' object, but that's a totally
    different thing. The JS console object for Synchronet is for the
    text-based interface

    I understand what you're saying. Thanks for explaining.

    However, the concept of people making up their own commands seems like
    a taking a long walk on a short pier.

    `console` isn't part of the JavaScript language... things like `document.querySelector` aren't either. They're part of the running environment. In the case of the prior two examples a Browser.

    The BBS runtime environment(s) are different, and will have different
    features defined. What would you expect document.querySelector('body')
    to do with a telnet user? It's not the same...

    That said... for (var i=0; i< 10; i)) { ... } ... ARE part of the
    language definition.
    --
    Michael J. Ryan - tracker1@roughneckbbs.com
    ---
    þ Synchronet þ Roughneck BBS - roughneckbbs.com
  • From The Lizard Master@VERT/NITEEYES to Tracker1 on Tuesday, December 14, 2021 08:45:44
    Re: Re: Javascript for dummies like me
    By: Tracker1 to Sys64738 on Mon Dec 13 2021 06:20 pm

    I started out just using plain notepad. Since this is all new to me,
    I thought that I might benefit from the hints/debugging features from
    an editor.
    I would use at least Notepad++ or another more feature-rich text editor
    over plain notepad...

    Also check out sublimetext - https://www.sublimetext.com/

    I think that might be up his alley.

    ---TLM

    ---
    þ Synchronet þ Nite Eyes BBS - To make people happy about my tagline everywhere...
  • From MRO@VERT/BBSESINF to The Lizard Master on Tuesday, December 14, 2021 09:06:38
    Re: Re: Javascript for dummies like me
    By: The Lizard Master to Tracker1 on Tue Dec 14 2021 08:45 am

    Re: Re: Javascript for dummies like me
    By: Tracker1 to Sys64738 on Mon Dec 13 2021 06:20 pm

    I started out just using plain notepad. Since this is all new to me,
    I thought that I might benefit from the hints/debugging features from an editor.
    I would use at least Notepad++ or another more feature-rich text editor over plain notepad...

    Also check out sublimetext - https://www.sublimetext.com/

    I think that might be up his alley.


    that's kinda ugly. i'm sure it has theme support. i suggest editpad pro
    ---
    þ Synchronet þ ::: BBSES.info - free BBS services :::
  • From Nightfox@VERT/DIGDIST to Sys64738 on Wednesday, December 15, 2021 09:07:40
    Re: Javascript for dummies like me
    By: Sys64738 to Nightfox on Mon Dec 13 2021 05:40 pm

    I think he explained it fairly well.

    Made a believer out of me! :)

    :) I think it's interesting (and pretty cool) that scripting languages like JavaScript can be embedded in a program to provide a way to do things with it without recompiling the software.

    By the way, another thing that didn't exist in my day was the concept of a "good" or "white hat" hacker. lol

    :) Yeah, there are people who work mainly as "ethical hackers" to try to find holes in a system or piece of software so that they can be fixed. At a previous job I had, there were one or two times when the team hired such a group to come in and find security holes in our software.

    Nightfox

    ---
    þ Synchronet þ Digital Distortion: digitaldistortionbbs.com