Author Topic: What IDE are you using ?  (Read 15048 times)

0 Members and 1 Guest are viewing this topic.

Offline ali_asadzadeh

  • Super Contributor
  • ***
  • Posts: 1906
  • Country: ca
Re: What IDE are you using ?
« Reply #25 on: November 25, 2018, 06:23:22 am »
Quote
VSCode is three years old. Some of us have been programming for 40 years. Ok, VSCode is hot now, but will it still be the hot thing in even 10 years? Doubtful.
Then you can wait 10 years and then use it! ;D ;D of-course we should use things when they are better than others, if something better comes along I would switch to that too ^-^ ^-^ ^-^
ASiDesigner, Stands for Application specific intelligent devices
I'm a Digital Expert from 8-bits to 64-bits
 

Offline newbrain

  • Super Contributor
  • ***
  • Posts: 1719
  • Country: se
Re: What IDE are you using ?
« Reply #26 on: November 25, 2018, 11:46:14 am »
VSCode is three years old. Some of us have been programming for 40 years. Ok, VSCode is hot now, but will it still be the hot thing in even 10 years? Doubtful.
That would be me, for one. :-+

I see your point, and it has some merit, but as much as I fondly remember flipping switches and using hex keypads (and not so fondly fighting Univac card punchers) I was able to move on  :blah:

Oh, I do love emacs: I was hooked in May 1990 (first job), personalized EVE/TPU to mimic it as much as possible, and even wrote a lookalike* in 8086 asm for DOS...so if/when what I'm using today fades away I can probably still fall back to it.

*File size limited to 64k, and very basic syntax highlighting. No lisp though, I wrote and embedded a FORTH native code compiler. It all fit in ~15kB, IIRC.
Nandemo wa shiranai wa yo, shitteru koto dake.
 

Offline Siwastaja

  • Super Contributor
  • ***
  • Posts: 8173
  • Country: fi
Re: What IDE are you using ?
« Reply #27 on: November 25, 2018, 11:52:24 am »
Painting the instructions as pixels in MSPAINT to generate the binary directly.
 
The following users thanked this post: diyaudio, MT, newbrain, JPortici, Fire Doger

Offline legacy

  • Super Contributor
  • ***
  • !
  • Posts: 4415
  • Country: ch
Re: What IDE are you using ?
« Reply #28 on: November 25, 2018, 12:35:29 pm »
I wrote and embedded a FORTH native code compiler. It all fit in ~15kB, IIRC.

How can you find Forth useful and productive? it's horrible  :-//
 

Offline legacy

  • Super Contributor
  • ***
  • !
  • Posts: 4415
  • Country: ch
Re: What IDE are you using ?
« Reply #29 on: November 25, 2018, 12:57:45 pm »
The real question is: exactly what do you need?

- a tool able to edit a text file?
- a tool able to highlight the C syntax?
- a tool able to drive you inside the code by a tag from a list of functions and variables?
- a tool able to compare two C-source files highlighting the differences?
- a tool able to support Makefile so you can compile the project? and upload the hex to the target?
- a tool able to present you the project by which module depends on which module?
- a tool able to automatically presents modules dependencies?
- a tool able to support a debugger/ICE? so you can follow the code, step by step?
- a tool able to support, collect and analyze "triplettes" for dynamic coverage? and to plot the graph ?
- a tool able to automatically generate the Makefile for all the above features?
 
The following users thanked this post: JPortici

Offline legacy

  • Super Contributor
  • ***
  • !
  • Posts: 4415
  • Country: ch
Re: What IDE are you using ?
« Reply #30 on: November 25, 2018, 01:51:42 pm »
anyone has ever tried sourceinsight yet? any review?
 

Offline newbrain

  • Super Contributor
  • ***
  • Posts: 1719
  • Country: se
Re: What IDE are you using ?
« Reply #31 on: November 25, 2018, 02:27:19 pm »
The real question is: exactly what do you need?

- a tool able to edit a text file?
- a tool able to highlight the C syntax?
- a tool able to drive you inside the code by a tag from a list of functions and variables?
- a tool able to compare two C-source files highlighting the differences?
- a tool able to support Makefile so you can compile the project? and upload the hex to the target?
- a tool able to present you the project by which module depends on which module?
- a tool able to automatically presents modules dependencies?
- a tool able to support a debugger/ICE? so you can follow the code, step by step?
- a tool able to support, collect and analyze "triplettes" for dynamic coverage? and to plot the graph ?
- a tool able to automatically generate the Makefile for all the above features?

Yes!  :-+
And your answer would be (honest question)?
For me, VS Code (and VS + VGDB) do almost all of the above, for free or a reasonable price:
Y- a tool able to edit a text file?
Y- a tool able to highlight the C syntax?
Y- a tool able to drive you inside the code by a tag from a list of functions and variables?
Y- a tool able to compare two C-source files highlighting the differences?
Y- a tool able to support Makefile so you can compile the project? and upload the hex to the target?
N- a tool able to present you the project by which module depends on which module?
N- a tool able to automatically presents modules dependencies?
Y- a tool able to support a debugger/ICE? so you can follow the code, step by step?
N- a tool able to support, collect and analyze "triplettes" for dynamic coverage? and to plot the graph ?
N/Y- a tool able to automatically generate the Makefile for all the above features?

I wrote and embedded a FORTH native code compiler. It all fit in ~15kB, IIRC.

How can you find Forth useful and productive? it's horrible  :-//
(OT) First, consider that it was quite some time ago...
That said, RPN is second nature for me (learned to use a calculator on father's HP), and Forth interpreters are remarkably compact, simple, space efficient, and fast.
More desire could you what? A less quirky syntax? Pffttt...kids these days  ;)

PS: What are "triplettes" in a code coverage context? The only thing my mind associates with the word is
Nandemo wa shiranai wa yo, shitteru koto dake.
 

Offline legacy

  • Super Contributor
  • ***
  • !
  • Posts: 4415
  • Country: ch
Re: What IDE are you using ?
« Reply #32 on: November 25, 2018, 04:10:28 pm »
RPN is second nature for me (learned to use a calculator on father's HP)

The reverse polish notation is a thing that I appreciate, in fact, the expression evaluator of my Arise-v2 compiler uses an RPN approach supporting variables, constants, functions, and common logical, bitwise, and arithmetical operators.

You give an expression, it gives you back an RPN vector of tokens in an order that can be easily processed by a stack-oriented machine!

But, Forth is not a simple RPN engine to convert expressions into something that can be easily digested by a stack-oriented machine ... Forth adds the conditional branches, loops, and this makes it very horrible since it's too cryptical and obscure (unnatural) to be used.

Note there was a machine called "j1" used to implement the first generation of "GameDuino". Sort of VideoDisplay adapter with graphical features for gaming. It was intended to help people at developing easy video games combining an Arduino-mega + a special J1-VGA shield.

J1 is a pure Forth machine, their creators come from a university project which claimed it would have been a success, hence they said it's no problem if their J1 understands only the Forth language and you can only program it in Forth (reasons here, they claimed that supporting J1 by a C compiler was not a good deal).

Result? Nobody has ever used it. Epic failure, product retired after 6 months, and for the generation two (GameDuino2), they switched to a mini VDU programmable in C.
 

Offline legacy

  • Super Contributor
  • ***
  • !
  • Posts: 4415
  • Country: ch
Re: What IDE are you using ?
« Reply #33 on: November 25, 2018, 04:15:19 pm »
- a tool able to support, collect and analyze "triplettes" for dynamic coverage? and to plot the graph ?

This is a feature that you rarely find implemented, but for me, it's very important.
IDEs like Avocet have it, but it's not for cheap. Keil's should have something.

 

Offline newbrain

  • Super Contributor
  • ***
  • Posts: 1719
  • Country: se
Re: What IDE are you using ?
« Reply #34 on: November 25, 2018, 11:41:18 pm »

The reverse polish notation is a thing that I appreciate, in fact, the expression evaluator of my Arise-v2 compiler uses an RPN approach supporting variables, constants, functions, and common logical, bitwise, and arithmetical operators.

You give an expression, it gives you back an RPN vector of tokens in an order that can be easily processed by a stack-oriented machine!
Oh, that's exactly how my Occam compiler for the PC (my master thesis) worked!

And I don't find FORTH more unnatural than other languages: apart the IF ELSE THEN thing, all the rest is quite "normal", but then, I used to like APL... :-[
Nandemo wa shiranai wa yo, shitteru koto dake.
 

Offline brucehoult

  • Super Contributor
  • ***
  • Posts: 4039
  • Country: nz
Re: What IDE are you using ?
« Reply #35 on: November 26, 2018, 02:33:55 am »
The real question is: exactly what do you need?

- a tool able to edit a text file?
- a tool able to highlight the C syntax?
- a tool able to drive you inside the code by a tag from a list of functions and variables?
- a tool able to compare two C-source files highlighting the differences?
- a tool able to support Makefile so you can compile the project? and upload the hex to the target?
- a tool able to present you the project by which module depends on which module?
- a tool able to automatically presents modules dependencies?
- a tool able to support a debugger/ICE? so you can follow the code, step by step?
- a tool able to support, collect and analyze "triplettes" for dynamic coverage? and to plot the graph ?
- a tool able to automatically generate the Makefile for all the above features?

Only the first three are the business of the text editor. And even then I don't really want Fisher-Price syntax highlighting as much as automatic indentation and matching of brackets and other structure. A subtle calling out of comments and maybe literals from other things is useful, but not much else.

For all the rest, you don't want to have the IDE intimately tied to the commands and data structures and conventions of some particular project or vendor tools. What you (or anyway, I) want is the ability to write arbitrary programs and shell scripts and tie them to function keys (or arbitrary key combinations) in the IDE so that they are called with appropriate arguments and the results are displayed in the IDE.

Then you can use the same IDE with wildly varying projects and toolchains over the decades .. or even in the same day.

emacs does all this. And the build in programming language is great, compared to most of the rest.

So does Eclipse, but it's just soooo heavyweight and opaque. And takes forever to launch. Ugh.
 

Offline donotdespisethesnake

  • Super Contributor
  • ***
  • Posts: 1093
  • Country: gb
  • Embedded stuff
Re: What IDE are you using ?
« Reply #36 on: November 26, 2018, 06:27:18 am »

Only the first three are the business of the text editor.

Do you actually know what "IDE" stands for?  :-DD

I always wonder why people find it so hard to answer the OPs question rather than spout irrelevant opinions.

Bob
"All you said is just a bunch of opinions."
 

Online nfmax

  • Super Contributor
  • ***
  • Posts: 1562
  • Country: gb
Re: What IDE are you using ?
« Reply #37 on: November 26, 2018, 08:20:56 am »
I use the JetBrains family of IDEs. Main languages are JavaScript/NodesJS, C, Python, and occasionally Java. All are supported, with essentially the same UI. Judging by some of the comments above, some people have no idea about what a modern IDE actually does. I have seen no mention of things like on-line static analysis, such as highlighting unused functions and unreachable code; code refactoring operations, such as extracting code into a method; instant 'F1' API documentation; on-line syntax & style checking; and extensive support for VCS, branching, merging, comparing, and diffing not only between repository versions but also with the editor undo history. And you can add your own (or third-party) scripts and tools to any of the innumerable hooks put there for the purpose. Well worth the money.
 

Offline IconicPCB

  • Super Contributor
  • ***
  • Posts: 1535
  • Country: au
Re: What IDE are you using ?
« Reply #38 on: November 26, 2018, 08:32:15 am »
JGRASP
 

Offline brucehoult

  • Super Contributor
  • ***
  • Posts: 4039
  • Country: nz
Re: What IDE are you using ?
« Reply #39 on: November 26, 2018, 09:37:37 am »

Only the first three are the business of the text editor.

Do you actually know what "IDE" stands for?  :-DD

I always wonder why people find it so hard to answer the OPs question rather than spout irrelevant opinions.

Would that be "Integrated"?

My point, in case you missed it, is that it's better to have flexible Integration you can configure and tweak yourself than someone else's one-size-fits-all solution that works for .. I don't know .. C++ and Visual SourceSafe, but not Python or PHP and not git or subversion.
 

Offline emece67

  • Frequent Contributor
  • **
  • !
  • Posts: 614
  • Country: 00
Re: What IDE are you using ?
« Reply #40 on: November 26, 2018, 10:57:08 am »
.
« Last Edit: August 19, 2022, 02:05:00 pm by emece67 »
 

Offline legacy

  • Super Contributor
  • ***
  • !
  • Posts: 4415
  • Country: ch
Re: What IDE are you using ?
« Reply #41 on: November 26, 2018, 12:46:36 pm »
PS: What are "triplettes" in a code coverage context?

Each time a code under dynamic coverage encounters a conditional branch the engine(1) saves the condition on which the branch takes the way for "then"-path or for the "else"-path.

Code: [Select]
if ( logical_expr(A, B, C) )
{

}
else
{

}

Vectorcast is one of these tools, and it calls "triplettes" the saved condition because it forces you to have a maximum of three variables for the branch-condition.

Code: [Select]
ABC wh.branch
-------------
000 then/else
001 then/else
010 then/else
011 then/else
100 then/else
101 then/else
110 then/else
111 then/else

This table is what you get for each conditional branch. VectorCAST calls it the "tripplets-(table)" for a given line of C code corresponding to a branch condition.

Switch() { case: .... default: } is not considered "tripplets" so each "case" condition is only registered as "taken" or "not taken". Common lines of C code are also handled this way: "taken" or "not taken".

At the end of the session, you get a screen with C-lines colored in two different colors:
  • red: this line has been never taken during the test-cases running. It's potentially dead code, the behavior is untested.
  • green: this line has been taken. If it's the line is a conditional branch you also know on which condition it has been taken. Which is mandatory for DO178B level A,B. For certifications levels C,D you can ignore the triplettes.

(1) usually, it's performed in HW by an ICE. In avionics, we have a specific equipment (2) for this. Of course, it can also be analyzed in SW. E.g. Avocet WU comes with a module, integrated inside of the IDE, able to perform the dynamic coverage when you execute the code in a sort of testbench software simulator with virtual signals used as stimulus.
(2) VectorCAST software + a hardware module for the ICE, plus a module to extract data at high speed from the target under testing
« Last Edit: November 26, 2018, 12:52:39 pm by legacy »
 
The following users thanked this post: newbrain

Offline newbrain

  • Super Contributor
  • ***
  • Posts: 1719
  • Country: se
Re: What IDE are you using ?
« Reply #42 on: November 26, 2018, 12:48:35 pm »
A question for those reporting the use of Visual Studio Community/Code: have you used it for ARM embedded projects?
In my case, yes.
Actually, that is the main context I assumed in answering (not that the answer would have been much different).
I would add that this is a hobby for me, so I don't want to/cannot invest large amount of money for professional environments.
At work, I don't code since (too) long time, but still have to review and follow code (mostly Linux based). VS Code is my default tool.

For VS Community, I already described the use of VisualGDB.
As I'm not affiliated with them in any way, except for being their customer, I don't want to harp on it too much, lest I sound like a shill...

For VS Code, these are the embedded related (or in general useful for embedded coding) extensions I use, in more or less importance order:

Plus some others for python, PowerShell etc...

Nandemo wa shiranai wa yo, shitteru koto dake.
 
The following users thanked this post: emece67

Offline spudboy488

  • Regular Contributor
  • *
  • Posts: 136
Re: What IDE are you using ?
« Reply #43 on: November 26, 2018, 12:50:55 pm »
MPLAB v8.92
 

Offline anishkgtTopic starter

  • Frequent Contributor
  • **
  • Posts: 769
  • Country: qa
    • George Hobby
Re: What IDE are you using ?
« Reply #44 on: November 26, 2018, 01:09:04 pm »
For me an IDE should
* Format the code
* take me to the line of errors after built
* color code
* auto complete functions
* Mini map
* peek function in MSv code
* on the fly error correcting
Support for arduino (for me) is essential.


Www.Georgehobby.wordpress.com

Equipments: DSO104z, Hakko FX888D, Brymen BM869s

Sent from my iPhone using Tapatalk
 

Offline legacy

  • Super Contributor
  • ***
  • !
  • Posts: 4415
  • Country: ch
Re: What IDE are you using ?
« Reply #45 on: November 26, 2018, 01:35:49 pm »
For all the rest, you don't want to have the IDE intimately tied to the commands and data structures and conventions of some particular project or vendor tools.

Have you ever worked with AdaMulti (Green Hills Software for Avionics).
AdaMulti is an IDE, with all the features I listed above! And it's what we daily use for business.

Quote
So does Eclipse

Windriver has spent a lot of time on IDEs, deciding then to turn the opensource project Eclipse into Workbench, that has been dedicated to the WxWorks RTOS, for which the IDE does what I have listed above through plug-ins.

It's a good idea! Except ... it's a dead elephant unless you can run it on fast (i7 + a lot of GB or ram) computer.

The WR Workbench is able to create a dependency list from given modules (C files) and create a Makefile. This is also useful for code analyzing since you can literally pass internal data (in RAM) to the plugin that performs the analysis. Unfortunately, it uses a silly metadata approach which is very fragile and prone to disasters, especially if you don't properly do your backups. You have to save the metadata with attention to their timestamps, which requires a special flag used when you invoke tar|gzip or whatever tool you want to use for archiving.

When you extract a project to Doors, or to Stood (here I wish they weren't external programs, I wish they were plugins), you'd best first backup it. People usually forget the proper flag, or worse still, they do backups on through a network file system (which sometimes exposes time-skin), and when people try to resume the backup ... catastrophic bitter ends then follow .... and you end for being obliged to recreate the project from the scratch.

Well, no C file will get lost, but all the constraints gone  :popcorn:

edit:
My point, in case you missed it, is that it's better to have flexible Integration you can configure and tweak yourself than someone else's one-size-fits-all solution that works for .. I don't know .. C++ and Visual SourceSafe, but not Python or PHP and not git or subversion.

Ah, ok! If this was the point. I agree. AdaMulti is only for { C89-99, C++ (limited support), Ada95-2000 }.
But usually, for PHP and Python, I use dedicated tools, different from what I use for C programming.
« Last Edit: November 26, 2018, 01:53:53 pm by legacy »
 

Offline legacy

  • Super Contributor
  • ***
  • !
  • Posts: 4415
  • Country: ch
Re: What IDE are you using ?
« Reply #46 on: November 26, 2018, 01:56:26 pm »
What do you use guys, for Java programming?
 

Offline newbrain

  • Super Contributor
  • ***
  • Posts: 1719
  • Country: se
Re: What IDE are you using ?
« Reply #47 on: November 26, 2018, 02:55:03 pm »
What do you use guys, for Java programming?
Holy water and exorcisms.
Nandemo wa shiranai wa yo, shitteru koto dake.
 
The following users thanked this post: Bassman59

Offline nctnico

  • Super Contributor
  • ***
  • Posts: 26907
  • Country: nl
    • NCT Developments
Re: What IDE are you using ?
« Reply #48 on: November 26, 2018, 03:13:17 pm »
The real question is: exactly what do you need?

- a tool able to edit a text file?
- a tool able to highlight the C syntax?
- a tool able to drive you inside the code by a tag from a list of functions and variables?
- a tool able to compare two C-source files highlighting the differences?
- a tool able to support Makefile so you can compile the project? and upload the hex to the target?
- a tool able to present you the project by which module depends on which module?
- a tool able to automatically presents modules dependencies?
- a tool able to support a debugger/ICE? so you can follow the code, step by step?
- a tool able to support, collect and analyze "triplettes" for dynamic coverage? and to plot the graph ?
- a tool able to automatically generate the Makefile for all the above features?

Only the first three are the business of the text editor. And even then I don't really want Fisher-Price syntax highlighting as much as automatic indentation and matching of brackets and other structure. A subtle calling out of comments and maybe literals from other things is useful, but not much else.

For all the rest, you don't want to have the IDE intimately tied to the commands and data structures and conventions of some particular project or vendor tools. What you (or anyway, I) want is the ability to write arbitrary programs and shell scripts and tie them to function keys (or arbitrary key combinations) in the IDE so that they are called with appropriate arguments and the results are displayed in the IDE.

Then you can use the same IDE with wildly varying projects and toolchains over the decades .. or even in the same day.

emacs does all this. And the build in programming language is great, compared to most of the rest.

So does Eclipse, but it's just soooo heavyweight and opaque. And takes forever to launch. Ugh.
Fortunately you can tune Eclipse to work faster. A bit of Google-fu is all you need. I'm using Eclipse for everything code related and I have used for several languages. Often I use a vendor provided IDE only to compile a project (like Xilinx ISE) and do the editing in Eclipse.
There are small lies, big lies and then there is what is on the screen of your oscilloscope.
 

Offline djacobow

  • Super Contributor
  • ***
  • Posts: 1151
  • Country: us
  • takin' it apart since the 70's
Re: What IDE are you using ?
« Reply #49 on: November 26, 2018, 04:06:31 pm »
I'm probably a broken record on this at this point, but consider life with a powerful text editor and no IDE.

Vim has syntax highlighting and full programmability.
There are add-ons for syntax checking (syntastic), code completion (youcompleteme), git integration (fugitive) and much more.

Throw in the make utility of your choice, and you've got an "IDE" that you never have to abandon, ever.
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf