Random Thread

Topics that can go away
Travis B.
Posts: 6292
Joined: Sun Jul 15, 2018 8:52 pm

Re: Random Thread

Post by Travis B. »

dɮ the phoneme wrote: Mon Jan 18, 2021 12:59 pm I am thinking about trying to (re)learn how to program. In highschool I took programing classes for a couple years, where I learned C++, and I studied python on my own a bit around the same time. I've forgotten absolutely all of it though. If I did want to pick it back up again, does anyone have any recommendations on what language to learn? I'm inclined to go back to C++, or maybe try and learn C instead, but perhaps something more modern would be better? I don't know... the mathematician in me wants to try Haskell.
You should (re)learn a number of languages, not in any particular order. Relearning Python would be very useful, it is a very good all-around scripting language, but I would learn Java if you are thinking of getting a job programming. Likewise, in the job department JavaScript and SQL are things you should have. In this day and age, C and C++ are primarily suited for embedded systems, kernel and driver programming, and working on existing codebases written in those languages (which are large and many). About Haskell, I am personally a fan of that language, even though it's been a while since I've worked in it (mostly because I have been preoccupied with writing Forth systems for the last couple of years); it will surely be a major mind-bender and you will learn a lot from it. There are too many languages for me to talk about in this post, but those are a good few to start with.
Yaaludinuya siima d'at yiseka ha wohadetafa gaare.
Ennadinut'a gaare d'ate ha eetatadi siiman.
T'awraa t'awraa t'awraa t'awraa t'awraa t'awraa t'awraa.
bradrn
Posts: 5721
Joined: Fri Oct 19, 2018 1:25 am

Re: Random Thread

Post by bradrn »

Travis B. wrote: Mon Jan 18, 2021 2:49 pm
dɮ the phoneme wrote: Mon Jan 18, 2021 12:59 pm I am thinking about trying to (re)learn how to program. In highschool I took programing classes for a couple years, where I learned C++, and I studied python on my own a bit around the same time. I've forgotten absolutely all of it though. If I did want to pick it back up again, does anyone have any recommendations on what language to learn? I'm inclined to go back to C++, or maybe try and learn C instead, but perhaps something more modern would be better? I don't know... the mathematician in me wants to try Haskell.
You should (re)learn a number of languages, not in any particular order. Relearning Python would be very useful, it is a very good all-around scripting language, but I would learn Java if you are thinking of getting a job programming. Likewise, in the job department JavaScript and SQL are things you should have. In this day and age, C and C++ are primarily suited for embedded systems, kernel and driver programming, and working on existing codebases written in those languages (which are large and many). About Haskell, I am personally a fan of that language, even though it's been a while since I've worked in it (mostly because I have been preoccupied with writing Forth systems for the last couple of years); it will surely be a major mind-bender and you will learn a lot from it. There are too many languages for me to talk about in this post, but those are a good few to start with.
I agree with most of the recommendations here. (Particularly the endorsement of Haskell!) However, I’m not sure I agree with the recommendation to learn several languages at the same time (or even close together), especially for a beginner. I’d advise finding one language, learning it well, making some applications with it, and only then moving on to other languages — you’ll find that once you know one language really well, you can get started with most others within a couple of days, since most programming languages are pretty similar.

As for concrete language recommendations: as I said, I agree with Travis in his assessment of Python, Java, JavaScript, C, C++, Haskell. Other languages to consider:
  • C# — Microsoft’s primary programming language. Very similar to Java. (It was one of the first languages I learnt; there’s a good tutorial at https://www.homeandlearn.co.uk/csharp/csharp.html.)
  • Swift — Apple’s primary programming language.
  • PHP — used to write websites. (This board runs on PHP.) Quite old, but has a corresponding reputation for being horrifically hard to use (though the newer versions are reportedly much better).
  • Rust — a relatively new language, but already seeing wide use. Essentially a modern variant of lower-level languages like C and C++.
  • Go — another relatively new language seeing wide use.
  • TypeScript — a modern dialect of JavaScript with static types. As with Rust and Go, newish but already seeing wide use — sometimes it feels like most current ‘JavaScript’ programs are actually compiled from TypeScript.
  • If you want to do mathematical and scientific stuff, you’ll want to learn one of MATLAB, R, Julia, Fortran. I don’t know much about Julia, but the other languages aren’t too pleasant: Fortran is so old that it is considered the first programming language ever created, I’m currently using MATLAB and hating every minute of it, and I hear R has a similar reputation. They’re unavoidable though if you want to do this sort of programming.
Personally, for a ‘first language’, I’d recommend learning one of Python, JavaScript, C#, Swift, Java or Haskell; I’d leave the rest for later, though it’s good to at least be aware that they exist.
Conlangs: Scratchpad | Texts | antilanguage
Software: See http://bradrn.com/projects.html
Other: Ergativity for Novices

(Why does phpBB not let me add >5 links here?)
Travis B.
Posts: 6292
Joined: Sun Jul 15, 2018 8:52 pm

Re: Random Thread

Post by Travis B. »

bradrn wrote: Mon Jan 18, 2021 6:59 pm
Travis B. wrote: Mon Jan 18, 2021 2:49 pm
dɮ the phoneme wrote: Mon Jan 18, 2021 12:59 pm I am thinking about trying to (re)learn how to program. In highschool I took programing classes for a couple years, where I learned C++, and I studied python on my own a bit around the same time. I've forgotten absolutely all of it though. If I did want to pick it back up again, does anyone have any recommendations on what language to learn? I'm inclined to go back to C++, or maybe try and learn C instead, but perhaps something more modern would be better? I don't know... the mathematician in me wants to try Haskell.
You should (re)learn a number of languages, not in any particular order. Relearning Python would be very useful, it is a very good all-around scripting language, but I would learn Java if you are thinking of getting a job programming. Likewise, in the job department JavaScript and SQL are things you should have. In this day and age, C and C++ are primarily suited for embedded systems, kernel and driver programming, and working on existing codebases written in those languages (which are large and many). About Haskell, I am personally a fan of that language, even though it's been a while since I've worked in it (mostly because I have been preoccupied with writing Forth systems for the last couple of years); it will surely be a major mind-bender and you will learn a lot from it. There are too many languages for me to talk about in this post, but those are a good few to start with.
I agree with most of the recommendations here. (Particularly the endorsement of Haskell!) However, I’m not sure I agree with the recommendation to learn several languages at the same time (or even close together), especially for a beginner. I’d advise finding one language, learning it well, making some applications with it, and only then moving on to other languages — you’ll find that once you know one language really well, you can get started with most others within a couple of days, since most programming languages are pretty similar.

As for concrete language recommendations: as I said, I agree with Travis in his assessment of Python, Java, JavaScript, C, C++, Haskell. Other languages to consider:
  • C# — Microsoft’s primary programming language. Very similar to Java. (It was one of the first languages I learnt; there’s a good tutorial at https://www.homeandlearn.co.uk/csharp/csharp.html.)
  • Swift — Apple’s primary programming language.
  • PHP — used to write websites. (This board runs on PHP.) Quite old, but has a corresponding reputation for being horrifically hard to use (though the newer versions are reportedly much better).
  • Rust — a relatively new language, but already seeing wide use. Essentially a modern variant of lower-level languages like C and C++.
  • Go — another relatively new language seeing wide use.
  • TypeScript — a modern dialect of JavaScript with static types. As with Rust and Go, newish but already seeing wide use — sometimes it feels like most current ‘JavaScript’ programs are actually compiled from TypeScript.
  • If you want to do mathematical and scientific stuff, you’ll want to learn one of MATLAB, R, Julia, Fortran. I don’t know much about Julia, but the other languages aren’t too pleasant: Fortran is so old that it is considered the first programming language ever created, I’m currently using MATLAB and hating every minute of it, and I hear R has a similar reputation. They’re unavoidable though if you want to do this sort of programming.
Personally, for a ‘first language’, I’d recommend learning one of Python, JavaScript, C#, Swift, Java or Haskell; I’d leave the rest for later, though it’s good to at least be aware that they exist.
About learning Haskell as a first language, the main argument for that is that it will teach you how to program functionally without getting stuck in imperative habits that one would learn from other languages. Note that Haskell has a very steep learning curve, and there are aspects of it such as its space/time complexity that are devilishly hard for even experienced programmers to handle at times.

About "mathy" languages, I've looked at Julia and really liked what I saw, even though I've never really used it. Fortran on the other hand shows its age, and is probably not recommended unless one wants to deal with existing codebases written in it. (I remember translating Fortran into Lua (a nice language for scripting if you're writing code in C or C++ and you want to embed scripts in it) of all things, and it was not easy at all.) As for Matlab, I used it in college and really disliked it myself, and I have not heard good things about R (but supposedly for some reason "data scientists" use it a lot).

I agree that Rust is essentially an attempt to do a modernized C++; I have not taken a close look at it, but from what I hear if one is considering starting a new project written in C++, maybe one should consider writing it in Rust instead.

About Go, I have not taken that close of a look at it, but from what I have seen it seems like an all-around, general purpose modern language with good concurrency support. But if one is choosing languages based on concurrency support, one should really be looking at Haskell and Erlang, which both have excellent support for concurrency (even though if straight-line performance also matters, I would choose Haskell over Erlang).

I don't know much about Swift, except that it is essentially to Objective C (a one-time competitor to C++ which was adopted by Steve Job's NeXT, which was then bought by Apple) what Java is to C++, and that it at some point in the past replaced Objective C as Apple's go-to language.

As mentioned, C# is essentially Microsoft's Java; they are sufficiently similar that if one knows one it is easy to learn the other. Note that there are some somewhat interesting languages based on the .NET framework, such as F# (Microsoft's OCaml), but they are all slightly dumbed down and compromised by having to fit in the .NET way of doing things (e.g. F# lacks OCaml's module system), and anyways, why program in F# when you can program in Haskell in all its glory.

If one is going to do web programming, in addition to learning plain JavaScript, I would recommend learning TypeScript along with other languages compiled into JavaScript, such as Haskell (via ghcjs) and Clojure (a variety of Lisp).

Of course I cannot help but mention Forth, as I am working on a Forth-based compiler/operating system for embedded systems. Forth is a really nice language for programming smaller systems, particularly embedded systems, in a highly interactive fashion while having a much smaller footprint and much better realtime properties (due to not having GC) than other interactive languages meant for embedded systems such as MicroPython and eLua. In many ways it is what would result if assembly language mated with Lisp. Of course, it is not a forgiving language, as in Forth one frequently accesses RAM directly, and oftentimes there are no checks for whether IF ... ELSE ... THEN and like are properly balanced and like.
Yaaludinuya siima d'at yiseka ha wohadetafa gaare.
Ennadinut'a gaare d'ate ha eetatadi siiman.
T'awraa t'awraa t'awraa t'awraa t'awraa t'awraa t'awraa.
Travis B.
Posts: 6292
Joined: Sun Jul 15, 2018 8:52 pm

Re: Random Thread

Post by Travis B. »

Oh, and btw, reason to learn statically-typed languages compiled to JavaScript is that raw JavaScript provides very little protection to the programmer, and has all kinds of ugly corner cases in its behavior. More modern JavaScript, i.e. ECMAScript 6, aka ES6, has gotten somewhat better in this regard if you use its new features, but it still is a tough, unforgiving language to work in (it pretends to be forgiving, but in ways that make it easier to write more-difficult-to-debug issues into your code).
Yaaludinuya siima d'at yiseka ha wohadetafa gaare.
Ennadinut'a gaare d'ate ha eetatadi siiman.
T'awraa t'awraa t'awraa t'awraa t'awraa t'awraa t'awraa.
bradrn
Posts: 5721
Joined: Fri Oct 19, 2018 1:25 am

Re: Random Thread

Post by bradrn »

Travis B. wrote: Mon Jan 18, 2021 7:28 pm About learning Haskell as a first language, the main argument for that is that it will teach you how to program functionally without getting stuck in imperative habits that one would learn from other languages.
On the other hand, the argument against it is essentially the same: transitioning to an imperative language can be tricky if you’ve gotten used to Haskell. (We saw an actual case of this on /r/haskell recently.) And this is a problem, since the most widely-used languages tend to be imperative. Personally, I still think Haskell is excellent as a first language, but that’s something to keep in mind.
(I remember translating Fortran into Lua (a nice language for scripting if you're writing code in C or C++ and you want to embed scripts in it) of all things, and it was not easy at all.)
…Why? I mean, of all the languages one could port from and to, that combination has to be one of the most unlikely. There must be some story behind this.
About Go, I have not taken that close of a look at it, but from what I have seen it seems like an all-around, general purpose modern language with good concurrency support. But if one is choosing languages based on concurrency support, one should really be looking at Haskell and Erlang, which both have excellent support for concurrency (even though if straight-line performance also matters, I would choose Haskell over Erlang).
Yep, that’s about what I know of Go as well. The other main idea of Go is that it’s really simple: the whole point of Go is that it lacks many features which today are usual amongst programming languages (e.g. generics). Some people love this idea, others not so much.
If one is going to do web programming, in addition to learning plain JavaScript, I would recommend learning TypeScript along with other languages compiled into JavaScript, such as Haskell (via ghcjs) and Clojure (a variety of Lisp).
I’m not so sure about this. You can make plenty of good websites using just HTML+CSS+JavaScript; no need to learn anything else if you’re just beginning to program.
Travis B. wrote: Mon Jan 18, 2021 8:46 pm Oh, and btw, reason to learn statically-typed languages compiled to JavaScript is that raw JavaScript provides very little protection to the programmer, and has all kinds of ugly corner cases in its behavior. More modern JavaScript, i.e. ECMAScript 6, aka ES6, has gotten somewhat better in this regard if you use its new features, but it still is a tough, unforgiving language to work in (it pretends to be forgiving, but in ways that make it easier to write more-difficult-to-debug issues into your code).
This is true of all dynamic languages (notably I see Python the same way). On the other hand, you could argue that lack of types is helpful for a beginner because it’s one thing less to keep track of… and certainly this argument seems to be a well-regarded one, as Python and JavaScript are both extremely popular as ‘beginner’ languages.
Conlangs: Scratchpad | Texts | antilanguage
Software: See http://bradrn.com/projects.html
Other: Ergativity for Novices

(Why does phpBB not let me add >5 links here?)
User avatar
alice
Posts: 913
Joined: Mon Jul 09, 2018 11:15 am
Location: 'twixt Survival and Guilt

Re: Random Thread

Post by alice »

Java, Python, Rust, Go... pfft, you can guess the rest. But if you're too much of a namby-pamby to learn to write on the bare metal, I might recommend Scala at some point; it has a steep learning curve, but does many things very nicely. Ruby is good, too, if you can cope with its idiosyncracies.
Self-referential signatures are for people too boring to come up with more interesting alternatives.
Travis B.
Posts: 6292
Joined: Sun Jul 15, 2018 8:52 pm

Re: Random Thread

Post by Travis B. »

bradrn wrote: Mon Jan 18, 2021 10:00 pm
Travis B. wrote: Mon Jan 18, 2021 7:28 pm About learning Haskell as a first language, the main argument for that is that it will teach you how to program functionally without getting stuck in imperative habits that one would learn from other languages.
On the other hand, the argument against it is essentially the same: transitioning to an imperative language can be tricky if you’ve gotten used to Haskell. (We saw an actual case of this on /r/haskell recently.) And this is a problem, since the most widely-used languages tend to be imperative. Personally, I still think Haskell is excellent as a first language, but that’s something to keep in mind.
This is true; writing imperative languages in a primarily functional style's primary downside is that many of these languages are not capable enough to support a functional programming style, even though this is changing.
bradrn wrote: Mon Jan 18, 2021 10:00 pm
(I remember translating Fortran into Lua (a nice language for scripting if you're writing code in C or C++ and you want to embed scripts in it) of all things, and it was not easy at all.)
…Why? I mean, of all the languages one could port from and to, that combination has to be one of the most unlikely. There must be some story behind this.
I needed an algorithm for finding the inverses of polynomials and the only code I could find was written in Fortran - while the scripting language for the application I was working on was Lua, so I ended up translating Fortran into Lua.
bradrn wrote: Mon Jan 18, 2021 10:00 pm
About Go, I have not taken that close of a look at it, but from what I have seen it seems like an all-around, general purpose modern language with good concurrency support. But if one is choosing languages based on concurrency support, one should really be looking at Haskell and Erlang, which both have excellent support for concurrency (even though if straight-line performance also matters, I would choose Haskell over Erlang).
Yep, that’s about what I know of Go as well. The other main idea of Go is that it’s really simple: the whole point of Go is that it lacks many features which today are usual amongst programming languages (e.g. generics). Some people love this idea, others not so much.
I must say I totally forgot that Go lacks generics - for me generics are a must in any modern statically typed language.
bradrn wrote: Mon Jan 18, 2021 10:00 pm
If one is going to do web programming, in addition to learning plain JavaScript, I would recommend learning TypeScript along with other languages compiled into JavaScript, such as Haskell (via ghcjs) and Clojure (a variety of Lisp).
I’m not so sure about this. You can make plenty of good websites using just HTML+CSS+JavaScript; no need to learn anything else if you’re just beginning to program.
Sure, you can do this just fine in HTML, CSS, and JavaScript, but static typing does help, especially with larger projects.
bradrn wrote: Mon Jan 18, 2021 10:00 pm
Travis B. wrote: Mon Jan 18, 2021 8:46 pm Oh, and btw, reason to learn statically-typed languages compiled to JavaScript is that raw JavaScript provides very little protection to the programmer, and has all kinds of ugly corner cases in its behavior. More modern JavaScript, i.e. ECMAScript 6, aka ES6, has gotten somewhat better in this regard if you use its new features, but it still is a tough, unforgiving language to work in (it pretends to be forgiving, but in ways that make it easier to write more-difficult-to-debug issues into your code).
This is true of all dynamic languages (notably I see Python the same way). On the other hand, you could argue that lack of types is helpful for a beginner because it’s one thing less to keep track of… and certainly this argument seems to be a well-regarded one, as Python and JavaScript are both extremely popular as ‘beginner’ languages.
JavaScript is worse than Python in this regard. Python at least has strong typing, and more recent versions of it support optional typing, whereas JavaScript has weak typing on top of dynamic typing. All kind of weirdness results from things like how JavaScript treats all of the following as "falsy" if one is not careful:
  • the number 0.
  • the BigInt 0n.
  • the keyword null.
  • the keyword undefined.
  • the boolean false.
  • the number NaN.
  • the empty string "" (equivalent to '' or `` )


Likewise, one has to be very careful about equality operators (in doubt use === and !== not == or !=, even though admittedly we primarily use the latter pair at my work) because they often reinterpret values of one type as being values of another type.
Yaaludinuya siima d'at yiseka ha wohadetafa gaare.
Ennadinut'a gaare d'ate ha eetatadi siiman.
T'awraa t'awraa t'awraa t'awraa t'awraa t'awraa t'awraa.
User avatar
quinterbeck
Posts: 382
Joined: Sat Jul 21, 2018 12:19 pm
Location: UK

Re: Random Thread

Post by quinterbeck »

Travis B. wrote: Tue Jan 19, 2021 9:38 am JavaScript is worse than Python in this regard. Python at least has strong typing, and more recent versions of it support optional typing, whereas JavaScript has weak typing on top of dynamic typing. All kind of weirdness results from things like how JavaScript treats all of the following as "falsy" if one is not careful:
the number 0.
the BigInt 0n.
the keyword null.
the keyword undefined.
the boolean false.
the number NaN.
the empty string "" (equivalent to '' or `` )
As someone who only really uses SQL, this seems almost scandalous. :shock:
Richard W
Posts: 1410
Joined: Sat Aug 11, 2018 12:53 pm

Re: Random Thread

Post by Richard W »

Travis B. wrote: Mon Jan 18, 2021 7:28 pm I remember translating Fortran into Lua (a nice language for scripting if you're writing code in C or C++ and you want to embed scripts in it) of all things, and it was not easy at all.
That's surprising. I'd heard a "real programmer" could write Fortran in any language.
Travis B.
Posts: 6292
Joined: Sun Jul 15, 2018 8:52 pm

Re: Random Thread

Post by Travis B. »

quinterbeck wrote: Tue Jan 19, 2021 4:40 pm
Travis B. wrote: Tue Jan 19, 2021 9:38 am JavaScript is worse than Python in this regard. Python at least has strong typing, and more recent versions of it support optional typing, whereas JavaScript has weak typing on top of dynamic typing. All kind of weirdness results from things like how JavaScript treats all of the following as "falsy" if one is not careful:
the number 0.
the BigInt 0n.
the keyword null.
the keyword undefined.
the boolean false.
the number NaN.
the empty string "" (equivalent to '' or `` )
As someone who only really uses SQL, this seems almost scandalous. :shock:
I am personally bothered by the fact that Oracle treats null and empty string as one and the same.
Yaaludinuya siima d'at yiseka ha wohadetafa gaare.
Ennadinut'a gaare d'ate ha eetatadi siiman.
T'awraa t'awraa t'awraa t'awraa t'awraa t'awraa t'awraa.
Travis B.
Posts: 6292
Joined: Sun Jul 15, 2018 8:52 pm

Re: Random Thread

Post by Travis B. »

Richard W wrote: Tue Jan 19, 2021 4:44 pm
Travis B. wrote: Mon Jan 18, 2021 7:28 pm I remember translating Fortran into Lua (a nice language for scripting if you're writing code in C or C++ and you want to embed scripts in it) of all things, and it was not easy at all.
That's surprising. I'd heard a "real programmer" could write Fortran in any language.
The matter with Fortran is that it uses call by reference, which most modern languages, like Lua, do not support - and of languages used at the present which do support it other than Fortran, such as C and C++, they use explicit pointers or references. In this case the Fortran code made heavy use of references which made translating the code into purely call by value Lua a major pain in the ass.
Yaaludinuya siima d'at yiseka ha wohadetafa gaare.
Ennadinut'a gaare d'ate ha eetatadi siiman.
T'awraa t'awraa t'awraa t'awraa t'awraa t'awraa t'awraa.
Richard W
Posts: 1410
Joined: Sat Aug 11, 2018 12:53 pm

Re: Random Thread

Post by Richard W »

Travis B. wrote: Tue Jan 19, 2021 5:03 pm
Richard W wrote: Tue Jan 19, 2021 4:44 pm
Travis B. wrote: Mon Jan 18, 2021 7:28 pm I remember translating Fortran into Lua (a nice language for scripting if you're writing code in C or C++ and you want to embed scripts in it) of all things, and it was not easy at all.
That's surprising. I'd heard a "real programmer" could write Fortran in any language.
The matter with Fortran is that it uses call by reference, which most modern languages, like Lua, do not support.
Tables are passed by reference in Lua, though I think the more stylish approach is calls such as "x, y = f(x,y)", which has a syntactic analogue in Matlab.
Travis B.
Posts: 6292
Joined: Sun Jul 15, 2018 8:52 pm

Re: Random Thread

Post by Travis B. »

Richard W wrote: Tue Jan 19, 2021 6:29 pm
Travis B. wrote: Tue Jan 19, 2021 5:03 pm
Richard W wrote: Tue Jan 19, 2021 4:44 pm
That's surprising. I'd heard a "real programmer" could write Fortran in any language.
The matter with Fortran is that it uses call by reference, which most modern languages, like Lua, do not support.
Tables are passed by reference in Lua, though I think the more stylish approach is calls such as "x, y = f(x,y)", which has a syntactic analogue in Matlab.
Multiple return with tuples or like is the approach favored in more modern languages these days; returning via arguments is something found primarily in older languages.
Yaaludinuya siima d'at yiseka ha wohadetafa gaare.
Ennadinut'a gaare d'ate ha eetatadi siiman.
T'awraa t'awraa t'awraa t'awraa t'awraa t'awraa t'awraa.
User avatar
Raphael
Posts: 4181
Joined: Sun Jul 22, 2018 6:36 am

Re: Random Thread

Post by Raphael »

Does anyone else have the impression that the Gulf of Mexico looks like the head of some strange kind of creature?
gh.jpg
gh.jpg (86.2 KiB) Viewed 9701 times
Travis B.
Posts: 6292
Joined: Sun Jul 15, 2018 8:52 pm

Re: Random Thread

Post by Travis B. »

Raphael wrote: Fri Jan 22, 2021 12:34 pm Does anyone else have the impression that the Gulf of Mexico looks like the head of some strange kind of creature?
Kinda reminds me of something out of Aliens.
Yaaludinuya siima d'at yiseka ha wohadetafa gaare.
Ennadinut'a gaare d'ate ha eetatadi siiman.
T'awraa t'awraa t'awraa t'awraa t'awraa t'awraa t'awraa.
zompist
Site Admin
Posts: 2711
Joined: Sun Jul 08, 2018 5:46 am
Location: Right here, probably
Contact:

Re: Random Thread

Post by zompist »

Scott McCloud noted in Understanding Comics that any blob you draw can be turned into a face just by adding eyes. E.g.:
Attachments
Bothnia.png
Bothnia.png (71.53 KiB) Viewed 9684 times
Qwynegold
Posts: 722
Joined: Sun Jul 29, 2018 3:03 pm
Location: Stockholm

Re: Random Thread

Post by Qwynegold »

Raphael wrote: Fri Jan 22, 2021 12:34 pm Does anyone else have the impression that the Gulf of Mexico looks like the head of some strange kind of creature?
Hmm, if the face is on the right, then I think it's some kind of alien head. If instead the mouth is to the left, then it's Yoshi's head. Also, now it's looking to me as if Australia would fit in there.
User avatar
Rounin Ryuuji
Posts: 2993
Joined: Wed Dec 23, 2020 6:47 pm

Re: Random Thread

Post by Rounin Ryuuji »

It is a deformed Yoshi crossed with that axe-beaked chicken from that one movie crossed with something from The Dark Crystal.

Cannot unsee.
kodé
Posts: 113
Joined: Sun Sep 09, 2018 3:17 pm

Re: Random Thread

Post by kodé »

I can’t not see it with the land as a face: a yawning maw with a big, floppy nose, about to swallow Cuba whole.
User avatar
LingEarth
Posts: 42
Joined: Sun Oct 11, 2020 10:13 am

Re: Random Thread

Post by LingEarth »

I always thought the western part of the Mediterranean Sea looks like the head of a crocodile.
LingEarth the Earthling

she/her
Post Reply