Historical NewsExamples, Revision 15

Here are short eucode examples that will appear on the home page (News). Examples should be short and separated by an HR ----. Examples should include a 1 or 2 line beginning comment explaining what the demo is attempting to show. Don't include examples > 8 lines long and figure you have about 45 characters wide. Make the examples show something nice, important, elegant and attractive to people who may be considering Euphoria. The more we have the better.

To test your new addition, access the main news page with ?example=XYZ, 1 being the first example.

This introductory text will be skipped.


-- Euphoria is simple 
 
puts(1, "Hello, World!") 

-- Euphoria has powerful sequences 
 
sequence nums = { 5, 6, 7 } 
? nums * 2 
-- Output: { 10, 12, 14 } 
? nums * { 2, 3, 4 } 
-- Output: { 10, 18, 28 } 

-- user-defined types made simple: 
 
type pair (object field_value) 
    if sequence(field_value) and length(field_value) = 2 then 
       return 1  -- Valid data 
    else 
       return 0 -- invalid data 
    end if 
end type 
-- types are checked on every assignment.  
pair p1 = { 2, 3 } -- assignment 
pair p2 = { 5,6,7 }  -- fails with a type_check error 
pair p3 = p1 & 0  -- fails with a type_check error 

-- Euphoria is testable 
include std/unittest.e 
 
test_equal("1 plus 1 should be 2",  
           2, 1 + 1) 
test_report() 

-- Euphoria is innovative 
integer easy = 1_923_993, hard = 1923993 
 
printf(1, "%d = %d\n", { easy, hard }) 
 
-- Output: 1923993 = 1923993 

-- Euphoria is innovative 
while 1 label "families" do 
  while 1 do -- labels are optional 
    while 1 label "children" do 
      exit "families" -- exit top level while 
    end while 
  end while 
end while 

-- Euphoria has power 
switch abc with fallthru do 
  case 1 then 
  case 2 then 
    puts(1, "1 hit and fell through to 2") 
    break 
  case 3, 4, "John" then 
    puts(1, "Was 3, 4 or 'John'") 
end switch 
-- Default is w/o fallthru 

Can be interpreted or compiled: 
    $ eui hello.ex 
    Hello, World! 
    $ euc hello.ex 
    Building... gcc -o hello hello.c 
    $ ./hello 
    Hello, World! 


Euphoria is cross platform: 
    C:\Euphoria> eui hello.ex 
    Hello, World! 
    [linux@~] $ eui hello.ex 
    Hello, World! 
    [osx@~] eui hello.ex 
    Hello, World! 


Euphoria is not complex; it only has 4 built-in types.

  • atom : Holds any number.
  • sequence : Holds a dynamically resizeable list of objects.
  • integer : Holds 30-bit signed integers; faster than atom
  • object : Holds any of the above.

Search



Quick Links

User menu

Not signed in.

Misc Menu