____ / __/ __ ___ ___ ___ ___ _\ \/ _ \/ -_) _ `/ __/ -_) /___/ .__/\__/\_,_/_/ \__/ /_/ Speare version 1.2.404 The ultra light code editor. (c) 2021 http://www.sevenuc.com (Release date: Jul 11 2021)
Speare is a small and friendly code editor. You can use it to edit source code files, programming and debugging. It designed to make programming feels light, simple and free. Speare not only has an efficient code navigation and call routines tracing ability but also has flexibility to extend it to support special developing requirements. Speare code editor includes an ultra lightweight debugging environment for C, C++, Ruby, mruby, Lua, Python, PHP, Perl and Tcl, and give people complete freedom to control and customise the debugging environment for a new programming language.
Java debugging supported. The Java debugger of Speare support all kinds of JVM that implemented Java Debugger API, JDK all version from 6 and later, all kinds of Java application development. Android application, J2ME (Java ME) games, standalone Java J2SE application and game for desktops, J2EE (Java EE) server side application for all kinds of application server, such as Tomcat, Spring, Weblogic, WebSphere, JBoss (Wildfly), Glassfish, and Jetty etc.
(update: Jul 11 2021)
If you can't open the link above, please launch App Store and found
Screenshot of LLVM with fast code completion and instant diff operation in Speare code editor.
more screenshots: screenshot references.
1. Click main menu "Navigate" → "Toggle Output", to show the debug toolbar.
2. Debug toolbar:
From left to right, Start, Stop, Step Into, Step Out, Run To, Step Over, Show Watches. The "Step Over" is equals to "Step next", and "Step To" is equals to "Continue" in common debugging words, and the "Step To" is the command that tell the debugger run to meet a breakpoint or an exception occurred or the program meet exit. On the rightmost there are three other function units, they are, search items in the stackview, siding stackview, and clean debug output.
Search in the debug output: click in the output area and use the shortcut key "Control + F" to do the searching.
3. Socket port:
You can set the socket communication port number both used by Debug Server and the Speare code editor. Open the Preferences of Speare and select the "Debug Settings" tab then input your number.
Please remember to empty the port number when you switched to debugging with the default builtin programming languages with default port number.
Watches used to evaluate variable or expression and their values can be real-time showing in stack-view when debugging session paused, the nodes normally has a green colour and always placed on the top of stack-view.
Speare code editor support embedded system software development, e.g. Arduino and Raspberry Pi embedded development platform, desktop software and server side application development. Proposed debugging environment support in Speare code editor are: GDB, LLDB, Ruby, mruby, Lua, Python, Perl, PHP, Tcl, Node.js, Dart, AWK and shell. Speare code editor provides very concise and simple interface to add new programming language in it, end user can very easily write a new programming language parser, syntax highlighting, code formatter and debugger for it.
Despite the dragon is evil but it still can't escape under the claws of eagles.
Speare code editor provides an intuitive debugging environment allows adding breakpoints and the execution flow can be viewed and controlled and has the abilities that an IDE debugger will give you over trace execution in code, view the call stack at any point in time, giving you a context for your current stack frame, step into libraries or sub modules that you want to tracing the debug symbols, and change variable values while the program is running. It provides simple interfaces that can be integrated with any command line tools without boring configuration, giving you the flexibility you need to debug code at hand. The debuggers of Speare code editor, the source-level debuggers, helps you step through the code line by line and observe the runtime behaviour of your program and got a better understanding of your code.
Speare code editor is a small PHP IDE that well support all kinds of PHP development, from PHP 5.x to PHP 7.x, framework based on big projects or common command line applications, the above is a screenshot of debugging WordPress in Speare code editor.
Speare code editor provides an ultra lightweight debugging environment for C, C++ and Lua. As a small but productive Lua IDE, Speare well supports all kinds of Lua development with concise and intuitive user interface, and can seamlessly debug C and C++ modules with Lua code in the same environment. The Lua debugger of Speare supports all common versions of Lua and LuaJIT, and you can directly replace the Lua interpreter with your self-compiled version, the version range includes from 5.1.4 and 5.1.5 to 5.2.4, 5.3.5, 5.3.6, and 5.4.2, the download link is here:
Speare code editor support various game engine and frameworks, such as the LÖVE 2D, Moai open source game engine, the Gideros mobile game platform, the Corona 2D game engine, the Marmalade game engine, the Cocos2d and cocos2d-x game engine, the OpenResty Nginx web server and the Lapis web framework, the high performance Prosody instant message server, the JUCI Webgui for embedded devices, the Torch machine learning framework, and the Redis open source database etc.
Speare supports debugging all kinds of Ruby development, mruby/c and mruby, Ruby and Ruby on Rails, please refer this document http://www.sevenuc.com/download/Small_IDE_for_Ruby_development.pdf.
The built-in mruby debugger of Speare full supports mruby development, the lightweight implementation of the Ruby programming language.
mruby_debugger_2.0.1.tar.gz (362KB) for mruby 2.0.1
mruby_debugger_2.1.0.tar.gz (370KB) for mruby 2.1.0
mruby_debugger_2.1.2.tar.gz (368KB) for mruby 2.1.2
mruby_debugger_3.0.0.tar.gz (440KB) for mruby 3.0.0
They obviously know a technology is garbage, a project shouldn't be started, but they don’t have enough courage to admit the mistake, correct the mistake, cancel the project and abandon that technology. On the contrary, they not only want to recover their cost, they even drag customers into big mud puddle and even promote their big lies to make money.
I have used various popular programming languages from DOS era, for small, reliable and strong software:
C is the only choice.
C can make strongest software by programmer crafting with patient and willpower. C is far from a perfect language and it really has many flaws, C++ has more, but no replacement. I've tried Nim in its early stage, it's a good idea but the final result is unacceptable, the result turned out to be an interesting but failed attempt, because it produced a lot of garbage when automatically generating C code, that's very annoying, so I throw it away immediately. And I've tried Wren, a small scripting language, sorry, it really can't compare to Lua, so I have to give it up. Haskell is good at programming language parsing, code generating, concurrency and functional programming, concise and grace, but its runtime made it heavy and burdensome, plenty of other programming languages have the same inherent problem too, big runtime with huge boring dependencies. In short, big runtime is unacceptable, such as C++, huge dependencies is unacceptable, such as Java and Node. From my programming experience, Java have more stronger OOP ability than C++, and Objective-C have more stronger OOP ability than Java, Ruby has the extreamly OOP flexbilty in all of them, but there isn't a perfect programming language in the world can help you make a good software without, without long term programming experience. Despite Rust, Go, OC and Swift try to resolve existing issues in C and C++ programming language, but none of them can replace the importance of C and C++. Master C programming language and make small software is a real programmer's cultivation. → Why small software.
References: → The issue when OOP with C++.pdf.
Common pitfalls of C programming:
C is not safe but it is the strongest programming language and the most strongest softwares were written with it, including operation system and the most important infrastructure of internet and software industry, think about BIND, Apache, Nginx, MySQL, PostgreSQL, SQLite, Berkeley DB, Redis, Memcached, PHP, Perl, Ruby, Python, Lua, Git, FFmpeg and other countless excellent softwares. If sqlite and git were written with C++ or Java, I'll throw them away immediately. C is top professionals' language, a mature developer may needs ten years to really write software with it. The product quality of the software industry is directly proportional to the number of experienced C programming experts.
"C + elegant scripting language" is the reliable, efficient and flexible extending solution.
If you can't write quality C code, that means you're not a real programmer. Most developer have never written a real C software in their life, I wish more and more developer use Speare code editor to develop efficient and excellent software with C instead of current popular bloated programming languages. Small software with strong bone!