• Log InLog In
  • Register
Liquid`
Team Liquid Liquipedia
EDT 01:00
CEST 07:00
KST 14:00
  • Home
  • Forum
  • Calendar
  • Streams
  • Liquipedia
  • Features
  • Store
  • EPT
  • TL+
  • StarCraft 2
  • Brood War
  • Smash
  • Heroes
  • Counter-Strike
  • Overwatch
  • Liquibet
  • Fantasy StarCraft
  • TLPD
  • StarCraft 2
  • Brood War
  • Blogs
Forum Sidebar
Events/Features
News
Featured News
Team TLMC #5 - Finalists & Open Tournaments0[ASL20] Ro16 Preview Pt2: Turbulence10Classic Games #3: Rogue vs Serral at BlizzCon9[ASL20] Ro16 Preview Pt1: Ascent10Maestros of the Game: Week 1/Play-in Preview12
Community News
Weekly Cups (Sept 8-14): herO & MaxPax split cups4WardiTV TL Team Map Contest #5 Tournaments1SC4ALL $6,000 Open LAN in Philadelphia8Weekly Cups (Sept 1-7): MaxPax rebounds & Clem saga continues29LiuLi Cup - September 2025 Tournaments3
StarCraft 2
General
#1: Maru - Greatest Players of All Time Weekly Cups (Sept 8-14): herO & MaxPax split cups Team Liquid Map Contest #21 - Presented by Monster Energy SpeCial on The Tasteless Podcast Team TLMC #5 - Finalists & Open Tournaments
Tourneys
Maestros of The Game—$20k event w/ live finals in Paris SC4ALL $6,000 Open LAN in Philadelphia Sparkling Tuna Cup - Weekly Open Tournament WardiTV TL Team Map Contest #5 Tournaments RSL: Revival, a new crowdfunded tournament series
Strategy
Custom Maps
External Content
Mutation # 491 Night Drive Mutation # 490 Masters of Midnight Mutation # 489 Bannable Offense Mutation # 488 What Goes Around
Brood War
General
[ASL20] Ro16 Preview Pt2: Turbulence BW General Discussion ASL20 General Discussion Diplomacy, Cosmonarchy Edition BGH Auto Balance -> http://bghmmr.eu/
Tourneys
[ASL20] Ro16 Group D [ASL20] Ro16 Group C [Megathread] Daily Proleagues SC4ALL $1,500 Open Bracket LAN
Strategy
Simple Questions, Simple Answers Muta micro map competition Fighting Spirit mining rates [G] Mineral Boosting
Other Games
General Games
Path of Exile Stormgate/Frost Giant Megathread General RTS Discussion Thread Nintendo Switch Thread Borderlands 3
Dota 2
Official 'what is Dota anymore' discussion LiquidDota to reintegrate into TL.net
League of Legends
Heroes of the Storm
Simple Questions, Simple Answers Heroes of the Storm 2.0
Hearthstone
Heroes of StarCraft mini-set
TL Mafia
TL Mafia Community Thread
Community
General
US Politics Mega-thread Things Aren’t Peaceful in Palestine Canadian Politics Mega-thread Russo-Ukrainian War Thread The Big Programming Thread
Fan Clubs
The Happy Fan Club!
Media & Entertainment
Movie Discussion! [Manga] One Piece Anime Discussion Thread
Sports
2024 - 2026 Football Thread Formula 1 Discussion MLB/Baseball 2023
World Cup 2022
Tech Support
Linksys AE2500 USB WIFI keeps disconnecting Computer Build, Upgrade & Buying Resource Thread High temperatures on bridge(s)
TL Community
BarCraft in Tokyo Japan for ASL Season5 Final The Automated Ban List
Blogs
The Personality of a Spender…
TrAiDoS
A very expensive lesson on ma…
Garnet
hello world
radishsoup
Lemme tell you a thing o…
JoinTheRain
RTS Design in Hypercoven
a11
Evil Gacha Games and the…
ffswowsucks
Customize Sidebar...

Website Feedback

Closed Threads



Active: 1136 users

The Big Programming Thread - Page 139

Forum Index > General Forum
Post a Reply
Prev 1 137 138 139 140 141 1031 Next
Thread Rules
1. This is not a "do my homework for me" thread. If you have specific questions, ask, but don't post an assignment or homework problem and expect an exact solution.
2. No recruiting for your cockamamie projects (you won't replace facebook with 3 dudes you found on the internet and $20)
3. If you can't articulate why a language is bad, don't start slinging shit about it. Just remember that nothing is worse than making CSS IE6 compatible.
4. Use [code] tags to format code blocks.
typedef struct
Profile Joined January 2011
United States84 Posts
Last Edited: 2012-05-29 19:07:18
May 29 2012 19:00 GMT
#2761
On May 30 2012 03:43 gyth wrote:
Show nested quote +
On May 30 2012 01:26 typedef struct wrote:
This debate says a lot about object-oriented programming in general.

It isn't fair to indict OOP based on how C++/java tacked on their buzzword support.


I was referring to OOP in general, not any particular language. Earlier in the thread people were arguing against getters/setters because they're not OOP. In "perfect" OOP, classes expose behavior and hide state. Getters/setters break this, but are still needed for any non-trivial OOP.
snively
Profile Blog Joined August 2011
United States1159 Posts
May 29 2012 21:16 GMT
#2762
HOLY crapola ive started a flamewar

im sorry guys, i didnt know T_T
My religion is Starcraft
PachaL
Profile Joined May 2012
Canada16 Posts
May 29 2012 22:35 GMT
#2763
Hello everyone.
I am trying to write an iPad app that reads/writes to an excel document. From what I have read, there is no library that will allow me to do this, but there are a couple of alternative ways:

1) I could use the app to write to a .csv file and then open that in excel. The problem with this is that the excel file has many 'sheets', and each .csv file can only hold one sheet.

2) I could use the app to write to a Google Docs file, then somehow read that file and update the original excel file. This seems complicated though.

I know neither of these is ideal, but iPads and Windows computers are what I have to work with.

I'm just looking for what you guys think the better option is, or if you have one of your own. Thanks.
Former Socom 2 player
Millitron
Profile Blog Joined August 2010
United States2611 Posts
May 29 2012 22:38 GMT
#2764
Speaking of heated debate topics, why is GO TO considered such a bad feature for a language to have?

I mean, I get that if you are completely careless with it, you can access memory that hasn't been allocated for your program, but it's extremely hard to screw up that bad. You almost have to force it to happen.

The thing is though, GO TO provides an effective way of exiting complex control structures. It is a gigantic pain to try to get a large group of nested for-loops to terminate early without GO TO, but with GO TO, it can be done with the addition of a single if-statement.

I was making a Turing Machine simulator for a class I was taking. The simulator was written in Java. The state of the machine ended up being stored in a 4D array, meaning it had to be accessed by a nesting of for-loops. It was such a pain to break out of those loops without GO TO.
Who called in the fleet?
fabiano
Profile Blog Joined August 2009
Brazil4644 Posts
May 29 2012 22:42 GMT
#2765
I think that one reason is that if you have to resort to goto then your code isn't written very well and there is probably (not certainly) a cleaner/safer way to do so. At least that's what I've been taught.
"When the geyser died, a probe came out" - SirJolt
tofucake
Profile Blog Joined October 2009
Hyrule19086 Posts
May 29 2012 22:51 GMT
#2766
On May 30 2012 07:35 PachaL wrote:
Hello everyone.
I am trying to write an iPad app that reads/writes to an excel document. From what I have read, there is no library that will allow me to do this, but there are a couple of alternative ways:

1) I could use the app to write to a .csv file and then open that in excel. The problem with this is that the excel file has many 'sheets', and each .csv file can only hold one sheet.

2) I could use the app to write to a Google Docs file, then somehow read that file and update the original excel file. This seems complicated though.

I know neither of these is ideal, but iPads and Windows computers are what I have to work with.

I'm just looking for what you guys think the better option is, or if you have one of your own. Thanks.

You can use the XML format, which supports multiple sheets, all styling and formatting, and is compatible with Excel, OpenOffice, and GoogleDocs.
Liquipediaasante sana squash banana
alwinuz
Profile Joined September 2011
Netherlands77 Posts
May 29 2012 22:52 GMT
#2767
@PachaL
Another option is to combine your app with a web backend. There are many libraries to read/write excel files on the webserver. Then you can use whatever language and libary you want. You have the extra complexity for the communication between app and sever though.

@Millitron
In machine code, every if and loop are essentially GOTO's.
The problem with GOTO is that it makes it easy to write complicated spaghetti-code. Then the control flow is hard to figure out.
If you have 4 nested loops in one function, firstly I'd refactor that into smaller functions. The code is then easier to follow and more self-documented.
Second, maybe you could use a 1D array with classes/objects instead of a 4D array. Then move some code to those classes.
PachaL
Profile Joined May 2012
Canada16 Posts
May 29 2012 23:00 GMT
#2768
Thanks to both of you!
Former Socom 2 player
RoyGBiv_13
Profile Blog Joined August 2010
United States1275 Posts
May 29 2012 23:15 GMT
#2769
On May 30 2012 07:38 Millitron wrote:
Speaking of heated debate topics, why is GO TO considered such a bad feature for a language to have?

I mean, I get that if you are completely careless with it, you can access memory that hasn't been allocated for your program, but it's extremely hard to screw up that bad. You almost have to force it to happen.

The thing is though, GO TO provides an effective way of exiting complex control structures. It is a gigantic pain to try to get a large group of nested for-loops to terminate early without GO TO, but with GO TO, it can be done with the addition of a single if-statement.

I was making a Turing Machine simulator for a class I was taking. The simulator was written in Java. The state of the machine ended up being stored in a 4D array, meaning it had to be accessed by a nesting of for-loops. It was such a pain to break out of those loops without GO TO.


Work for a company that builds a C/C++ compiler. Here is my chiming in on why getters/setters is bad from a performance standpoint (thus design), and also why you should be glad GOTO has been wiped.

These practices are not mainstream, and have for the most part been purged from the global corporate and open source code base, and for a reason! It is dismal that getters/setters is being snuck back in by high school CS teachers and design by committee curriculum. (I do not mean that any getter or setter is bad design, just that ALL classes MUST have getters/setters, and ALL variables MUST be private)

Lets talk performance. Ill start with GOTO because its an easy target:
Back in ye olden BASIC times, GOTO's were the go to (heh) method for program flow. This was alright, and did not typically affect speed of computations nor code size in any significant manner, because the code assembled almost directly into its literal machine code translation, with no optimizations. Then came Dennis Ritchie and C.

A compiled language will look almost nothing like itself when turned into machine code. Most notably is the inclusion of the stack and functions. Function calls replaced the LABEL A -> GOTO B -> GOTO A spaghetti by including the address of the branch to instruction onto the stack, and branching to the stack popping upon returning form a function. This is incredibly faster as a processor optimized for branch prediction would almost always have the next instruction loaded into the cache, compared to the GOTO method.

This is one of many reasons why people tell you to never use GOTO under any circumstance. It may seem efficient at the time, but in reality, it provides even more complexity where well thought out program flow would be better to begin with.

For Getters/Setters, the compiler will optimize out getters and setters 90% of the time and turn them into inline functions, which will be effectively what you wanted to put in your code anyway. the other 10% of the time, in things such as generic classes (http://en.wikipedia.org/wiki/Template_(C%2B%2B) )or getting/setting 32-bit or 64 bit structs that would like to be optimized into registers , you will feel a significant performance hit by using this sort of code design. It is not poor design to completely neglect getters and setters from code, as they definitely have their design uses for abstraction.

It is poor design to write code that needlessly complicated where a more understandable alternative exists that is also closer to what the cpu actually does. It should be noted that I have encountered a non-zero number of bugs due to getters/setters.

Any sufficiently advanced technology is indistinguishable from magic
icystorage
Profile Blog Joined November 2008
Jollibee19350 Posts
May 30 2012 00:39 GMT
#2770
the getters suck flame war is oozing with nerdiness. i like it.
LiquidDota StaffAre you ready for a Miracle-? We are! The International 2017 Champions!
sluggaslamoo
Profile Blog Joined November 2009
Australia4494 Posts
May 30 2012 00:47 GMT
#2771
On May 30 2012 01:26 typedef struct wrote:
This debate says a lot about object-oriented programming in general. You'd never find this kind of disagreement about a fundamental concept in a functional language/style.

Moving the functionality into the class you are accessing (the technique getdatsu posted) is only the correct solution if said functionality is something the class is directly responsible for. If not, you're just adding more responsiblities to the class (in violation of the Single Responsiblity Principle).

Friend is almost never the answer, and if you're new to C++ you should forget that keyword exists (as evidenced by the fact that plenty of good OOP languages don't have it).

Providing a getter method is usually the best solution. You can see this by exploring one of the many well-written open-source OOP code bases out there. You will see getters/setters used, but not abused.

It's pretty easy to tell if you're overusing getters/setters, because you'll get f*cking sick of writing them and be tempted to just make everything public. If you run into this situation, you probably have too few classes for what you are trying to do, and should break some of them up.


C++/Java/C#.net are pretty bad OO languages and are based on the Strousup stream of OO which was terribly designed in the first place.

There are much better functional/OO hybrids out there these days, but even Smalltalk which was the original true OO language (yes Simula was the first OO but I'm talking about in a practical sense) works completely different to mainstream OO languages.

See Ruby as a great example of a fully OO language which is based on Allen Kay's OO principles rather than Strousup's OO principles.
Come play Android Netrunner - http://www.teamliquid.net/forum/viewmessage.php?topic_id=409008
sluggaslamoo
Profile Blog Joined November 2009
Australia4494 Posts
May 30 2012 00:51 GMT
#2772
On May 30 2012 08:15 RoyGBiv_13 wrote:
Show nested quote +
On May 30 2012 07:38 Millitron wrote:
Speaking of heated debate topics, why is GO TO considered such a bad feature for a language to have?

I mean, I get that if you are completely careless with it, you can access memory that hasn't been allocated for your program, but it's extremely hard to screw up that bad. You almost have to force it to happen.

The thing is though, GO TO provides an effective way of exiting complex control structures. It is a gigantic pain to try to get a large group of nested for-loops to terminate early without GO TO, but with GO TO, it can be done with the addition of a single if-statement.

I was making a Turing Machine simulator for a class I was taking. The simulator was written in Java. The state of the machine ended up being stored in a 4D array, meaning it had to be accessed by a nesting of for-loops. It was such a pain to break out of those loops without GO TO.


Work for a company that builds a C/C++ compiler. Here is my chiming in on why getters/setters is bad from a performance standpoint (thus design), and also why you should be glad GOTO has been wiped.

These practices are not mainstream, and have for the most part been purged from the global corporate and open source code base, and for a reason! It is dismal that getters/setters is being snuck back in by high school CS teachers and design by committee curriculum. (I do not mean that any getter or setter is bad design, just that ALL classes MUST have getters/setters, and ALL variables MUST be private)

Lets talk performance. Ill start with GOTO because its an easy target:
Back in ye olden BASIC times, GOTO's were the go to (heh) method for program flow. This was alright, and did not typically affect speed of computations nor code size in any significant manner, because the code assembled almost directly into its literal machine code translation, with no optimizations. Then came Dennis Ritchie and C.

A compiled language will look almost nothing like itself when turned into machine code. Most notably is the inclusion of the stack and functions. Function calls replaced the LABEL A -> GOTO B -> GOTO A spaghetti by including the address of the branch to instruction onto the stack, and branching to the stack popping upon returning form a function. This is incredibly faster as a processor optimized for branch prediction would almost always have the next instruction loaded into the cache, compared to the GOTO method.

This is one of many reasons why people tell you to never use GOTO under any circumstance. It may seem efficient at the time, but in reality, it provides even more complexity where well thought out program flow would be better to begin with.

For Getters/Setters, the compiler will optimize out getters and setters 90% of the time and turn them into inline functions, which will be effectively what you wanted to put in your code anyway. the other 10% of the time, in things such as generic classes (http://en.wikipedia.org/wiki/Template_(C%2B%2B) )or getting/setting 32-bit or 64 bit structs that would like to be optimized into registers , you will feel a significant performance hit by using this sort of code design. It is not poor design to completely neglect getters and setters from code, as they definitely have their design uses for abstraction.

It is poor design to write code that needlessly complicated where a more understandable alternative exists that is also closer to what the cpu actually does. It should be noted that I have encountered a non-zero number of bugs due to getters/setters.



I agree, but tl;dr there was a new movement to have only one entry-point and one-exit point in blocks code. Dijkstra wrote an article called "goto statement considered harmful" (which due to its success, spawned a whole lot of elitists to create similar articles in the same vein but stupid) which championed the "structured programming" movement. Basically he said use functions and procedures rather than goto statements because goto statements create spaghetti code.
Come play Android Netrunner - http://www.teamliquid.net/forum/viewmessage.php?topic_id=409008
hacklebeast
Profile Blog Joined April 2010
United States5090 Posts
May 30 2012 01:12 GMT
#2773
Any suggestions for a c++ compiler? I don't need anything special, just something that works and is free (at least i'm assuming there are free ones beyond trial periods). I could just go down the list of them on wikipedia, but I figure asking TL is better than guess and check.
Protoss: Best, Paralyze, Jangbi, Nal_Ra || Terran: Oov, Boxer, Fantasy, Hiya|| Zerg: Yellow, Zero
typedef struct
Profile Joined January 2011
United States84 Posts
May 30 2012 01:55 GMT
#2774
Here ya go: Visual C++ 2010 Express
Herper
Profile Joined January 2011
501 Posts
May 30 2012 02:00 GMT
#2775
LLVM/Clang is another one
Zeke50100
Profile Blog Joined February 2010
United States2220 Posts
May 30 2012 02:45 GMT
#2776
On May 30 2012 10:12 hacklebeast wrote:
Any suggestions for a c++ compiler? I don't need anything special, just something that works and is free (at least i'm assuming there are free ones beyond trial periods). I could just go down the list of them on wikipedia, but I figure asking TL is better than guess and check.


As mentioned before, Microsoft Visual Studio C++ Express is probably the best, free IDE available for C++ on Windows; however, it essentially only compiles for Windows. If you're specifically looking for a multi-platform compiler, I would recommend Qt.
sluggaslamoo
Profile Blog Joined November 2009
Australia4494 Posts
Last Edited: 2012-05-30 04:28:32
May 30 2012 04:26 GMT
#2777
On May 30 2012 10:12 hacklebeast wrote:
Any suggestions for a c++ compiler? I don't need anything special, just something that works and is free (at least i'm assuming there are free ones beyond trial periods). I could just go down the list of them on wikipedia, but I figure asking TL is better than guess and check.


Get codeblocks, its more lightweight than VC++ and crossplatform and easy to use. Although I wouldn't recommend it for anything other than for C/C++. You can even get a portable version that you can just stick on usb.

It uses the gnu gcc compiler.
Come play Android Netrunner - http://www.teamliquid.net/forum/viewmessage.php?topic_id=409008
Millitron
Profile Blog Joined August 2010
United States2611 Posts
May 30 2012 17:41 GMT
#2778
On May 30 2012 11:45 Zeke50100 wrote:
Show nested quote +
On May 30 2012 10:12 hacklebeast wrote:
Any suggestions for a c++ compiler? I don't need anything special, just something that works and is free (at least i'm assuming there are free ones beyond trial periods). I could just go down the list of them on wikipedia, but I figure asking TL is better than guess and check.


As mentioned before, Microsoft Visual Studio C++ Express is probably the best, free IDE available for C++ on Windows; however, it essentially only compiles for Windows. If you're specifically looking for a multi-platform compiler, I would recommend Qt.

There's also the Eclipse C++ plugin. It has all the nice features of Eclipse for Java, but for C++.
Who called in the fleet?
ForgottenOne
Profile Joined August 2010
Romania236 Posts
May 31 2012 11:57 GMT
#2779
On May 30 2012 09:47 sluggaslamoo wrote:
C++/Java/C#.net are pretty bad OO languages and are based on the Strousup stream of OO which was terribly designed in the first place.

There are much better functional/OO hybrids out there these days, but even Smalltalk which was the original true OO language (yes Simula was the first OO but I'm talking about in a practical sense) works completely different to mainstream OO languages.

See Ruby as a great example of a fully OO language which is based on Allen Kay's OO principles rather than Strousup's OO principles.


Can you, please, point me to some good reads on these topics?
Born free, as free as the wind blows...
sluggaslamoo
Profile Blog Joined November 2009
Australia4494 Posts
May 31 2012 13:27 GMT
#2780
On May 31 2012 20:57 ForgottenOne wrote:
Show nested quote +
On May 30 2012 09:47 sluggaslamoo wrote:
C++/Java/C#.net are pretty bad OO languages and are based on the Strousup stream of OO which was terribly designed in the first place.

There are much better functional/OO hybrids out there these days, but even Smalltalk which was the original true OO language (yes Simula was the first OO but I'm talking about in a practical sense) works completely different to mainstream OO languages.

See Ruby as a great example of a fully OO language which is based on Allen Kay's OO principles rather than Strousup's OO principles.


Can you, please, point me to some good reads on these topics?


The conclusion I made is from years of reading lots of different books/articles/websites, trying many different languages, understanding paradigms, knowing about the guys who invented each language, designing my own languages with PEGs, etc. I don't think you will be able to find an article on what I said specifically.

The best starter point is to look up Alan Kay and Bjarne Strousup, the inventors of Smalltalk and C++ respectively.


If I were to come up with a very brief reason to my conclusion,

Alan Kay was the guy who championed OO in the first place, then Strousup created C++, and Kay thinks [in the most euphemistic way possible] C++ was "not what he had in mind".

Java is based on C++, but tries to simply/fix C++ by constricting the paradigm, for example many interfaces/one concrete class inheritance, in order to avoid multiple inheritance problems like cyclic inheritance. IMO this is one of the really terrible fixes Java did to get around those problems.

C# used to be called J#, until Sun didn't want Delegates to be a part of Java. So Microsoft branched off and created C#, which basically started off as Java, with Delegates. Being based on Java, its only a marginal improvement on its older brother, when compared to other languages.

These 3 languages is what I dub as part of the "Strousup" stream of OO, the one most people know and understand. The less understood form OO comes from Alan Kay, the inventor of OO and Smalltalk. Its no surprise, that OOP makes a ton more sense when using Smalltalk than when using C++. What Java is to C++, Ruby is to Smalltalk. Matz was inspired by a lot of Kay's principles when he invented Ruby.

I don't rate a language by its features, I rate it by its foundation, when a language has a good foundation, it doesn't need a million features to make it good. You can polish a turd, it still doesn't stop it from being a turd.
Come play Android Netrunner - http://www.teamliquid.net/forum/viewmessage.php?topic_id=409008
Prev 1 137 138 139 140 141 1031 Next
Please log in or register to reply.
Live Events Refresh
PiGosaur Monday
00:00
#49
Liquipedia
OSC
23:00
OSC Elite Rising Star #16
Liquipedia
[ Submit Event ]
Live Streams
Refresh
StarCraft 2
WinterStarcraft519
StarCraft: Brood War
Leta 571
Noble 54
ajuk12(nOOB) 41
Icarus 9
Dota 2
NeuroSwarm138
Counter-Strike
Stewie2K448
semphis_45
Super Smash Bros
Mew2King37
Other Games
summit1g5047
C9.Mang0302
XaKoH 152
ViBE145
SortOf48
Trikslyr34
Organizations
Other Games
gamesdonequick705
StarCraft 2
Blizzard YouTube
StarCraft: Brood War
BSLTrovo
sctven
[ Show 15 non-featured ]
StarCraft 2
• OhrlRock 98
• intothetv
• AfreecaTV YouTube
• Kozan
• IndyKCrew
• LaughNgamezSOOP
• Migwel
• sooper7s
StarCraft: Brood War
• BSLYoutube
• STPLYoutube
• ZZZeroYoutube
League of Legends
• Rush1138
• Lourlo996
• Stunt420
Other Games
• Scarra1197
Upcoming Events
LiuLi Cup
6h
OSC
14h
RSL Revival
1d 5h
Maru vs Reynor
Cure vs TriGGeR
The PondCast
1d 8h
RSL Revival
2 days
Zoun vs Classic
Korean StarCraft League
2 days
BSL Open LAN 2025 - War…
3 days
RSL Revival
3 days
BSL Open LAN 2025 - War…
4 days
RSL Revival
4 days
[ Show More ]
Online Event
4 days
Wardi Open
5 days
Sparkling Tuna Cup
6 days
Liquipedia Results

Completed

Proleague 2025-09-10
Chzzk MurlocKing SC1 vs SC2 Cup #2
HCC Europe

Ongoing

BSL 20 Team Wars
KCM Race Survival 2025 Season 3
BSL 21 Points
ASL Season 20
CSL 2025 AUTUMN (S18)
LASL Season 20
RSL Revival: Season 2
Maestros of the Game
FISSURE Playground #2
BLAST Open Fall 2025
BLAST Open Fall Qual
Esports World Cup 2025
BLAST Bounty Fall 2025
BLAST Bounty Fall Qual
IEM Cologne 2025
FISSURE Playground #1

Upcoming

2025 Chongqing Offline CUP
BSL World Championship of Poland 2025
IPSL Winter 2025-26
BSL Season 21
SC4ALL: Brood War
BSL 21 Team A
Stellar Fest
SC4ALL: StarCraft II
EC S1
ESL Impact League Season 8
SL Budapest Major 2025
BLAST Rivals Fall 2025
IEM Chengdu 2025
PGL Masters Bucharest 2025
MESA Nomadic Masters Fall
Thunderpick World Champ.
CS Asia Championships 2025
ESL Pro League S22
StarSeries Fall 2025
TLPD

1. ByuN
2. TY
3. Dark
4. Solar
5. Stats
6. Nerchio
7. sOs
8. soO
9. INnoVation
10. Elazer
1. Rain
2. Flash
3. EffOrt
4. Last
5. Bisu
6. Soulkey
7. Mini
8. Sharp
Sidebar Settings...

Advertising | Privacy Policy | Terms Of Use | Contact Us

Original banner artwork: Jim Warren
The contents of this webpage are copyright © 2025 TLnet. All Rights Reserved.