Recent

Author Topic: An ASCII logo for Pascal language  (Read 3963 times)

KodeZwerg

  • Hero Member
  • *****
  • Posts: 1395
  • Fifty shades of code.
    • Delphi & FreePascal
Re: An ASCII logo for Pascal language
« Reply #30 on: March 23, 2023, 01:06:38 pm »
I submitted the proposition by KodeZwerg, in blue and white. I hope it will look nice.  ;)
You are welcomed.
And using only the word "Pascal", even with ascii art, shows, in my opinion, poor creativity of the language.
I was more looking how others are doing, exemplary @ VisualStudio.
In my opinion, each Pascal variation has it's own custom logo so what could unite all together better than a simple plain written word?
You can of course prefer a "△▽◬◭◮◸◹◺◿" however it might look like, everyone got it's own taste and that has nothing to do with poor creativity.
« Last Edit: Tomorrow at 31:76:97 by KodeZwerg »

Fred vS

  • Hero Member
  • *****
  • Posts: 3112
    • StrumPract is the musicians best friend
Re: An ASCII logo for Pascal language
« Reply #31 on: March 23, 2023, 01:33:56 pm »
..  that has nothing to do with poor creativity.

OK, so it's about fear of creating something abstract.
But okay, I will forget the idea of Pascal Triangle or something else, it is too abstract for Pascal developers.

PS: Your Pascal ascii is very great (but it is not pure ascii art, it dont use "classical" ascii chars).

Fre;D
« Last Edit: March 23, 2023, 01:38:11 pm by Fred vS »
I use Lazarus 2.2.0 32/64 and FPC 3.2.2 32/64 on Debian 11 64 bit, Windows 10, Windows 7 32/64, Windows XP 32,  FreeBSD 64.
Widgetset: fpGUI, MSEgui, Win32, GTK2, Qt.

https://github.com/fredvs
https://gitlab.com/fredvs
https://codeberg.org/fredvs

af0815

  • Hero Member
  • *****
  • Posts: 1203
Re: An ASCII logo for Pascal language
« Reply #32 on: March 23, 2023, 02:14:00 pm »
To see actual logos an banner, here is a wiki page https://wiki.freepascal.org/Logos_and_Banners
I see for fpc and lazarus the are some icons and banners, but not for the language pascal itself.
regards
Andreas

Roland57

  • Sr. Member
  • ****
  • Posts: 390
    • GitLab
Re: An ASCII logo for Pascal language
« Reply #33 on: March 23, 2023, 02:31:48 pm »
Let us keep cool gentlemen. All ideas are welcome. O:-)

Something funny I have just discovered by reading a document about Pascal triangle. What happens if we assign two different colors respectively to even and odd numbers of the triangle? Anwer in the following program.


« Last Edit: March 24, 2023, 11:58:06 am by Roland57 »

Fred vS

  • Hero Member
  • *****
  • Posts: 3112
    • StrumPract is the musicians best friend
Re: An ASCII logo for Pascal language
« Reply #34 on: March 23, 2023, 03:09:20 pm »
Anwer in the following program.

Wow!
For Linux users, you may need to install  libxxf86dga-dev package.
Code: Bash  [Select][+][-]
  1. sudo apt-get install libxxf86dga-dev

About "Pascal", in my case, I discover this name at college-math-lesson because of his triangle and the Pascal language (much) later.
I use Lazarus 2.2.0 32/64 and FPC 3.2.2 32/64 on Debian 11 64 bit, Windows 10, Windows 7 32/64, Windows XP 32,  FreeBSD 64.
Widgetset: fpGUI, MSEgui, Win32, GTK2, Qt.

https://github.com/fredvs
https://gitlab.com/fredvs
https://codeberg.org/fredvs

Fred vS

  • Hero Member
  • *****
  • Posts: 3112
    • StrumPract is the musicians best friend
Re: An ASCII logo for Pascal language
« Reply #35 on: March 23, 2023, 03:34:59 pm »
There is also the Pascal Theorem that can give some abstract ideas  ;) :
https://en.wikipedia.org/wiki/Pascal%27s_theorem

It was formulated by Blaise Pascal in a note written in 1639 when he was 16 years old.

( I like the Hexagrammum Mysticum:-X )
« Last Edit: March 26, 2023, 04:47:04 pm by Fred vS »
I use Lazarus 2.2.0 32/64 and FPC 3.2.2 32/64 on Debian 11 64 bit, Windows 10, Windows 7 32/64, Windows XP 32,  FreeBSD 64.
Widgetset: fpGUI, MSEgui, Win32, GTK2, Qt.

https://github.com/fredvs
https://gitlab.com/fredvs
https://codeberg.org/fredvs

Kays

  • Hero Member
  • *****
  • Posts: 502
  • Whasup!?
    • KaiBurghardt.de
Re: An ASCII logo for Pascal language
« Reply #36 on: March 23, 2023, 09:55:44 pm »
FPC has command line option -l (small L) which states: write logo, but does nothing.  :(
I never understood what that options does.  :-[
The ‑l option has been subject of the FPC logo thread.

A simplified ASCII picture of Blaise Pascal will a good idea, but the question is, is the picture free for such a using.
This is imaginably a poor idea as a picture of Blaise Pascal is already associated with the GNU Pascal Compiler. Well, it’s a combination of a gnu and BP.
Yours Sincerely
Kai Burghardt

Fred vS

  • Hero Member
  • *****
  • Posts: 3112
    • StrumPract is the musicians best friend
Re: An ASCII logo for Pascal language
« Reply #37 on: March 23, 2023, 10:47:15 pm »
A simplified ASCII picture of Blaise Pascal will a good idea, but the question is, is the picture free for such a using.
This is imaginably a poor idea as a picture of Blaise Pascal is already associated with the GNU Pascal Compiler.

Also, a picture of the appearance of the head of Blaise is ok for a compiler, but for the Language I would prefer a picture of something inside the head of Blaise.
Like a representation of one of his theorems or concepts.
I use Lazarus 2.2.0 32/64 and FPC 3.2.2 32/64 on Debian 11 64 bit, Windows 10, Windows 7 32/64, Windows XP 32,  FreeBSD 64.
Widgetset: fpGUI, MSEgui, Win32, GTK2, Qt.

https://github.com/fredvs
https://gitlab.com/fredvs
https://codeberg.org/fredvs

Roland57

  • Sr. Member
  • ****
  • Posts: 390
    • GitLab
Re: An ASCII logo for Pascal language
« Reply #38 on: March 24, 2023, 06:54:35 am »
The ‑l option has been subject of the FPC logo thread.

Thanks.

Wow!

I remade my little demo, using BGRABitmap.

P.-S. For Windows users, please uncheck -WG in project options.

Demo updated.
« Last Edit: March 24, 2023, 11:59:05 am by Roland57 »

Fred vS

  • Hero Member
  • *****
  • Posts: 3112
    • StrumPract is the musicians best friend
Re: An ASCII logo for Pascal language
« Reply #39 on: March 24, 2023, 01:07:01 pm »
I remade my little demo, using BGRABitmap.

Hello Roland.

I get a error at compilation, see screenshot.
[FIXED]

Re-WOW, congrats  ;).

Fre;D
« Last Edit: March 24, 2023, 01:21:01 pm by Fred vS »
I use Lazarus 2.2.0 32/64 and FPC 3.2.2 32/64 on Debian 11 64 bit, Windows 10, Windows 7 32/64, Windows XP 32,  FreeBSD 64.
Widgetset: fpGUI, MSEgui, Win32, GTK2, Qt.

https://github.com/fredvs
https://gitlab.com/fredvs
https://codeberg.org/fredvs

avra

  • Hero Member
  • *****
  • Posts: 2457
    • Additional info
Re: An ASCII logo for Pascal language
« Reply #40 on: March 26, 2023, 03:44:07 am »
Huh, how did you do for the colors (in the forum-site)?
Thats an effect of using forum's pascal code color highlighting. Colors would be different if I had chosen some other language.
 :D
ct2laz - Conversion between Lazarus and CodeTyphon
bithelpers - Bit manipulation for standard types
pasettimino - Siemens S7 PLC lib

BobDog

  • Sr. Member
  • ****
  • Posts: 390
Re: An ASCII logo for Pascal language
« Reply #41 on: March 27, 2023, 01:15:22 am »

Here is the full Pascal hexagon from:
https://en.wikipedia.org/wiki/Pascal%27s_theorem
Code: Pascal  [Select][+][-]
  1. {$mode fpc}
  2. uses
  3. ptcGraph, ptcCrt,
  4.   SysUtils,math;
  5.  
  6.  
  7. Type Point=object
  8. x,y:double;
  9. End;
  10.  
  11. Type _Line=object
  12.     s,f:point;
  13. End;
  14.  
  15. type aol=array of _Line;
  16. type aop=array of point;
  17.  
  18. function equals(a,b:point;tol:double):boolean;
  19. var
  20. z:boolean=false;
  21. begin
  22. if (abs(a.x-b.x)<tol) and (abs(a.y-b.y)<tol) then z:=true;// -1
  23. exit(z);
  24. end;
  25.  
  26. procedure draw(L:_Line);
  27. begin
  28. line(trunc(L.s.x),trunc(L.s.y),trunc(L.f.x),trunc(L.f.y));
  29. end;
  30.  
  31.  
  32. Function isleft(L:_Line;p:point):integer;
  33. begin
  34.     exit (-sign((L.s.x-L.f.x)*(p.y-L.f.y)-(p.x-L.f.x)*(L.s.y-L.f.y)));
  35. End;
  36.  
  37. Function intersects(L1:_Line;L2:_Line):boolean;
  38. begin
  39.     If (isleft(L2,L1.s) = isleft(L2,L1.f)) Then exit (false);
  40.     If (isleft(L1,L2.s) = isleft(L1,L2.f)) Then exit (false);
  41.     exit(true);
  42. End;
  43.  
  44.  
  45. function intersections(l1:_Line;l2:_Line;var _out:point):boolean;
  46. var
  47. p1,p2,p3,p4:point;
  48. x12,x34,y12,y34:single;
  49.  c:single;
  50.  a,b,x,y:single;
  51.  begin
  52.  p1:=l1.s;p2:=l1.f;p3:=l2.s;p4:=l2.f;
  53.  x12:=p1.x-p2.x;x34:=p3.x-p4.x;y12:=p1.y-p2.y;y34:=p3.y-p4.y;
  54.  c:=x12 * y34 - y12 * x34;
  55. if (abs(c) < 0.01) then exit(false);
  56.   a := p1.x * p2.y - p1.y * p2.x;
  57.   b := p3.x * p4.y - p3.y * p4.x;
  58.   x := (a * x34 - b * x12) / c;
  59.   y := (a * y34 - b * y12) / c;
  60.   _out.x:=x;
  61.   _out.y:=y;
  62.   exit(true)
  63. end;
  64.  
  65. procedure ellipse(x,y:integer;rx:double;ry:double;var a:aop);
  66.     const pi=4*arctan(1);
  67.     var
  68.     counter:int32;
  69.     z:double=0;
  70.     xp,yp:double;
  71.     begin
  72.     counter:=0;
  73.     repeat
  74.         xp:=x+rx*cos(z);
  75.          yp:=y+ry*sin(z);
  76.         counter:=counter+1;
  77.         setlength(a,counter);
  78.         a[counter-1].x:=xp;
  79.         a[counter-1].y:=yp;
  80.        putpixel(trunc(xp), trunc(yp),white);
  81.        z:=z+0.05;
  82.         until (z>2*pi);
  83.     end;
  84.    
  85.     procedure setlines(a:aop;var ret:aop);
  86.     var
  87.     k,n,n1,n2,flag,m:integer;
  88.     b:aop=nil;
  89.     l:aol=nil;
  90.      _out:point;
  91.      centre:point;
  92.     begin
  93.     setcolor(blue);
  94.     centre.x:=400;
  95.     centre.y:=300;
  96.     _out.x:=0;
  97.     _out.y:=0;
  98.     setlength(b,6);
  99.     k:=10;
  100.     for n :=0 to 5 do
  101.     begin
  102.         b[n]:=a[k];
  103.       fillellipse(trunc(a[k].x),trunc(a[k].y),4,4);
  104.     k:=k+high(a) div 6;
  105.      end;
  106.      k:=0;
  107.      for n1 :=0 to 4 do
  108.      begin
  109.      for n2 :=n1+1 to 5 do
  110.      begin
  111.         k:=k+1;
  112.         setlength(l,k);
  113.         L[k-1].s:=b[n1];
  114.         L[k-1].f:=b[n2];
  115.     end;
  116.     end;
  117.     k:=0;
  118.      for n1 :=0 to high(l)-1 do
  119.      begin
  120.      for n2 :=n1+1 to high(l) do
  121.      begin
  122.      flag:=0;
  123.       if (intersects(L[n1],L[n2])) then
  124.       begin
  125.        intersections(L[n1],L[n2],_out);
  126.           flag:=1;
  127.          
  128.           for m :=0 to high(b) do
  129.           begin
  130.        if equals(_out,b[m],2) then
  131.         begin
  132.         flag:=0;
  133.         break;
  134.             end;  
  135.         end;
  136.       end;
  137.    
  138.      if (flag=1) then  
  139.       begin
  140.       draw(L[n1]);
  141.       draw(l[n2]);
  142.       if equals(_out,centre,40)=false then
  143.       begin
  144.       k:=k+1;
  145.       setlength(ret,k);
  146.       ret[k-1]:=_out;
  147.        setcolor(white);
  148.       fillellipse(trunc(_out.x), trunc(_out.y),2,2);
  149.       setcolor(blue);
  150.       end;
  151.       end;
  152.       end;
  153.       end;
  154.     end;
  155.    
  156.  
  157.     procedure circulate(var p:aop);
  158.        procedure swap(var a, b: point);
  159.       var temp: point;
  160.      begin
  161.      temp := a; a := b; b := temp;
  162.      end;
  163.    
  164.     var
  165.     p1,p2:integer;
  166.     c:point;
  167.     begin
  168.     c.x:=400;
  169.     c.y:=300;
  170. For p1 := 0 To high(p)-1 do
  171. begin
  172.     For p2 := p1 + 1 To high(p) do
  173.     begin
  174.         if arctan2(p[p1].y-c.y,p[p1].x-c.x)< arctan2(p[p2].y-c.y,p[p2].x-c.x) then
  175.         begin
  176.             swap (p[p1],p[p2]);
  177.             end;
  178.          end;
  179.          end;
  180. end;
  181.  
  182.    
  183.     procedure drawpascallines(ret:aop);
  184.     var
  185.     n:integer;
  186.     begin
  187.     circulate(ret);
  188.     for n:=0 to high(ret)-1 do
  189.     line(trunc(ret[n].x),trunc(ret[n].y),trunc(ret[n+1].x),trunc(ret[n+1].y));
  190.     line(trunc(ret[high(ret)].x),trunc(ret[high(ret)].y),trunc(ret[0].x),trunc(ret[0].y));
  191.     end;
  192.    
  193. //main//
  194. var
  195.  a:aop=nil;
  196.  ret:aop=nil;
  197.  gd, gm: SmallInt;
  198.  ch:char;
  199. begin
  200. {==========  set up graph =========}
  201.       gd := D8bit;
  202.       gm :=  m800x600;
  203.       InitGraph(gd, gm, '');
  204.       if GraphResult <> grok then  halt;
  205.       setbkcolor(black);
  206.       settextstyle(BoldFont,HorizDir,1);
  207.       setwritemode(copyput);
  208.       repeat
  209.       ClearViewPort;
  210.       setcolor(white);
  211.       outtextxy(10,10,'Pascal hexagon demo');
  212.       outtextxy(10,40,'Space key to refresh -- esc key to end.');
  213.       ellipse(400,300,randomrange(100,300),randomrange(100,300),a);
  214.      
  215.       setlines(a,ret);
  216.       setcolor(red);
  217.       drawpascallines(ret);
  218.       ch:=readkey;
  219.       sleep(10);
  220.       until (ord(ch)= 27);
  221.      
  222.      closegraph;
  223. end.
  224.  
The hexagon is coloured red within the ellipse.
tested Win 10 64 bits.

Fred vS

  • Hero Member
  • *****
  • Posts: 3112
    • StrumPract is the musicians best friend
Re: An ASCII logo for Pascal language
« Reply #42 on: March 27, 2023, 01:36:09 am »
Here is the full Pascal hexagon from:
https://en.wikipedia.org/wiki/Pascal%27s_theorem
Code: Pascal  [Select][+][-]
  1. {$mode fpc}
  2. uses
  3. ptcGraph, ptcCrt,
  4.   SysUtils,math;
  5.  
  6.  
  7. Type Point=object
  8. x,y:double;
  9. End;
  10.  
  11. Type _Line=object
  12.     s,f:point;
  13. End;
  14.  
  15. type aol=array of _Line;
  16. type aop=array of point;
  17.  
  18. function equals(a,b:point;tol:double):boolean;
  19. var
  20. z:boolean=false;
  21. begin
  22. if (abs(a.x-b.x)<tol) and (abs(a.y-b.y)<tol) then z:=true;// -1
  23. exit(z);
  24. end;
  25.  
  26. procedure draw(L:_Line);
  27. begin
  28. line(trunc(L.s.x),trunc(L.s.y),trunc(L.f.x),trunc(L.f.y));
  29. end;
  30.  
  31.  
  32. Function isleft(L:_Line;p:point):integer;
  33. begin
  34.     exit (-sign((L.s.x-L.f.x)*(p.y-L.f.y)-(p.x-L.f.x)*(L.s.y-L.f.y)));
  35. End;
  36.  
  37. Function intersects(L1:_Line;L2:_Line):boolean;
  38. begin
  39.     If (isleft(L2,L1.s) = isleft(L2,L1.f)) Then exit (false);
  40.     If (isleft(L1,L2.s) = isleft(L1,L2.f)) Then exit (false);
  41.     exit(true);
  42. End;
  43.  
  44.  
  45. function intersections(l1:_Line;l2:_Line;var _out:point):boolean;
  46. var
  47. p1,p2,p3,p4:point;
  48. x12,x34,y12,y34:single;
  49.  c:single;
  50.  a,b,x,y:single;
  51.  begin
  52.  p1:=l1.s;p2:=l1.f;p3:=l2.s;p4:=l2.f;
  53.  x12:=p1.x-p2.x;x34:=p3.x-p4.x;y12:=p1.y-p2.y;y34:=p3.y-p4.y;
  54.  c:=x12 * y34 - y12 * x34;
  55. if (abs(c) < 0.01) then exit(false);
  56.   a := p1.x * p2.y - p1.y * p2.x;
  57.   b := p3.x * p4.y - p3.y * p4.x;
  58.   x := (a * x34 - b * x12) / c;
  59.   y := (a * y34 - b * y12) / c;
  60.   _out.x:=x;
  61.   _out.y:=y;
  62.   exit(true)
  63. end;
  64.  
  65. procedure ellipse(x,y:integer;rx:double;ry:double;var a:aop);
  66.     const pi=4*arctan(1);
  67.     var
  68.     counter:int32;
  69.     z:double=0;
  70.     xp,yp:double;
  71.     begin
  72.     counter:=0;
  73.     repeat
  74.         xp:=x+rx*cos(z);
  75.          yp:=y+ry*sin(z);
  76.         counter:=counter+1;
  77.         setlength(a,counter);
  78.         a[counter-1].x:=xp;
  79.         a[counter-1].y:=yp;
  80.        putpixel(trunc(xp), trunc(yp),white);
  81.        z:=z+0.05;
  82.         until (z>2*pi);
  83.     end;
  84.    
  85.     procedure setlines(a:aop;var ret:aop);
  86.     var
  87.     k,n,n1,n2,flag,m:integer;
  88.     b:aop=nil;
  89.     l:aol=nil;
  90.      _out:point;
  91.      centre:point;
  92.     begin
  93.     setcolor(blue);
  94.     centre.x:=400;
  95.     centre.y:=300;
  96.     _out.x:=0;
  97.     _out.y:=0;
  98.     setlength(b,6);
  99.     k:=10;
  100.     for n :=0 to 5 do
  101.     begin
  102.         b[n]:=a[k];
  103.       fillellipse(trunc(a[k].x),trunc(a[k].y),4,4);
  104.     k:=k+high(a) div 6;
  105.      end;
  106.      k:=0;
  107.      for n1 :=0 to 4 do
  108.      begin
  109.      for n2 :=n1+1 to 5 do
  110.      begin
  111.         k:=k+1;
  112.         setlength(l,k);
  113.         L[k-1].s:=b[n1];
  114.         L[k-1].f:=b[n2];
  115.     end;
  116.     end;
  117.     k:=0;
  118.      for n1 :=0 to high(l)-1 do
  119.      begin
  120.      for n2 :=n1+1 to high(l) do
  121.      begin
  122.      flag:=0;
  123.       if (intersects(L[n1],L[n2])) then
  124.       begin
  125.        intersections(L[n1],L[n2],_out);
  126.           flag:=1;
  127.          
  128.           for m :=0 to high(b) do
  129.           begin
  130.        if equals(_out,b[m],2) then
  131.         begin
  132.         flag:=0;
  133.         break;
  134.             end;  
  135.         end;
  136.       end;
  137.    
  138.      if (flag=1) then  
  139.       begin
  140.       draw(L[n1]);
  141.       draw(l[n2]);
  142.       if equals(_out,centre,40)=false then
  143.       begin
  144.       k:=k+1;
  145.       setlength(ret,k);
  146.       ret[k-1]:=_out;
  147.        setcolor(white);
  148.       fillellipse(trunc(_out.x), trunc(_out.y),2,2);
  149.       setcolor(blue);
  150.       end;
  151.       end;
  152.       end;
  153.       end;
  154.     end;
  155.    
  156.  
  157.     procedure circulate(var p:aop);
  158.        procedure swap(var a, b: point);
  159.       var temp: point;
  160.      begin
  161.      temp := a; a := b; b := temp;
  162.      end;
  163.    
  164.     var
  165.     p1,p2:integer;
  166.     c:point;
  167.     begin
  168.     c.x:=400;
  169.     c.y:=300;
  170. For p1 := 0 To high(p)-1 do
  171. begin
  172.     For p2 := p1 + 1 To high(p) do
  173.     begin
  174.         if arctan2(p[p1].y-c.y,p[p1].x-c.x)< arctan2(p[p2].y-c.y,p[p2].x-c.x) then
  175.         begin
  176.             swap (p[p1],p[p2]);
  177.             end;
  178.          end;
  179.          end;
  180. end;
  181.  
  182.    
  183.     procedure drawpascallines(ret:aop);
  184.     var
  185.     n:integer;
  186.     begin
  187.     circulate(ret);
  188.     for n:=0 to high(ret)-1 do
  189.     line(trunc(ret[n].x),trunc(ret[n].y),trunc(ret[n+1].x),trunc(ret[n+1].y));
  190.     line(trunc(ret[high(ret)].x),trunc(ret[high(ret)].y),trunc(ret[0].x),trunc(ret[0].y));
  191.     end;
  192.    
  193. //main//
  194. var
  195.  a:aop=nil;
  196.  ret:aop=nil;
  197.  gd, gm: SmallInt;
  198.  ch:char;
  199. begin
  200. {==========  set up graph =========}
  201.       gd := D8bit;
  202.       gm :=  m800x600;
  203.       InitGraph(gd, gm, '');
  204.       if GraphResult <> grok then  halt;
  205.       setbkcolor(black);
  206.       settextstyle(BoldFont,HorizDir,1);
  207.       setwritemode(copyput);
  208.       repeat
  209.       ClearViewPort;
  210.       setcolor(white);
  211.       outtextxy(10,10,'Pascal hexagon demo');
  212.       outtextxy(10,40,'Space key to refresh -- esc key to end.');
  213.       ellipse(400,300,randomrange(100,300),randomrange(100,300),a);
  214.      
  215.       setlines(a,ret);
  216.       setcolor(red);
  217.       drawpascallines(ret);
  218.       ch:=readkey;
  219.       sleep(10);
  220.       until (ord(ch)= 27);
  221.      
  222.      closegraph;
  223. end.
  224.  
The hexagon is coloured red within the ellipse.
tested Win 10 64 bits.

Super WOW, congrats  :).

To make it work for Unix OS, just add as first line of uses section this:

Code: Pascal  [Select][+][-]
  1.  uses
  2.     {$ifdef unix} cthreads, {$endif} // Add this
  3.  
  4.     ptcGraph, ptcCrt,
  5.       SysUtils,math;


[EDIT]: In your demo it is the Pascal Hexagram ( but it can become a Hexagon when all lines have same angle )

https://en.wikipedia.org/wiki/Hexagram
vs
https://en.wikipedia.org/wiki/Hexagon

[EDIT2] The original name of the theorem is: hexagrammum mysticum theorem.
              So, be careful when tuning with this formula.  :-X
« Last Edit: March 27, 2023, 02:40:03 am by Fred vS »
I use Lazarus 2.2.0 32/64 and FPC 3.2.2 32/64 on Debian 11 64 bit, Windows 10, Windows 7 32/64, Windows XP 32,  FreeBSD 64.
Widgetset: fpGUI, MSEgui, Win32, GTK2, Qt.

https://github.com/fredvs
https://gitlab.com/fredvs
https://codeberg.org/fredvs

Roland57

  • Sr. Member
  • ****
  • Posts: 390
    • GitLab
Re: An ASCII logo for Pascal language
« Reply #43 on: March 27, 2023, 05:53:56 am »
@BobDog

Beautiful!

@Fred

Thank you for the links. I didn't know the definition of the hexagram.

mika

  • Jr. Member
  • **
  • Posts: 91
Re: An ASCII logo for Pascal language
« Reply #44 on: March 27, 2023, 11:38:05 am »
I was randomly browsing and stumble on this Pascal logo. It does look great in comparison with other programing language logos.
« Last Edit: March 27, 2023, 11:40:15 am by mika »

 

TinyPortal © 2005-2018