Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 5 years ago.
Improve this question
for a program I am writing I would need a dictionary between Spanish and English words. I googled a while, but I could not find any database freely available. Does anybody know where or how to get such a database (preferably a simple CSV or XML file)?
So far my best idea to create such a dictionary is to create a little program that looks up an English word on Wikipedia, and uses the language links to extract the correct translation. But I don't want to want to make a million requests to Wikipedia just to generate this database...
I don't need anything fancy, just a mapping from one word to one or possibly multiple translations for this word. Just like a regular dictionary.
Ask around on the Omega Wiki, formerly known as the Ultimate Wiktionary or Wiktionary Z. They collect translations from all languages into all languages, and their data is available in a relational database.
Do you need to translate on the fly at runtime, or is this a one-time translation of labels and messages for a UI?
I'd say that runtime translation will be remarkably difficult, because you'll need more than a dictionary of words. Natural language processing is difficult in any language. Most languages need to know something about context to translate smoothly.
If it's a one-time translation of UI elements, I've had good luck using Google Translate to go from Japanese to English.
To answer your question, I don't have a database like that, sorry.
The problem with natural languages is that they are very context dependent, so the same word in English can mean many things in French. Take the English verb 'to know'. This can be translated into French as either 'savoir' (to know a fact), or connaitre (to know a person, or a town).
I'd be very interested to know if there exists such a database, but I doubt if it exists.
Sites like http://www.reverso.net hedge their bets by showing both results.
Related
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 6 years ago.
Improve this question
I'm working on a embedded project which reads a joystick and moves an actuator within a 3d space accordingly. Now I would like to provide a user prompt available over serial line as an alternative option as user input. User input will be G-Code.
https://en.wikipedia.org/wiki/G-code.
I'm not unexperienced with creating C code, however, I never had to deal with text input before. Are there any well established design patterns on how software of this kind is implemented in a easy-to-read/maintanable way?
No, there is no "design pattern" for a user prompt.
Design patterns are of marginal value, at best. They were created in arm-flapping response to the evident catastrophe that most programmers are unable to think for themselves. Consequently, they are given a lengthy catalogue of previous thoughts, along with finely detailed instructions about how to map their thoughts to these cast-in-stone homologues.
Here's a brilliant example of a "design pattern": it's somehow EVIL to use a global variable. So, instead, instantiate a Singleton class (which--if you're not careful--will require you to employ the brokered services of a SingletonFactory [but I digress]) and provide "getter" and "setter" methods that access the encapsulated datum. Result: instead of one line of code that's out there, on the ledge, provide fifteen lines of code that are out there, on the ledge. HOGWASH!
Many will take offense at this statement. If they but thought about it, they would realize that they have fallen victim to a sham. Design patterns are like rubrics in a "Common Core" English essay assignment: assume that the student is utterly unable to generate creative, properly structured English by himself, and so provide ridiculously detailed "guidance" on just what to say and just how to say it.
Think for yourself. That's the best advice anyone can give you, anywhere, ever.
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 8 years ago.
Improve this question
I started a while ago to learn the C language, and has spent several hours I search THE miracle software.
I am looking for software that import sources of software in C (files.c) and generates a "mind map" of the code with all files, functions, variables, etc ...
Do you know if it exists? It'll help me a lot to understand the architecture of complex software.
Thank you very much for all your answers.
Take a look at the "call graph". This sort of visualization should get you started.
As the comment suggests, Doxygen is a good open-source tool. Take a look at some output here. Doxygen is straight-forward to configure for call-graph generation under *nix. It's a little more complex for Windows. First, check out this SO post: how to get doxygen to produce call & caller graphs for c functions. Doxygen's HTML output provides a number of nice cross-referencing features (files, variables, structs, etc.) in addition to caller/callee graphs.
On the commercial side, Understand for C/C++ has first-rate visualization features. Google "c call graph diagram" for other commercial and open-source options.
Finally, there are some older SO posts, like this one Tools to get a pictorial function call graph of code. Take a look at it.
Look into the program ctags. It is an indexer of names and functions based on the structure of the programming language.
It is quite mature, and has integration with a number of other tools. I use it with an older (but very nice) text editor called vi, but it can be used independently from the command line.
It does not generate a graphical view of the connections. However, in my estimation there are probably too many connections in most C programs to display visually without creating a large amount of information overload.
This answer differs from Throwback's answer in some interesting ways. A call graph can mean a few things. One thing it can mean is the path a running program took through a section of code, and another is the combination of all paths a running program might take through the code, and another is the combination of all paths in the code (whether they can be reached or not).
Your needs will drive which tool you should use.
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 7 years ago.
Improve this question
I'm after a very tiny XML parser for an embedded project. It needs to compile down to 10-15k, doesn't need to validate, and needs to be simple and portable.
I was able to tweak the compilation flags of the following XML parser libraries for C, and cut down more than 50% of their size on my Ubuntu machine. Mini-XML is the only one close to what you requested:
Mini-XML (36K)
Expat (124K)
RXP (184K)
There's a good discussion here:
C XML library for Embedded Systems
I was searching for one recently and I found SimpleXML (http://simplexml.sourceforge.net/) and the slightly larger sxmlc(http://sourceforge.net/projects/sxmlc/)
I find SimpleXML more interesting because it's simpler, I didn't try it but it looks like it matches what I have in mind, a single file(well .h and .c) library that doesn't support exotic XML features.
The simple XML parser is a tiny parser for a subset of XML (everything except entities and namespaces). It uses a simple "one-handler per tag" interface and is suited for use with devices with limited resources.
Try yxml — it's really small and fast non–validating parser.
You can always roll your own implementation. I did this a few years ago, and just now added some interface documentation to the code at mercurial.intuxication.org/hg/cstuff.
Please note that the parser has never been used in a production environment or even been tested more than rudimentarily; comments are non-existent as well, so have fun grokking the code if you need to modify it ;)
I developed sxmlc ("Simple XML in C") exactly to be like that: as little files as possible. It's only one file, with an optional "search" file you can add if you need XPath-like search through the document.
It handles DOM-style loading (the whole document tree in memory) or SAX-style loading (calling callbacks whenever a node is read with its attributes, or text was read on a node). If memory is a concern you'll be interested in SAX.
Some people were also interested by the fact that it can parse either files or memory buffers (useful when you get XML as a web reply).
It handles Unicode files since version 4 through #define, so if you don't need Unicode, just don't define the SXMLC_UNICODE and there won't be any weight increase in the binary.
I also have to say it keeps comments when writing back XML to disk! I always felt sorry when people spend time explaining configuration syntax in XML files ("put 'true' to enable special compression..."), which are wiped when saved back by the application.
It compiles under Linux and Windows. I had good feedback from people happily embedding it in routers.
As I want to keep it as simple as possible, I will probably not add new functions but rather improve the existing ones (and correct bugs, of course! :)). I am not very active in its development, unless bugs are reported.
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 7 years ago.
Improve this question
Currently there exist package like gonzui (example of the implementation here)
for doing source code search.
Is there a similar package that does the same thing except for simple file search.
Basically I have two list of files for file type A and file type B. When the user type a word
in the search box, all files (in "gz" format) with names match to the search term from type A and B will be displayed.
Is there any ready package that does that?
I am aware of CGI implementation via Perl. But it is difficult for me to have a
simple and elegant interface/display in it with CGI.
We use Omnifind which works pretty well. You might also look into Nutch or Lucene.
Do you need it open-source and/or free?
Do you need full unicode support?
Also do you want a search or an index? A search does not use any pre-computed information, for every search you have to porcess all the file data.
For an index you would have to pre-process / index the file data.
DTsearch is a commercial / not free index engine.
The fact that you mention a "database" would indicate to me that you are looking into an index.
There are hooks into the microsoft indexing service and you can also use MsSQL to index text data.
I am not quite sure I understand what you're looking for, or what your use case is exactly.
However, off the top of my head, there's the grep family of tools (grep, fgrep, egrep).
There's also find, which I think is more along the lines of what you're looking for.
And if performance matters, there's locate, which is based on an index that you will have to update periodically.
All of these come pre-installed with most flavors of UNIX.
I hope this helps.
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 6 years ago.
Improve this question
Im an experienced actionscript developer, and relatively new to Objective C.
I decided a good investment of my time would be to master the C language (not C# or C++).
Can anyone recommend the 'best' online tutorials for learning C?
You won't have difficulties understanding the C syntax given your past experience, and unfortunately, most tutorials and introductory books will focus on it much more than they should.
C is full of traps, but it is a simple language which gives you full control on what is going on with your programs. However, it is difficult to master. You will need something more elaborated than a simple tutorial which will be half full of things you probably already know.
I definitely recommand K&R's book if you want to learn the language correctly. Be sure to grab the second edition.
I agree with James' comment, though I would recommend looking over the first paragraphs of a web based tutorial.
Though they're not the best for learning the language itself, you can get a feel for some trivial programs and see if they fit your brain.
The worst thing that can happen here is if you buy a book and can't use the language (for whatever reason).
As far as specific selections... I can't give you any.
As you've asked for online resources only, so here is one
http://www.cprogramming.com/tutorial/c/lesson1.html
Like Alexandre , I would also recommend K & R's book
You should check this out too:
http://www.phy.duke.edu/~rgb/General/c_book/c_book/index.html
I've looked through it, it's got some good examples and it's a good read.