Difference between revisions of "Rosetta Stone"

From Lazarus wiki
Jump to navigationJump to search
m (layout mainly)
(Additional examples)
Line 13: Line 13:
  
 
== Operating systems ==
 
== Operating systems ==
If you know how to do something in an operating system, chances are you can do the same with FPC/Lazarus.
+
If you know how to do something in an operating system, chances are you can do the same using FPC/Lazarus.
  
 
The table below gives a rough mapping of some tasks:
 
The table below gives a rough mapping of some tasks:
Line 29: Line 29:
 
|-
 
|-
 
| dir||ls||Find files in a directory||Lazarus FindAllFiles  
 
| dir||ls||Find files in a directory||Lazarus FindAllFiles  
|-  
+
|-
 +
|?||ldapsearch||Search through Active Directory/LDAP||Use Synapse ldapsend unit to work with LDAP queries; see e.g. [http://leonardorame.blogspot.com/2007_02_01_archive.html example code on Leonardo Ramé's blog]
 +
|-
 
| mkdir||mkdir||Create directory||mkdir; forcedirectories (creates entire path, if necessary)  
 
| mkdir||mkdir||Create directory||mkdir; forcedirectories (creates entire path, if necessary)  
 
|-  
 
|-  
 
| move||mv||Move file to another directory||Within partition/disk: sysutils.renamefile; otherwise copy and delete original  
 
| move||mv||Move file to another directory||Within partition/disk: sysutils.renamefile; otherwise copy and delete original  
 
|-  
 
|-  
| rename, ren||mv||Rename file||sysutils.renamefile (can also \"move\" file between directories, but only on same partition/disk  
+
| rename, ren||mv||Rename file||sysutils.renamefile (can also "move" a file between directories, but only on same partition/disk  
 +
|-
 +
| shutdown||shutdown||Shut down computer||?
 
|-  
 
|-  
| wget, curl||wget, curl||Download file from HTTP/FTP||Multiple optons, e.g. use synapse httpsend or ftpsend units  
+
| wget, curl||wget, curl||Download file from HTTP/FTP||Multiple options, e.g. use synapse httpsend or ftpsend units  
 
|-  
 
|-  
 
|  
 
|  

Revision as of 07:28, 13 February 2012

Introduction

Often, people new to a programming language/library have trouble mapping the things they know how to do in other environments to the new environments.

It can be handy to have a sort of "Rosetta stone" that roughly translates tasks from one environment/language into another.

Programming languages

If you have experience in other programming languages (such as C++, Visual Basic), there are some Rosetta stone web pages that might help you. As FreePascal/Lazarus syntax and library is fairly consistent with Delphi's, sites that "translate" to Delphi are also a valuable resource.

Some useful pages:

Operating systems

If you know how to do something in an operating system, chances are you can do the same using FPC/Lazarus.

The table below gives a rough mapping of some tasks:

Windows/DOS Unix/Linux Description FreePascal/Lazarus
copy cp Copy file Lazarus fileutil.copyfile; roll your own with filestreams
del, erase rm, rm -f Delete file sysutils.deletefile, erase
deltree, rmdir /s rm -r,rm -rf Remove directories with subdirectories Lazarus fileutil.deletedirectory
dir ls Find files in a directory Lazarus FindAllFiles
? ldapsearch Search through Active Directory/LDAP Use Synapse ldapsend unit to work with LDAP queries; see e.g. example code on Leonardo Ramé's blog
mkdir mkdir Create directory mkdir; forcedirectories (creates entire path, if necessary)
move mv Move file to another directory Within partition/disk: sysutils.renamefile; otherwise copy and delete original
rename, ren mv Rename file sysutils.renamefile (can also "move" a file between directories, but only on same partition/disk
shutdown shutdown Shut down computer ?
wget, curl wget, curl Download file from HTTP/FTP Multiple options, e.g. use synapse httpsend or ftpsend units